code

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());



   }




}





Report Page