public void Reset() { IsDisposed = false; IsEnabled = true; _elapsed = 0; }
protected virtual void Tick(Timer timer) { timer.Reset(); CurrentFrame++; if (CurrentFrame >= FrameCount) { CurrentFrame = 0; OnComplete?.Invoke(); } Index = CurrentFrame; }