public void Stop(TweenCompletion completion) { if (completion == TweenCompletion.Complete) { Setter(To); ElapsedTicks = DurationInTicks; } else if (completion == TweenCompletion.Rewind) { Setter(From); ElapsedTicks = 0; } _tcs.TrySetResult(null); _gameEvents.OnRepeatedlyExecute.Unsubscribe(onRepeatedlyExecute); }