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

Код AS1/AS2:
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.