Вот какой общий код для класса игры. Он содержит множество вопросов. Это в основном означает, что он содержит столько объектов Вопроса, сколько вы хотите, которые доступны через функции addQuestion()
и getQuestion()
.
public class Game {
private var questions:Array = [];
public function Game() {
}
public function addQuestion(q:Question):void {
questions.push(question);
}
public function getQuestion(i:uint):Question {
return questions[i];
}
}
Аналогичным образом, это класс для вопроса. Он содержит подсказку и массив ответов. Каждый ответ в основном является просто строкой, поэтому нет необходимости в классе ответа. Если, однако, вы хотели расширить эту реализацию, чтобы каждый ответ также имел другие атрибуты, такие как временная метка, вы могли бы создать для нее класс.
public class Question {
private var prompt:String;
private var answers:Array = [];
public function Question(prompt:String) {
this.prompt = prompt;
}
public function getPrompt():String {
return prompt;
}
public function addAnswer(answer:String):void {
answers.push(answer);
}
public function getAnswer(i:uint):String {
return answers[i];
}
}
Итак, чтобы получить доступ к второму ответу на первый вопрос в игре, можно было бы написать «myGame.getQuestion (0) .getAnswer (1)`.
Надеюсь, это помогло. Позвольте мне знать, если у вас есть еще вопросы.
Вы хотите иметь переменные для объектов «Ответ» в своем классе «Вопрос» или добавить их в «Вопрос» через список отображения? –
Я бы хотел, чтобы я мог использовать это: 'sampleGame.sampleQuestion.answer1' – mjfeintuch