71 lines
1.6 KiB
C#
71 lines
1.6 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class A10GQuestionManager : MonoBehaviour
|
|
{
|
|
public List<A10GQuestionClass> questions = new List<A10GQuestionClass>();
|
|
public static A10GQuestionManager instance;
|
|
public Text questionText;
|
|
public Image questionImage;
|
|
public List<A10GAnswerButton> answerButtons = new List<A10GAnswerButton>();
|
|
private int currentIndex;
|
|
private Animator anim;
|
|
|
|
private void Awake()
|
|
{
|
|
instance = this;
|
|
anim = GetComponent<Animator>();
|
|
SetupQuestion();
|
|
GameControl.instance.StartedGame();
|
|
}
|
|
|
|
public void NextQuestion()
|
|
{
|
|
currentIndex++;
|
|
SetupQuestion();
|
|
}
|
|
|
|
public void SetupQuestion()
|
|
{
|
|
questionText.text = questions[currentIndex].question;
|
|
questionImage.sprite = questions[currentIndex].qImage;
|
|
SetupAnswers();
|
|
}
|
|
|
|
public void SetupAnswers()
|
|
{
|
|
for (int i = 0; i < answerButtons.Count; i++)
|
|
{
|
|
answerButtons[i].SetupThis(questions[currentIndex].answers[i]);
|
|
}
|
|
}
|
|
|
|
public void CorrectAnswer()
|
|
{
|
|
A10D1AudioSystem.instance.Correct();
|
|
anim.SetTrigger("Correct");
|
|
StartCoroutine(WaitABit());
|
|
}
|
|
|
|
public void WrongAnswer()
|
|
{
|
|
A10D1AudioSystem.instance.Wrong();
|
|
anim.SetTrigger("Wrong");
|
|
}
|
|
|
|
IEnumerator WaitABit()
|
|
{
|
|
yield return new WaitForSecondsRealtime(2);
|
|
if (currentIndex < questions.Count - 1)
|
|
{
|
|
NextQuestion();
|
|
}
|
|
else
|
|
{
|
|
GameControl.instance.FinishGame();
|
|
}
|
|
}
|
|
}
|