public Tween(_updateBehaviour p_updateBehaviour, Ch3EasingFunctionDelegate p_easingFunction, double p_duration) { _updateBehaviour = p_updateBehaviour; _timeStamp = Ch3TimeManager.CreateTimeStamp(); _easingFunction = p_easingFunction; _duration = p_duration == 0 ? double.Epsilon : p_duration; _lastStep = false; _isActive = false; }
public static void TweenTimeScale(Ch3EasingFunctionDelegate p_easingFunction, double p_from, double p_to, double p_duration) { stopTimeScaleTween(); UnityEngine.Time.timeScale = (float)p_from; _timeScaleTween = Ch3TweenManager.CreateTween(p_easingFunction, p_duration).OnStep((double p_value) => { UnityEngine.Time.timeScale = (float)(p_from + (p_to - p_from) * p_value); }).OnFinish((double p_value) => { UnityEngine.Time.timeScale = (float)p_to; }).Start(); }
public static ITween CreateTween(Ch3EasingFunctionDelegate p_easingFunction, double p_duration) { return(new Tween(updateBehaviour, p_easingFunction, p_duration)); }