private void FadeOut() { if (state != State.FadedIn) { return; } state = State.FadingOut; //Callback.Lerp(1, 0, _fadeTime, //(val) => //{ // Device.instance.brightness = val; //}, //() => //{ // state = State.FadedOut; //}); CallbackManager.InvokeUntil(() => { implant.brightness = Mathf.Max(implant.brightness - Time.deltaTime / _fadeTime, 0); return(implant.brightness > 0); }, () => { state = State.FadedOut; }); }
private void FadeIn() { if (state != State.FadedOut) { return; } state = State.FadingIn; //Callback.Lerp(0, 1, _fadeTime, //(val) => { // Device.instance.brightness = val; //}, //() => { // state = State.FadedIn; // startTime = Time.time; //}); CallbackManager.InvokeUntil(() => { implant.brightness = Mathf.Min(implant.brightness + Time.deltaTime / _fadeTime, 1); return(implant.brightness < 1); }, () => { state = State.FadedIn; startTime = Time.time; }); }