public void CheckSolution() { for (var i = 0; i < 7; i++) { var boxContent = _boxes[i].transform.Find("Drop Image").GetComponent <UnityEngine.UI.Image>().overrideSprite; if (boxContent != null) { //record to database if (_log != null) { var locations = Order[_usedOrder[_imageCounter]]; _log.InsertLiveMeasurement("JRD_2D", locations, null, (i + 1).ToString()); } _answered = true; } } if (_answered) { if (JrdImageRemover != null) { JrdImageRemover.resetImages(); } _answered = false; _imageCounter++; if (_imageCounter < MaxRepetitions) { var locations = ""; locations = Order[_usedOrder[_imageCounter]]; _goalDir = Landmarks[int.Parse(locations.Substring(2, 1))]; _inFrontOf = Landmarks[int.Parse(locations.Substring(0, 1))]; _lookAt = Landmarks[int.Parse(locations.Substring(1, 1))]; ImageA.GetComponent <UnityEngine.UI.Image>().sprite = _inFrontOf; ImageB.GetComponent <UnityEngine.UI.Image>().sprite = _lookAt; ImageC.GetComponent <UnityEngine.UI.Image>().sprite = _goalDir; } else { if (!_loading) { _loading = true; SceneManager.LoadScene("Launcher"); } } } }
// Use this for initialization void Start() { var launchManagerObject = GameObject.FindWithTag("LaunchManager"); if (launchManagerObject != null) { var launchManager = launchManagerObject.GetComponent <LaunchManager>(); _log = launchManager.LoggingManager; } else { Debug.LogError("LaunchManager not found"); } var jrdBoxes = GameObject.Find("JRDBoxes"); _boxes = new GameObject[7]; for (int i = 0; i < 7; i++) { int num = i + 1; _boxes[i] = jrdBoxes.transform.Find($"Drop Box ({num})").gameObject; } _usedOrder = RandomizeOrder?CreateRandomOrder(Order.Length): Enumerable.Range(0, Order.Length).ToArray(); var locations = ""; locations = Order[_usedOrder[_imageCounter]]; _goalDir = Landmarks[int.Parse(locations.Substring(2, 1))]; _inFrontOf = Landmarks[int.Parse(locations.Substring(0, 1))]; _lookAt = Landmarks[int.Parse(locations.Substring(1, 1))]; ImageA.GetComponent <UnityEngine.UI.Image>().sprite = _inFrontOf; ImageB.GetComponent <UnityEngine.UI.Image>().sprite = _lookAt; ImageC.GetComponent <UnityEngine.UI.Image>().sprite = _goalDir; MaxRepetitions = MaxRepetitions < 0 ? Order.Length : MaxRepetitions; }