public void unclickButton() { RFTestHandler rf = Camera.main.GetComponent <RFTestHandler>(); RFTestItem item = rf.frontEndItem; GetComponent <SpriteRenderer>().color = Color.white; item.activeItemNumber--; }
public void buttonPushed() { RFTestHandler rf = Camera.main.GetComponent <RFTestHandler>(); RFTestItem item = rf.frontEndItem; GetComponent <SpriteRenderer>().color = new Color(.3f, .3f, .3f, 1); changeLayerToFadeOut(); item.activeItemNumber++; if (item.activeItemNumber < item.testSentences.Length) { changeLayerToFadeIn(); } }
public void changeLayerToFadeIn() { print("changed layer"); RFTestHandler rf = Camera.main.GetComponent <RFTestHandler>(); RFTestItem item = rf.frontEndItem; int num = item.activeItemNumber; GameObject sentence = GameObject.Find("sentenceBox " + num + " clone " + rf.currentTestNumber); GameObject buttons = GameObject.Find("buttonSet " + num + " clone " + rf.currentTestNumber); sentence.layer = LayerMask.NameToLayer("fadeIn"); buttons.layer = LayerMask.NameToLayer("fadeIn"); foreach (Transform child in buttons.transform) { print("hit"); child.gameObject.layer = LayerMask.NameToLayer("fadeIn"); } }
public void CreateTest(RFTestItem t) { float fullScreenHeight = Camera.main.orthographicSize * 2; float fullScreenWidth = fullScreenHeight * 16 / 9; // basically height * screen aspect ratio //this will give us the world unit width of the screen (doubled it to account for the negative side) //divide the screen width by the amount of objects in the array to get offset from left side //changed this to fix something, make sure it didn't break everything else float offsetX = fullScreenWidth / 11; float sizeX = fullScreenWidth / 2; float offsetY = fullScreenHeight / 7; float sizeY = fullScreenHeight / 11; float leftScreenPos = -fullScreenWidth / 2 + offsetX / 2; float topScreenPos = fullScreenHeight / 2 - offsetY / 2; GameObject o; if (!GameObject.Find("origin")) { o = new GameObject("origin"); o.transform.position = new Vector3(0, -offsetY * 2, 0); TextMesh tm = o.AddComponent <TextMesh>(); tm.alignment = TextAlignment.Center; tm.anchor = TextAnchor.MiddleCenter; tm.fontSize = 100; tm.color = Color.black; o.transform.localScale = Vector3.one * fullScreenHeight / 6f; o = new GameObject("topOrigin"); o.transform.position = new Vector3(0, offsetY / 2, 0); tm = o.AddComponent <TextMesh>(); tm.alignment = TextAlignment.Center; tm.anchor = TextAnchor.MiddleCenter; tm.fontSize = 100; tm.color = Color.black; o.transform.localScale = Vector3.one * fullScreenHeight / 6f; //o.layer = LayerMask.NameToLayer("fade"); o = new GameObject("midOrigin"); o.transform.position = new Vector3(0, 0, 0); tm = o.AddComponent <TextMesh>(); tm.alignment = TextAlignment.Center; tm.anchor = TextAnchor.MiddleCenter; tm.fontSize = 100; tm.color = Color.black; o.transform.localScale = Vector3.one * fullScreenHeight / 6f; //o.layer = LayerMask.NameToLayer("fade"); } if (t.isRetention) { o = Instantiate(t.buttonSet[0], new Vector3(0, 0, 0), new Quaternion()); o.transform.localScale = Vector3.one * fullScreenHeight / 3; if (!t.isNotSure) { o.transform.Find("yes").GetComponent <RFButton>().isCorrect = t.isCorrect[0]; o.transform.Find("yes").GetComponent <RFButton>().posNumber = 0; o.transform.Find("no").GetComponent <RFButton>().isCorrect = !t.isCorrect[0]; o.transform.Find("no").GetComponent <RFButton>().posNumber = 1; o.transform.Find("notsure").GetComponent <RFButton>().isCorrect = false; o.transform.Find("notsure").GetComponent <RFButton>().posNumber = 2; } else { o.transform.Find("yes").GetComponent <RFButton>().isCorrect = false; o.transform.Find("yes").GetComponent <RFButton>().posNumber = 0; o.transform.Find("no").GetComponent <RFButton>().isCorrect = false; o.transform.Find("no").GetComponent <RFButton>().posNumber = 1; o.transform.Find("notsure").GetComponent <RFButton>().isCorrect = true; o.transform.Find("notsure").GetComponent <RFButton>().posNumber = 2; } o.name = "buttonSet 0 clone " + currentTestNumber; } else if (t.isButton) { o = Instantiate(t.buttonSet[0], new Vector3(0, 0, 0), new Quaternion()); o.transform.localScale = Vector3.one * fullScreenHeight / 4; o.name = "start clone"; } else { for (int i = 0; i < t.testSentences.Length; i++) { o = Instantiate(t.sentenceBox, new Vector3(-fullScreenWidth / 2 + sizeX / 2 + offsetX, fullScreenHeight / 2 - offsetY * (i + 1), 0), new Quaternion()); o.transform.position = new Vector3(-fullScreenWidth / 2 + sizeX / 2 + offsetX, fullScreenHeight / 2 - offsetY * (i + 1), 0); o.layer = LayerMask.NameToLayer("fadeOut"); o.name = "sentenceBox " + i + " clone " + currentTestNumber; o.GetComponent <TMP_Text>().text = t.testSentences[i]; o.GetComponent <TMP_Text>().alignment = TextAlignmentOptions.Right; if (i != 0) { Color c = o.GetComponent <TMP_Text>().color; c.a = .3f; o.GetComponent <TMP_Text>().color = c; } //o.GetComponent<TextMeshPro>().color = new Color(o.GetComponent<TextMeshPro>().color.r, o.GetComponent<TextMeshPro>().color.g, o.GetComponent<TextMeshPro>().color.b, .3f); o.GetComponent <RectTransform>().sizeDelta = new Vector2(sizeX, sizeY); o.transform.localScale = Vector3.one * fullScreenHeight / 10f; o = Instantiate(t.buttonSet[i], new Vector3(-fullScreenWidth / 2 + (sizeX / 2 * 3), fullScreenHeight / 2 - offsetY * (i + 1), 0), new Quaternion()); o.transform.position = new Vector3(-fullScreenWidth / 2 + (sizeX / 2 * 3), fullScreenHeight / 2 - offsetY * (i + 1), 0); foreach (Transform child in o.transform) { child.gameObject.GetComponent <RFButton>().buttonItemNumber = i; } o.transform.Find("yes").GetComponent <RFButton>().isCorrect = t.isCorrect[i]; o.transform.Find("yes").gameObject.layer = LayerMask.NameToLayer("fadeOut"); o.transform.Find("yes").GetComponent <RFButton>().posNumber = 0; o.transform.Find("no").GetComponent <RFButton>().isCorrect = !t.isCorrect[i]; o.transform.Find("no").gameObject.layer = LayerMask.NameToLayer("fadeOut"); o.transform.Find("no").GetComponent <RFButton>().posNumber = 1; o.transform.Find("notsure").GetComponent <RFButton>().isCorrect = false; o.transform.Find("notsure").gameObject.layer = LayerMask.NameToLayer("fadeOut"); o.transform.Find("notsure").GetComponent <RFButton>().posNumber = 2; if (i != 0) { Color y = o.transform.Find("yes").GetComponent <SpriteRenderer>().color; y.a = .3f; o.transform.Find("yes").GetComponent <SpriteRenderer>().color = y; Color n = o.transform.Find("no").GetComponent <SpriteRenderer>().color; n.a = .3f; o.transform.Find("no").GetComponent <SpriteRenderer>().color = n; Color s = o.transform.Find("notsure").GetComponent <SpriteRenderer>().color; s.a = .3f; o.transform.Find("notsure").GetComponent <SpriteRenderer>().color = s; } o.layer = LayerMask.NameToLayer("fadeOut"); o.name = "buttonSet " + i + " clone " + currentTestNumber; } GameObject.Find("buttonSet 0 clone " + currentTestNumber + "/yes").GetComponent <RFButton>().changeLayerToFadeIn(); } if (t.startTimer) { timer.Start(); } }
void setNextTestItem() { base.backEndItem = base.testItemBackEnd[base.currentTestNumber]; frontEndItem = testItemFrontEnd[base.currentTestNumber]; base.nextTest = false; }
void Update() { e = Camera.main.GetComponent <RFTestHandler>().backEndItem.currentEvent.type; RFTestItem item = rf.frontEndItem; if (isMouseDown && buttonItemNumber == item.activeItemNumber) { if (isStart) { rf.backEndItem.eventNumber++; return; } if (isCorrect && item.isExample && !rf.backEndItem.currentEvent.jumpLabel.Equals("")) { for (int i = rf.backEndItem.eventNumber + 1; i < rf.backEndItem.events.Length; i++) { if (rf.backEndItem.currentEvent.jumpLabel.Equals(rf.backEndItem.events[i].jumpLabel)) { buttonPushed(); rf.backEndItem.eventNumber = i; break; } } } else { //go forward an event if it is incorrect, only do button pushed if it isn't an example if (!item.isExample) { buttonPushed(); } rf.backEndItem.eventNumber++; } if (!item.isExample) { RFOutputHandler.correct = isCorrect; if (posNumber == 2) { RFOutputHandler.totalNoResponse++; } else if (isCorrect) { RFOutputHandler.totalCorrect++; } else if (!isCorrect) { RFOutputHandler.totalIncorrect++; } RFOutputHandler.responsePosition = posNumber; RFOutputHandler.reactionTimes.Add((RFOutputHandler.timer.ElapsedMilliseconds / 1000f)); //string[] output = { isCorrect ? "TRUE" : "FALSE", (RFOutputHandler.timer.ElapsedMilliseconds / 1000f).ToString(), posNumber.ToString() }; RFOutputHandler.PrintOutput(rf.frontEndItem.id[RFOutputHandler.itemNumber % 5]); print(rf.frontEndItem.id[RFOutputHandler.itemNumber % 5]); RFOutputHandler.itemNumber++; RFOutputHandler.ResetTimer(); } isMouseDown = false; } }