随机播放 movieclip AS3 的多个实例
Randomly playing multiple instances of movieclip AS3
我制作了一个眼睛的动画片段,设置为随机播放闪烁的动画。
我想在舞台上放置该影片片段的许多实例,它们都在不同的时间播放。
但是,如果我将剪辑的多个实例放在舞台上,则只会播放一个。如何让多个实例同时播放?
我好多年没用flash了,可以的话请简单说明一下~
stop();
var eyeTimer = new Timer(1000 + Math.random() * 1000);
eyeTimer.addEventListener(TimerEvent.TIMER, blink);
eyeTimer.start();
function blink(evt:TimerEvent):void {
Timer(evt.currentTarget).delay = 1000 + Math.random() * 1000;
trace( "triggered!" );
eye.gotoAndPlay(1);
}
使用setTimeOut方法更简单。用户在您的 Eye MovieClip 代码下方
addEye (45,78);
addEye (76,44);
...
function addEye (X,Y)
{
var eye:Eye = new Eye ();
eye.x = X;
eye.y = Y;
this.addChild(eye);
eye.gotoAndStop(1);//Stop the eye from blinking. may be on frame 1 maye be on other frame number.
setTimeOut(blink,1000+Math.random()*1000);
function blink():void
{
eye.gotoAndPlay(2);
setTimeOut(blink,1000+Math.random()*1000);//Call the random function with random time again
}
}
我制作了一个眼睛的动画片段,设置为随机播放闪烁的动画。 我想在舞台上放置该影片片段的许多实例,它们都在不同的时间播放。 但是,如果我将剪辑的多个实例放在舞台上,则只会播放一个。如何让多个实例同时播放?
我好多年没用flash了,可以的话请简单说明一下~
stop();
var eyeTimer = new Timer(1000 + Math.random() * 1000);
eyeTimer.addEventListener(TimerEvent.TIMER, blink);
eyeTimer.start();
function blink(evt:TimerEvent):void {
Timer(evt.currentTarget).delay = 1000 + Math.random() * 1000;
trace( "triggered!" );
eye.gotoAndPlay(1);
}
使用setTimeOut方法更简单。用户在您的 Eye MovieClip 代码下方
addEye (45,78);
addEye (76,44);
...
function addEye (X,Y)
{
var eye:Eye = new Eye ();
eye.x = X;
eye.y = Y;
this.addChild(eye);
eye.gotoAndStop(1);//Stop the eye from blinking. may be on frame 1 maye be on other frame number.
setTimeOut(blink,1000+Math.random()*1000);
function blink():void
{
eye.gotoAndPlay(2);
setTimeOut(blink,1000+Math.random()*1000);//Call the random function with random time again
}
}