Мне тоже интересно. Я не волшебник, я только учусь... и как я понимаю, если мы поставим таймер на 1 секунду, то наш прощет сцены будет ТОЛЬКО раз в секунду?
В общем...вот как у меня было сделано(до того как я создал эту тему)
Код AS3:
/*************************************************************/
/* Функция frameFunc() вызывается каждый раз когда присходит событие ENTER_FRAME. В этой */
/* функции выполняются расчеты для всех объектов - координаты, номер текущего кадра и т.д. */
/* Таким образом, у каждого не статичного объекта должна быть функция Update(dt) */
/*******************************************************************************/
private function frameFunc(e:Event):void {
var dt:Number = getTimeDelta();
switch(gameStage)
{
case GAME_INIT:
// Тут объекты со своими Update(deltaTime);
break;
case GAME_START:
// Тут объекты со своими Update(deltaTime);
break;
case GAME_OVER:
// Тут объекты со своими Update(deltaTime);
break;
default:
break;
}
sceneBuilder();
}
private function sceneBuilder():void {
switch(gameStage)
{
case GAME_INIT:
break;
case GAME_START:
break;
case GAME_OVER:
break;
default:
break;
}
}
private function getTimeDelta():Number {
now = getTimer();
deltaTime = now - lastFrameTime;
lastFrameTime = now;
return deltaTime;
}