Example #1
0
        /// <summary>
        /// Catches TimeScaleEvents and acts on them
        /// </summary>
        /// <param name="timeScaleEvent">MMTimeScaleEvent event.</param>
        public virtual void OnTimeScaleEvent(MMTimeScaleMethods timeScaleMethod, float timeScale, float duration, bool lerp, float lerpSpeed, bool infinite)
        {
            TimeScaleProperties timeScaleProperty = new TimeScaleProperties();

            timeScaleProperty.TimeScale = timeScale;
            timeScaleProperty.Duration  = duration;
            timeScaleProperty.Lerp      = lerp;
            timeScaleProperty.LerpSpeed = lerpSpeed;
            timeScaleProperty.Infinite  = infinite;

            switch (timeScaleMethod)
            {
            case MMTimeScaleMethods.Reset:
                ResetTimeScale();
                break;

            case MMTimeScaleMethods.For:
                SetTimeScale(timeScaleProperty);
                break;

            case MMTimeScaleMethods.Unfreeze:
                Unfreeze();
                break;
            }
        }
Example #2
0
 public MMTimeScaleEvent(MMTimeScaleMethods timeScaleMethod, float timeScale, float duration, bool lerp, float lerpSpeed, bool infinite)
 {
     TimeScaleMethod             = timeScaleMethod;
     TimeScaleProperty.TimeScale = timeScale;
     TimeScaleProperty.Duration  = duration;
     TimeScaleProperty.Lerp      = lerp;
     TimeScaleProperty.LerpSpeed = lerpSpeed;
     TimeScaleProperty.Infinite  = infinite;
 }
Example #3
0
 public static void Trigger(MMTimeScaleMethods timeScaleMethod, float timeScale, float duration, bool lerp, float lerpSpeed, bool infinite)
 {
     e.TimeScaleMethod             = timeScaleMethod;
     e.TimeScaleProperty.TimeScale = timeScale;
     e.TimeScaleProperty.Duration  = duration;
     e.TimeScaleProperty.Lerp      = lerp;
     e.TimeScaleProperty.LerpSpeed = lerpSpeed;
     e.TimeScaleProperty.Infinite  = infinite;
     MMEventManager.TriggerEvent(e);
 }
Example #4
0
 static public void Trigger(MMTimeScaleMethods timeScaleMethod, float timeScale, float duration, bool lerp, float lerpSpeed, bool infinite)
 {
     OnEvent?.Invoke(timeScaleMethod, timeScale, duration, lerp, lerpSpeed, infinite);
 }