code
using System.Collections;
using UnityEngine.UI;
using System.Collections.Generic;
using UnityEngine;
using System.Linq;
using UnityEngine.SceneManagement;
using System.Threading;
public class GameManager : MonoBehaviour {
public static int number = 0;
public static bool end;
public Question[] questions;
public static List<Question> unansweredQuesions;
public Question currentQuestion;
[SerializeField]
public Text factText;
[SerializeField]
public Text scoreText;
[SerializeField]
private Text trueAnswerText;
[SerializeField]
private Text falseAnswerText;
[SerializeField]
private Animator animator;
[SerializeField]
private float timeBetweenQuestions = 1f;
private float w85sec = 5f;
void Start() {
if (unansweredQuesions == null || unansweredQuesions.Count == 0) {
end = false;
unansweredQuesions = questions.ToList<Question>();
GetRandmonQuestion();
} else if (unansweredQuesions.Count == 1 && end == false) {
end = true;
SceneManager.LoadScene(7);
} else if (end == true) {
scoreText.text = "RIGHT ANSWERS: " + number.ToString() + "/9";
} else {
GetRandmonQuestion();
}
}
public static void reset() {
number = 0;
end = false;
unansweredQuesions = null;
}
void counter(){
number++;
Debug.Log(number);
}
void GetRandmonQuestion() {
int randomQuiestionIndex = Random.Range (0, unansweredQuesions.Count);
currentQuestion = unansweredQuesions[randomQuiestionIndex];
factText.text = currentQuestion.fact;
if (currentQuestion.isTrue){
trueAnswerText.text = "WRONG";
falseAnswerText.text = "CORRECT";
}
else{
trueAnswerText.text = "CORRECT";
falseAnswerText.text = "WRONG";
}
}
IEnumerator TransitionToNextQuestion(){
unansweredQuesions.Remove(currentQuestion);
yield return new WaitForSeconds(timeBetweenQuestions);
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
}
public void UserSelectTrue() {
animator.SetTrigger("True");
if (currentQuestion.isTrue){
Debug.Log ("Correct!");
counter();
}
else {
Debug.Log("False!");
}
StartCoroutine(TransitionToNextQuestion());
}
public void UserSelectFalse (){
animator.SetTrigger("False");
if (!currentQuestion.isTrue){
Debug.Log ("Correct!");
counter();
}
else{
Debug.Log("False!");
}
StartCoroutine(TransitionToNextQuestion());
}
}