AS3 при загрузке кадра уменьшает время обратного отсчета
У меня есть следующий обратный отсчет, который отправит игрока в другой кадр, если обратный отсчет равен 0. Мне нужно обновить код, чтобы уменьшить этот обратный отсчет на 0,05 секунды при каждой загрузке кадра.
Из того, что я хочу в кадре 2 действия:
1-й раз: var CountDown: Number = 3;
2-й раз: 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");
}
}
1 ответ
Я не уверен, что понял, что вы хотите, но вы можете попробовать это:
1-й кадр:
Я создал кнопку, чтобы перейти ко 2-му кадру (я не знал, как перейти к 2-му кадру):
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)