2011-03-30 2 views

Répondre

19

getTimer() retourne un int exactement combien de millisecondes à partir lorsque le flash a commencé.

import flash.utils.getTimer; 

var myInt:int = getTimer() * 0.001; 

myInt sera maintenant cependant plusieurs secondes le programme a été en cours d'exécution.

éditer: oh pour dire combien de temps il a fonctionné, gardez le myInt initial et vérifiez-le par rapport à la minuterie actuelle.

donc quand le jeu commence.

var startTime:int = getTimer(); 

puis chaque image ou chaque fois que vous avez besoin de le vérifier.

var currentTime:int = getTimer(); 


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

http://help.adobe.com/en_US/as2/reference/flashlite/WS5b3ccc516d4fbf351e63e3d118cd9b5f6e-7a54.html il y a peu d'ambiguïté, je vois dans getTimer de l'EDI retour int documentation en flash dit getTimer renvoie Number. Serait utile de savoir lequel est correct. acclamations – GameDeveloper

+0

la déclaration de fonction dans les en-têtes (bibliothèque) est "public function getTimer(): int", donc il retourne un int. d'ailleurs, ce sont les références d'ActionScript 2 et non celles d'ActionScript 3. http://help.adobe.com/fr_FR/FlashPlatform/reference/actionscript/3/flash/utils/package.html#getTimer() – Feltope

+0

vous m'avez sauvé des headhackes :) – GameDeveloper

1
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(); 
0
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); 
}