public override void OnStart() { ReduceCounter = new ReduceCounter(15 * 1000); AddProgressBar(ReduceCounter); ReduceCounter.OnFinishedAsync.Subscribe(_ => ParupunteEnd()); StartCoroutine(SwapCoroutine()); _quickCoroutineSystem = new CoroutineSystem(); var d = core.OnTickAsObservable .Subscribe(_ => { _quickCoroutineSystem?.CoroutineLoop(); }); this.OnFinishedAsObservable .Subscribe(_ => { d.Dispose(); _quickCoroutineSystem.RemoveAllCoroutine(); _quickCoroutineSystem = null; }); }