动作脚本3.从数组中向上和向下随机移动项目

时间:2014-04-04 00:25:48

标签: arrays actionscript-3 flash random

所以我正在制作类似这样的游戏:example

我已将一系列项目添加到4个孔中。我需要让这些项目随机向上移动(+ 100px)和向下移动(-100px)。

我添加了6个项目的所有洞:

    for(var i:uint = 0; i < 6; i++)
        {
        holeArr[0].inside.addChild(itemsArr[4][i]);
        holeArr[1].inside.addChild(itemsArr[5][i]);
        holeArr[2].inside.addChild(itemsArr[6][i]);
        holeArr[3].inside.addChild(itemsArr[7][i]);
        }

如何使它们随机向上移动(+ 100px)和向下移动(-100px)?我开始了,但我不知道下一步该做什么......拜托,你能帮助我吗?

function randomSpawn() {
        for(var i:uint = 0; i < 6; i++)
            {
            itemsArr[4][i].x += 100;
            itemsArr[5][i].x += 100;
            itemsArr[6][i].x += 100;
            itemsArr[7][i].x += 100;
            }
}

1 个答案:

答案 0 :(得分:1)

随机向上/向下移动项目+ -100像素:

var distance = Math.round(Math.random() * 2 - 1) * 100;
mySprite.y += distance;

使用Tweenlite

为其设置动画
var newPosY = mySprite.y;
newPosY += Math.round(Math.random() * 2 - 1) * 100;
TweenLite.to(mySprite,1,{y:newPosY});

从数组中选择随机项的最简单方法

var index = Math.round(Math.random * (myArray.length - 1));
var myRandomItem = myArray[index];