コード例 #1
0
    public static Question GetQuestion(QuestionSystemEnums.QuestionType qType)
    {
        int           randomize      = 0;
        bool          questionViable = false;
        string        question       = "";
        List <string> answersList    = new List <string>();

        questionType = qType;
        while (!questionViable)
        {
            randomize = UnityEngine.Random.Range(0, questionList.Count);

            switch (questionType)
            {
            case QuestionSystemEnums.QuestionType.Antonym:
                if (questionList [randomize].hasAntonym)
                {
                    string[] antonym = questionList [randomize].antonym.Split('/');
                    answersList.Add(antonym [0]);
                    answersList.Add(antonym [1]);
                    question       = questionList [randomize].answer;
                    questionViable = true;
                }
                break;

            case QuestionSystemEnums.QuestionType.Synonym:
                if (questionList [randomize].hasSynonym)
                {
                    string[] synonym = questionList [randomize].synonym.Split('/');
                    answersList.Add(synonym [0]);
                    answersList.Add(synonym [1]);
                    question       = questionList [randomize].answer;
                    questionViable = true;
                }
                break;

            case QuestionSystemEnums.QuestionType.Definition:
                if (questionList [randomize].hasDefinition)
                {
                    answersList.Add(questionList[randomize].answer);
                    question       = questionList [randomize].definition;
                    questionViable = true;
                }
                break;
            }
            if (questionsDone.Contains(question))
            {
                questionViable = false;
            }
        }

        Question questionGot = new Question(question, answersList.ToArray());

        questionsDone.Add(question);
        return(questionGot);
    }
コード例 #2
0
    protected void LoadQuestion(QuestionSystemEnums.QuestionType questionType)
    {
        Question questionLoaded = QuestionBuilder.GetQuestion(questionType);
        string   question       = questionLoaded.question;

        gameObject.transform.GetChild(0).GetComponent <Text> ().text = question;
        questionAnswer = questionLoaded.answers.Length == 2 ?
                         (questionLoaded.answers[0].ToUpper() + "/" + questionLoaded.answers[1].ToUpper()):
                         questionLoaded.answers[UnityEngine.Random.Range(0, questionLoaded.answers.Length)].ToUpper();
    }