Actionscript 3 AS3找到getTimer的一半以允许二次循环
我已经设置好了,这样我就可以按空格键两次,设置一个计时器持续时间来重复一个电影剪辑。。我想用另一段的一半时间重复第二段电影剪辑。因此,对于每个循环,它会循环两次。以下是我尝试过的:Actionscript 3 AS3找到getTimer的一半以允许二次循环,actionscript-3,flash,Actionscript 3,Flash,我已经设置好了,这样我就可以按空格键两次,设置一个计时器持续时间来重复一个电影剪辑。。我想用另一段的一半时间重复第二段电影剪辑。因此,对于每个循环,它会循环两次。以下是我尝试过的: var timeStart:Number; var loopDuration:Number; var timeLastLoop:Number; var rando80:Number; var rando802:Number; var rando8:Number; var randoy:Number; var half
var timeStart:Number;
var loopDuration:Number;
var timeLastLoop:Number;
var rando80:Number;
var rando802:Number;
var rando8:Number;
var randoy:Number;
var halfduration:Number;
var randomImage:Bitmap;
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onKeyDown(e:KeyboardEvent):void {
if (e.keyCode == Keyboard.SPACE) {
if (!timeStart) { // First time SPACE is hit
timeStart = getTimer();
} else { // Second time SPACE is hit
loopDuration = getTimer() - timeStart; // set the loop duration
halfduration = (getTimer() - timeStart) *.5;
timeStart = NaN; // reset the start time
loop();
}
}
}
function onEnterFrame(e:Event):void {
rando8 = Math.floor(Math.random() * 7);
rando80 = Math.floor(Math.random() * 70);
randoy = Math.floor(Math.random() * -1000);
rando802 = Math.floor(Math.random() * 70);
if ( timeLastLoop && halfduration) {
if (getTimer() >= timeLastLoop + halfduration) { // if it's time to loop
circleThump2.gotoAndPlay(1);
}
}
if (loopDuration && timeLastLoop) {
if (getTimer() >= timeLastLoop + loopDuration) { // if it's time to loop
loop();
}
}
}
function loop():void {
timeLastLoop = getTimer();
circleThump.gotoAndPlay(1);
MovieClipMan.gotoAndPlay(rando80);
hotdog.gotoAndPlay(rando80);
MovieClipMan.y = randoy;
MovieClipMan2.gotoAndPlay(rando80);
movieClipColor.gotoAndStop(rando8);
MovieClipMan2.y = randoy;
它只是不起作用,还是有一个特定的问题你需要帮助?是的,问题是它不起作用。有人知道如何让它工作吗?如果有,请告诉我这里发生了什么。非常感谢。