private void TimeCountting(int dTime) { if (IsPause || !IsStarted) { return; } else { } float t = (float)dTime / UpdatesCacher.UPDATE_CACHER_TIME_SCALE; Time += t; if (Time >= TotalTime) { IsTimeCounting = false; if (Repeatable && !ShouldRepeat()) { Completion?.Invoke(); if (IsAutoDispose) { Dispose(); } else { } } else { if (mCancelChecker != default) { CheckCancelInNoRepeats(); } else { TimerPermanent(); } } } else { if (mCancelChecker != default) { CheckCancelInTimeCounting(); } else { } } }
private void TimeCountting(int dTime) { float t = (float)dTime / UpdatesCacher.UPDATE_CACHER_TIME_SCALE; mTime += t; if (mTime >= TotalTime) { IsTimeCounting = false; if (Repeatable) { CheckRepeat(); } else { CheckOnlyOnce(); } Completion?.Invoke(); mTime -= TotalTime; IsTimeCounting = true; } }
/// <summary> /// 设置定时器永久重复的计时器持续新一轮周期所需的值 /// </summary> private void TimerPermanent() { IsTimeCounting = true; Completion?.Invoke(); Time -= TotalTime; }