프로그래밍/유니티
초딩도 따라할 수 있는 유니티로 퀴즈 앱 만들기
뽀로로친구에디
2021. 9. 13. 17:11
- YouTube
www.youtube.com
- YouTube
www.youtube.com
Button x 4
Button Text x 4
QuizManager.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class QuizManager : MonoBehaviour
{
public List<QuestionAndAnswers> QnA;
public GameObject[] optioins;
public int currentQuestion;
public GameObject Quizpanel;
public GameObject GoPanel;
public Text QuestionText;
public Text ScoreText;
int totalQuestions = 0;
public int score;
private void Start()
{
totalQuestions = QnA.Count;
GoPanel.SetActive(false);
generateQuestion();
}
public void retry()
{
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
}
void GameOver()
{
Quizpanel.SetActive(false);
GoPanel.SetActive(true);
ScoreText.text = score + "/" + totalQuestions;
}
public void correct()
{
score += 1;
QnA.RemoveAt(currentQuestion);
generateQuestion();
}
public void wrong()
{
QnA.RemoveAt(currentQuestion);
generateQuestion();
}
void SetAnswers()
{
for(int i =0;i< optioins.Length;i++)
{
optioins[i].GetComponent<AnswerScript>().isCorrect = false;
optioins[i].transform.GetChild(0).GetComponent<Text>().text = QnA[currentQuestion].Answers[i];
if(QnA[currentQuestion].CorrectAnswer == i + 1)
{
optioins[i].GetComponent<AnswerScript>().isCorrect = true;
}
}
}
void generateQuestion()
{
if(QnA.Count > 0)
{
currentQuestion = Random.Range(0, QnA.Count);
QuestionText.text = QnA[currentQuestion].Question;
SetAnswers();
}
else
{
Debug.Log("Out of Questions");
GameOver();
}
}
}