public void HandleGameUpdate() { if (this.frameCounter >= TimerManager.FrameUpdateFreq) { this.frameCounter = 0; for (int i = 0; i < this.RunningTimers.Count; i++) { TimerBase abstractTimer = this.RunningTimers[i]; abstractTimer.Update(TimerManager.FrameUpdateFreq); if (abstractTimer.IsExpired()) { if (this.InvokeTimerCallback(abstractTimer)) { abstractTimer.Reset(); } else { this.RunningTimers.RemoveAt(i--); } } } } this.frameCounter++; }
public void StartTimer(TimerBase timer) { if (!this.IsTimerRunning(timer)) { this.RunningTimers.Add(timer); timer.Reset(); } }
public void StartOrResetTimer(TimerBase timer) { if (this.IsTimerRunning(timer)) { timer.Reset(); } else { this.AddTimer(timer); } }
public void StartTimer(TimerBase timer) { if (!this.IsTimerRunning(timer)) { timer.Reset(); this.AddTimer(timer); } }
public void StartOrResetTimer(TimerBase timer) { if (this.IsTimerRunning(timer)) timer.Reset(); else this.AddTimer(timer); }