PDA

Просмотр полной версии : Таймер в EnterFrame


Alexey25
25.05.2016, 08:17
Пытаюсь сделать таймер в EnterFrame по секундам при щелчке кнопкой мыши срабатывает EnterFrame, где идет отсчет времени. Через 7 секунд функция отключается.


var fire = false;
var sec = 0;

function init()
{
q = getTimer();
onMouseDown = function ()
{
fire = true;
}

onEnterFrame = function ()
{
if(fire)
{
sec = Math.floor((getTimer() - q) / 1000);
}
trace(sec);
if(sec >= 7)
{
fire = false;
sec = 0;
}
}
}
init();


Когда щелкаешь в начале все работает нормально, но если при тестировании щелкнуть не в начале а через несколько секунд то отcчет идет уже не с нуля как обычно а через 2 секунды например. Как исправить так, чтобы отсчет шел всегда с нуля, какой бы задержка не была.

P.S. setInterval не предлагать мне нужно именно через enterFrame.

dark256
25.05.2016, 09:25
var fire = false;
var sec = 0;

function init(){

var q = 0

onMouseDown = function (){
fire = true;
q = getTimer();
}

onEnterFrame = function (){
if(fire){
sec = Math.floor((getTimer() - q) / 1000);
}
TMT.text = sec

if(sec >= 7){
fire = false;
sec = 0;
}
}
}
init();

Alexey25
25.05.2016, 10:18
Спасибо, все работает.