我希望在主时间结束时显示“time is up”影片剪辑。然后在3秒倒计时结束时进入特定帧。我使用remove事件监听器,但我会为所有监听器编写代码和所有级别。有一个简单的方法吗?
import flash.net.SharedObject;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.TouchEvent;
import flash.ui.Multitouch;
import Turn;
import ScoreHolder;
timeisup.visible = false ;
//This timer start when the main timer stop.
var threesecond:Timer = new Timer(3000,0);
////MAIN TIMER
var minute:Number = 0;
var second:Number = 15;
//This timer check to timer and set to what happen if time over.
var timercheck:Timer = new Timer(1000,0);
timercheck.addEventListener(TimerEvent.TIMER, timercheck1);
timercheck.start();
function timercheck1(evt:TimerEvent):void {
if (minute <1 && second <1)
{
timer.stop();
timeisup.visible = true;
timeisup.play();
threesecond.start();
stage.removeEventListener(Event.ENTER_FRAME, h1);
stage.removeEventListener(Event.ENTER_FRAME, h2);
stage.removeEventListener(Event.ENTER_FRAME, h3);
stage.removeEventListener(Event.ENTER_FRAME, h4);
stage.removeEventListener(Event.ENTER_FRAME, h5);
}
}
////What gonna happen to when threesecond over
threesecond.addEventListener(TimerEvent.TIMER, zamanbittia);
function zamanbittia(evt:TimerEvent):void
{
gotoAndPlay(392);
}
// Create the timer
// Checks the clock function every 1000 milisecond (1 second)
var timer:Timer = new Timer(1000);
timer.addEventListener(TimerEvent.TIMER, clock);
timer.start();
// Function that increments the timer
function clock(evt:TimerEvent):void {
// every time this function is checked increment second by one
second -= 1;
// If the second is 59
if(second < 0){
// The minute will be plussed with 1
minute -= 1;
//and the zero will be set to 00
second = 59;
}
我也试过
stage.frameRate = 0.01;
但它要慢,如果计时器在移动到物体时停止,那么我会收到错误。