void GenerateQuestion() { _active = true; var questionsChosen = new List <int> { rnd.Range(0, _questions.Count), rnd.Range(0, _questions.Count), rnd.Range(0, _questions.Count), rnd.Range(0, _questions.Count) }; while (questionsChosen.GroupBy(x => x).Any(x => x.Count() > 1)) { questionsChosen = new List <int>() { rnd.Range(0, _questions.Count), rnd.Range(0, _questions.Count), rnd.Range(0, _questions.Count), rnd.Range(0, _questions.Count) }; } _mainQuestion = _questions[questionsChosen[0]]; var possibleQuestions = new List <ReversedEdgeworkQuestion>() { _mainQuestion, _questions[questionsChosen[1]], _questions[questionsChosen[2]], _questions[questionsChosen[3]] }; screenText.text = _mainQuestion.Answer.ToString(); possibleQuestions.Shuffle(); for (int i = 0; i < 4; ++i) { _assignedQuestions[i] = possibleQuestions[i]; texts[i].text = _assignedQuestions[i].Question; } LogTheFile(string.Format("I've chosen the following questions: {0}.", string.Join(", ", _assignedQuestions.Select(x => x.Question).ToArray()))); LogTheFile(string.Format("The number on the display is: {0}", _mainQuestion.Answer.ToString())); LogTheFile(string.Format("One correct answer is: {0}", _mainQuestion.Question)); }
void GenerateQuestion() { active = true; List <int> questionsChosen; do { questionsChosen = new List <int>() { rnd.Range(0, questions.Length), rnd.Range(0, questions.Length), rnd.Range(0, questions.Length), rnd.Range(0, questions.Length) }; } while (questionsChosen.GroupBy(x => x).Any(x => x.Count() > 1)); mainQuestion = questions[questionsChosen[0]]; ReversedEdgeworkQuestion question2 = questions[questionsChosen[1]]; ReversedEdgeworkQuestion question3 = questions[questionsChosen[2]]; ReversedEdgeworkQuestion question4 = questions[questionsChosen[3]]; List <ReversedEdgeworkQuestion> possible = new List <ReversedEdgeworkQuestion>() { mainQuestion, question2, question3, question4 }; screenText.text = mainQuestion.answer.ToString(); for (int i = 0; i < 4; ++i) { assignedQuestions[i] = possible.PickRandom(); possible.Remove(assignedQuestions[i]); texts[i].text = assignedQuestions[i].question; } LogTheFile("I've chosen the following questions: " + assignedQuestions[0].question + ", " + assignedQuestions[1].question + ", " + assignedQuestions[2].question + ", " + assignedQuestions[3].question + "."); }