IEnumerator WrongQuestion() { SharedScoreScript.TotalScore += SharedScoreScript.Score; //Show right answer and AnswerAGO.GetComponent <Image>().color = Color.green; RightAnswerAnim.SetTrigger("RightAnswerAnim"); //disable buttons so they cannot be pressed while transitioning to new question AnswerAGO.GetComponent <Button>().enabled = false; AnswerBGO.GetComponent <Button>().enabled = false; AnswerCGO.GetComponent <Button>().enabled = false; AnswerDGO.GetComponent <Button>().enabled = false; yield return(new WaitForSeconds(1f)); //TODO show end score and restart button EndScreen.SetActive(true); AdsScript.adCount++; }
// Call This For New Question IEnumerator SetNewQuestion() { AnswerAGO.GetComponent <Button>().enabled = false; AnswerBGO.GetComponent <Button>().enabled = false; AnswerCGO.GetComponent <Button>().enabled = false; AnswerDGO.GetComponent <Button>().enabled = false; CountDownTime = 25; if (r >= questionData.questions.Count) { for (i = questionData.questions.Count - 1; i > 0; i--) // get the count of the array an shuffle all the elements begin from end to start of the array { r = Random.Range(0, i); // get a random number from 0 to array count tmp = questionData.questions[i]; // swap the random place (eg: 3) and assign it to tmp questionData.questions[i] = questionData.questions[r]; // swap the i(current number) with tmp questionData.questions[r] = tmp; // swap the tmp with the value of i } } currentQuestion = questionData.questions[r++]; RandomButtPos = Random.Range(1, 5); yield return(new WaitForSeconds(1f)); //transition animations QuestionAnim.SetBool("NewQuestionAnimation", true); AnswersAnim.SetBool("NewAnswerAnimation", true); //reset color AnswerAGO.GetComponent <Image>().color = Color.white; AnswerBGO.GetComponent <Image>().color = Color.white; AnswerCGO.GetComponent <Image>().color = Color.white; AnswerDGO.GetComponent <Image>().color = Color.white; AnswerAGO.GetComponent <Button>().enabled = true; AnswerBGO.GetComponent <Button>().enabled = true; AnswerCGO.GetComponent <Button>().enabled = true; AnswerDGO.GetComponent <Button>().enabled = true; yield return(new WaitForSeconds(0.1f)); //disable audience CorrectAnswerGO.GetComponent <Text>().text = " "; Wrong1.GetComponent <Text>().text = " "; Wrong2.GetComponent <Text>().text = " "; Wrong3.GetComponent <Text>().text = " "; //make active AnswerAGO.SetActive(true); AnswerBGO.SetActive(true); AnswerCGO.SetActive(true); AnswerDGO.SetActive(true); //make active CharA.SetActive(true); CharB.SetActive(true); CharC.SetActive(true); CharD.SetActive(true); switch (RandomButtPos) { case 1: AnswerAGO.transform.localPosition = Button1Pos; AnswerBGO.transform.localPosition = Button2Pos; AnswerCGO.transform.localPosition = Button3Pos; AnswerDGO.transform.localPosition = Button4Pos; CorrectAnswerGO.transform.localPosition = Audience1Pos; Wrong1.transform.localPosition = Audience2Pos; Wrong2.transform.localPosition = Audience3Pos; Wrong3.transform.localPosition = Audience4Pos; break; case 2: AnswerAGO.transform.localPosition = Button2Pos; AnswerBGO.transform.localPosition = Button1Pos; AnswerCGO.transform.localPosition = Button4Pos; AnswerDGO.transform.localPosition = Button3Pos; CorrectAnswerGO.transform.localPosition = Audience2Pos; Wrong1.transform.localPosition = Audience1Pos; Wrong2.transform.localPosition = Audience4Pos; Wrong3.transform.localPosition = Audience3Pos; break; case 3: AnswerAGO.transform.localPosition = Button3Pos; AnswerBGO.transform.localPosition = Button4Pos; AnswerCGO.transform.localPosition = Button2Pos; AnswerDGO.transform.localPosition = Button1Pos; CorrectAnswerGO.transform.localPosition = Audience3Pos; Wrong1.transform.localPosition = Audience4Pos; Wrong2.transform.localPosition = Audience2Pos; Wrong3.transform.localPosition = Audience1Pos; break; case 4: AnswerAGO.transform.localPosition = Button4Pos; AnswerBGO.transform.localPosition = Button3Pos; AnswerCGO.transform.localPosition = Button1Pos; AnswerDGO.transform.localPosition = Button2Pos; CorrectAnswerGO.transform.localPosition = Audience4Pos; Wrong1.transform.localPosition = Audience3Pos; Wrong2.transform.localPosition = Audience1Pos; Wrong3.transform.localPosition = Audience2Pos; break; } //Adding Values To Text QuestionText.GetComponent <Text>().text = currentQuestion.questionText; AnswerAGO.GetComponentInChildren <Text>().text = currentQuestion.answerA; AnswerBGO.GetComponentInChildren <Text>().text = currentQuestion.answerB; AnswerCGO.GetComponentInChildren <Text>().text = currentQuestion.answerC; AnswerDGO.GetComponentInChildren <Text>().text = currentQuestion.answerD; yield return(new WaitForSeconds(0.1f)); QuestionAnim.SetBool("NewQuestionAnimation", false); AnswersAnim.SetBool("NewAnswerAnimation", false); }
public void OnBAnswerClick() { AnswerBGO.GetComponent <Image>().color = Color.red; StartCoroutine(WrongQuestion()); }
void Start() { //get question data from xml file ChooseCategory(MainScreenButtons.CategoryInt); CountDownTime = 25; for (i = questionData.questions.Count - 1; i > 0; i--) // get the count of the array an shuffle all the elements begin from end to start of the array { r = Random.Range(0, i); // get a random number from 0 to array count tmp = questionData.questions[i]; // swap the random place (eg: 3) and assign it to tmp questionData.questions[i] = questionData.questions[r]; // swap the i(current number) with tmp questionData.questions[r] = tmp; // swap the tmp with the value of i } currentQuestion = questionData.questions[r++]; //q = Random.Range(0, questionData.questions.Count); //currentQuestion = questionData.questions[q]; int RandomButtPos = Random.Range(1, 5); //Random Button placement switch (RandomButtPos) { case 1: AnswerAGO.transform.localPosition = Button1Pos; AnswerBGO.transform.localPosition = Button2Pos; AnswerCGO.transform.localPosition = Button3Pos; AnswerDGO.transform.localPosition = Button4Pos; //Percents from Audience choice CorrectAnswerGO.transform.localPosition = Audience1Pos; Wrong1.transform.localPosition = Audience2Pos; Wrong2.transform.localPosition = Audience3Pos; Wrong3.transform.localPosition = Audience4Pos; break; case 2: AnswerAGO.transform.localPosition = Button2Pos; AnswerBGO.transform.localPosition = Button1Pos; AnswerCGO.transform.localPosition = Button4Pos; AnswerDGO.transform.localPosition = Button3Pos; CorrectAnswerGO.transform.localPosition = Audience2Pos; Wrong1.transform.localPosition = Audience1Pos; Wrong2.transform.localPosition = Audience4Pos; Wrong3.transform.localPosition = Audience3Pos; break; case 3: AnswerAGO.transform.localPosition = Button3Pos; AnswerBGO.transform.localPosition = Button4Pos; AnswerCGO.transform.localPosition = Button2Pos; AnswerDGO.transform.localPosition = Button1Pos; CorrectAnswerGO.transform.localPosition = Audience3Pos; Wrong1.transform.localPosition = Audience4Pos; Wrong2.transform.localPosition = Audience2Pos; Wrong3.transform.localPosition = Audience1Pos; break; case 4: AnswerAGO.transform.localPosition = Button4Pos; AnswerBGO.transform.localPosition = Button3Pos; AnswerCGO.transform.localPosition = Button1Pos; AnswerDGO.transform.localPosition = Button2Pos; CorrectAnswerGO.transform.localPosition = Audience4Pos; Wrong1.transform.localPosition = Audience3Pos; Wrong2.transform.localPosition = Audience1Pos; Wrong3.transform.localPosition = Audience2Pos; break; } //Adding Values To Text QuestionText.GetComponent <Text>().text = currentQuestion.questionText; //setting question's possible answers AnswerAGO.GetComponentInChildren <Text>().text = currentQuestion.answerA; AnswerBGO.GetComponentInChildren <Text>().text = currentQuestion.answerB; AnswerCGO.GetComponentInChildren <Text>().text = currentQuestion.answerC; AnswerDGO.GetComponentInChildren <Text>().text = currentQuestion.answerD; }