예제 #1
0
    public void ChooseQuestion(byte question)
    {
        if (!dialogAwaliable)
        {
            return;
        }

        if (!isFirstDialog)
        {
            answerText.text = dialogs[choosed[question][0]].GetAnswerInRange(currentStats.GetStatValue(dialogs[choosed[question][0]].linkedStat)) + '\n';
            currentStats.GiveAnswer();
            answerText.text += tiredMessages.GetMessage(currentStats) + '\n';

            if (currentStats.Tired > 0)
            {
                FillQuestions();
            }
            else
            {
                EndDialog();
            }
        }
        else
        {
            FillFirstDialog();
        }

        OutputDebugInfo();
    }
예제 #2
0
        public string GetMessage(StatsHolder stat)
        {
            List <string> possibleAnswers = new List <string>(regularMessages);

            foreach (var j in specialMessages)
            {
                for (int i = 0; i < (int)StatsHolder.Stat.LAST_STAT; ++i)
                {
                    if (i == (int)j.linkedStat)
                    {
                        possibleAnswers.Add(j.GetAnswerInRange(stat.GetStatValue(j.linkedStat)));
                    }
                }
            }

            return(possibleAnswers[Random.Range(0, possibleAnswers.Count)]);
        }