public WaitForSeconds(Coroutine coroutine, double seconds) { this.coroutine = coroutine; TimeoutEvent e = new TimeoutEvent { Key = this }; token = Flow.Bind(e, OnTimeout); TimeFlow.Default.Reserve(e, seconds); }
void OnTimeout(TimeoutEvent e) { Flow.Unbind(token); coroutine.Context = e; coroutine.Continue(); coroutine.Context = null; }