计时器事件 TIMER_COMPLETE 未考虑添加的时间

Timer Event TIMER_COMPLETE not taking into account added time

大家好,基本上我有一个主计时器,可以跟踪玩家在游戏结束前还有多长时间。如果计时器完成倒计时,则游戏结束。我也有舞台上的物品以及购买来增加时钟的时间,以便他们可以继续玩。

我遇到的错误是,当玩家向计时器添加更多时间时,它会在文本字段中显示时间已添加并且继续倒计时,但实际上并没有添加更多时间并且仍然结束60 秒后。

可能导致此问题的是下面我当前的代码,谢谢!

在我的构造函数中:

//Count down timer
count = 60; //Count down from Number
tCountDownTimer = new Timer(1000, count);// Timer intervall in ms
updateCountdownTimer();

tCountDownTimer.addEventListener(TimerEvent.TIMER, countdown);//EventListener for intervalls
tCountDownTimer.addEventListener(TimerEvent.TIMER_COMPLETE, countdownComplete);

这是我的 countdown 计时器事件:

private function countdown(e:TimerEvent):void 
{
         //Display Time in a textfield on stage
         updateCountdownTimer();
}

public function updateCountdownTimer():void 
{
        cntDowntxt.countDownTextField.text = String((count) - tCountDownTimer.currentCount); 
}

在一个单独的函数中,当玩家触摸时钟时,这就是我添加更多时间的方式:

count += 10;
updateCountdownTimer();

你能看出我做错了什么吗?

如果您尝试更新 Timer 实例的 repeatCount?

count += 10;
tCountDownTimer.repeatCount = count;
updateCountdownTimer();