我有以下倒计时,如果倒计时等于0,将播放器发送到另一帧。 我需要更新代码,以便在每次加载帧时在0,05秒内减少此倒计时。
我想要的第2帧动作:
第一次:var CountDown:Number = 3;
第二次:var CountDown:Number = 2,95;
第3次:var CountDown:Number = 2,90;
第4 ......
你可以帮帮我吗?很多!!
代码:
import flash.events.MouseEvent;
stop();
var fl_SecondsToCountDown_2:Number = 3;
var fl_CountDownTimerInstance_2:Timer = new Timer(1000, fl_SecondsToCountDown_2);
fl_CountDownTimerInstance_2.addEventListener(TimerEvent.TIMER, fl_CountDownTimerHandler_2);
fl_CountDownTimerInstance_2.start();
function fl_CountDownTimerHandler_2(event:TimerEvent):void
{
//trace(SecondsToCountDown_2 + " seconds");
fl_SecondsToCountDown_2--;
if(fl_SecondsToCountDown_2 == 0){
gotoAndStop ("lost");
}
}
答案 0 :(得分:0)
我不确定我是否理解你想要的东西,但你可以试试这个:
第1帧:
我创建了一个按钮,只是为了进入第二帧(我不知道你如何进入第二帧):
import flash.events.MouseEvent
btn.addEventListener(MouseEvent.CLICK, btn_on_Press)
function btn_on_Press(e:MouseEvent){
gotoAndPlay(2)
}
stop()
第2帧:
// if count_down didnt exist, we create it
if(!count_down) var count_down:Number = 3
else count_down -= 0.05
// sometimes the operation give us result like this : 2.9000000000000004 so we should fixe decimals
trace(count_down.toFixed(2))
// go tp your "lost" frame
if(count_down <= 0) gotoAndStop('lost')
// return to 1st frame
else gotoAndStop(1)