actionscript 3 Как отслеживать время, прошедшее?

im новый для actionscript3 flash. У меня есть переменная int, и я хотел бы добавить +2 каждую секунду с момента начала игры. Как я могу это сделать ? откуда мне знать, сколько времени прошло? заранее спасибо!

3 ответов


getTimer () вернет int точно, сколько миллисекунд с момента запуска flash.

import flash.utils.getTimer;

var myInt:int = getTimer() * 0.001;

myInt теперь будет столько секунд, сколько работает программа.

edit: о, Чтобы сказать, как долго он работает, просто держите начальный myInt и проверьте его против текущего таймера.

Итак, когда игра начинается.

var startTime:int = getTimer();

затем каждый кадр или когда вам нужно, чтобы проверить его.

var currentTime:int = getTimer();


var timeRunning:int = (currentTime - startTime) * 0.001; // this is how many seconds the game has been running.

var a:int = 0;

var onTimer:Function = function (e:TimerEvent):void {
    a += 2;
}

var timer:Timer = new Timer(1000);
timer.addEventListener(TimerEvent.TIMER, onTimer);
timer.start();

var countdown:Timer = new Timer(1000);
countdown.addEventListener(TimerEvent.TIMER, timerHandler);
countdown.start();

function timerHandler(e:TimerEvent):void
{           
    var minute = Math.floor(countdown.currentCount /  60);
    if(minute < 10)
        minute = '0'+minute;

    var second = countdown.currentCount % 60;
    if(second < 10)
        second = '0'+second;


    var timeElapsed = minute +':'+second;
    trace(timeElapsed);
}