2013-09-30 4 views
0

Привет, Я создаю простую игру, которая задает вопросы. Однако мне хотелось бы, чтобы вопросы были случайными во время игры.Скрипт случайного числа ActionScript 3.0 не работает

Итак, есть 11 вопросов, так что я случайным образом число от одного до одиннадцати

Тогда было бы установить значение массива таким образом, что, если вопрос уже был выбран он не будет выбран снова.

После того, как он получил случайное значение для вопроса, который не был задан, он переходит к этому кадру. (С помощью Adobe Flash)

Так просто:

Случайное число -> на этот вопрос был задан? -> Да (сценарий перезапуска) -> Нет (Перейти к соответствующей рамке)

Я установил код, но по какой-то причине он не запускается. Когда я использую «Stop()»; он игнорирует его и продолжает проходить через рамки. Что здесь происходит? Может ли кто-нибудь создать для меня код, который просто работает? Я могу хорошо читать код, но я не могу его написать. Поэтому я могу изменить фреймы, где это необходимо.

Заранее благодарен!

ответ

0

Хранить два массива; один из всех вопросов, немодифицированный, и тот, на который вы выбираете вопросы, удаляя, когда идете. Что-то вроде:

var allQuestions:Array = ["...", "...", ...]; 
var questions:Array = []; 

public function getRandomQuestion():String 
{ 
    // if our questions are empty, fill them 
    if(questions.length == 0) 
     this.fillQuestions(); 

    // choose a random question index 
    var index:int = int(Math.random() * questions.length); 

    // this will remove that question from the array and return it. The [0] at the end 
    // is because splice returns an array, so we're returning the first value of 
    // it (i.e. the question we just removed) 
    return questions.splice(index, 1)[0]; 
} 

public function fillQuestions():String 
{ 
    // fill the questions array here from our full array 
    for each(var s:String in allQuestions) 
     questions.push(s); 
} 
Смежные вопросы