嗨,我有一个关于 for 循环的问题。我有一个包含 3 个影片剪辑的数组,我想一个接一个地播放每个影片剪辑,我计划通过在 for 循环中使用计时器类来延迟播放();每个 MC。
谁能指出我正确的方向,下面显示的是我使用返回函数的尝试(但是没有成功)
//Shuffling the array to produce a random order when MC's are playing
function randomSort(a:*, b:*):Number
{
if (Math.random() < 0.5) return -1;
else return 1;
}
var obstacleArray:Array = [obstacleCar,obstacleCar2,obstacleCar3];
obstacleArray.sort(randomSort);
trace(obstacleArray);
trace(obstacleArray.length);
//OBSTACLE START DELAY
var timerPlay:Timer = new Timer(1000,1);
timerPlay.addEventListener(TimerEvent.TIMER, ontimerPlay);
timerPlay.start();
function ontimerPlay(evt:TimerEvent):void{
//FOR EACH OBSTACLE
var _i:Number=-1;
for(var i:Number=0; i<obstacleArray.length; i++){
var timerDelay:Timer = new Timer(1000,1);
timerDelay.addEventListener(TimerEvent.TIMER, ontimerDelay);
timerDelay.start();
function ontimerDelay(evt:TimerEvent):void{
_i = i;
trace(obstacleArray[i]);
obstacleArray[i].play();
trace(i);
}
}
return _i;
}
提前非常感谢您!