您好我正在创建一个简单的游戏,提出问题。但是我希望整个游戏中的问题都能得到解决。
所以,有11个问题,所以我随机抽取一到十一之间的数字
然后它会设置一个数组值,这样如果已经选择了问题,就不会再选择它了。
一旦它为一个尚未被问到的问题提供了一个值,就会进入那个框架。 (使用Adobe Flash)
所以,简单地说:
随机数 - >问过这个问题吗? - >是(重启脚本) - >否(转到相应的框架)
我已经设置了代码,但由于某种原因它无法运行。当我使用“停止();”它会忽略它并继续通过框架。这里发生了什么?有人可以为我创建一个有效的代码吗?我可以很好地阅读代码,但是我写错了。所以我可以在必要时更改框架。
提前致谢!
答案 0 :(得分:1)
保留两个阵列;所有问题中的一个,未经修改,以及您选择问题的问题,随时删除。类似的东西:
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 );
}