如何在AS3中制作双随机数?

时间:2015-04-21 03:17:22

标签: function actionscript-3 random

我想制作一个随机化函数,当角色接触一个物体(草)时循环,如果该数字达到3,每说一次,4,它会转到另一个随机发生器,它选择1-5之间的值。在选择一个数字后,它应该停止随机化。

下面的伪代码

If the character is hitting grass
Randomize a number between 1 and 4
  If that number is 3, randomize a number between 1 and 5
  If that number is 1, gotoAndPlay(1, "battle1")
  If that number is 2,....etc
If that number is not a 3, loop the original randomize.

1 个答案:

答案 0 :(得分:1)

我很难准确理解你的问题是什么,但似乎你想要的东西是这样的:

function randomize():int
{
    switch (int(Math.random() * 5))
    {
        case 3: return int(Math.random() * 6); break;
        case 1: gotoAndPlay(1, 'battle1'); break;

        // ...etc
    }

    return -1;
}

如果您的第一次滚动为3,则会返回0到5之间的数字,否则返回-1,这意味着您可以执行以下操作:

var random:int = randomize();
while (random < 0)
{
    // Generate numbers until we go into the second random number roll.
    // ...

    random = randomize();
}