//TYETODO: add Fade out option public static void EndTimeRequest(TimeRequestHandle trh, float fadeOutDuration = 0f) { if (trh.context == null) return; if (requestList.Contains(trh)) { if (fadeOutDuration <= 0f) { requestList.Remove(trh); trh.context = null; EvaluateRequests(); } else { trh.scaleType = ScaleType.Linear; trh.t = 0f; trh.fadingIn = false; trh.fadeDuration = fadeOutDuration; } } else { Debug.LogError("TimeManager.EndTimeRequest: cannot end the passed request, it's not in the list!?"); } }
public static TimeRequestHandle RequestTimeScale(float timeScale, Object context, ScaleType scaleType, float fadeInDuration) { if (context == null) { Debug.LogError("TimeManager:RequestTimeScale: context was null, ignoring request!"); return null; } TimeRequestHandle trh = new TimeRequestHandle(timeScale, context, scaleType, fadeInDuration); requestList.Add(trh); EvaluateRequests(); return trh; }