/// <summary> /// On play we trigger the selected fade event /// </summary> /// <param name="position"></param> /// <param name="feedbacksIntensity"></param> protected override void CustomPlayFeedback(Vector3 position, float feedbacksIntensity = 1.0f) { if (Active) { _position = GetPosition(position); _fadeType = FadeType; if (!NormalPlayDirection) { if (FadeType == FadeTypes.FadeIn) { _fadeType = FadeTypes.FadeOut; } else if (FadeType == FadeTypes.FadeOut) { _fadeType = FadeTypes.FadeIn; } } switch (_fadeType) { case FadeTypes.Custom: MMFadeEvent.Trigger(FeedbackDuration, TargetAlpha, Curve, ID, IgnoreTimeScale, _position); break; case FadeTypes.FadeIn: MMFadeInEvent.Trigger(FeedbackDuration, Curve, ID, IgnoreTimeScale, _position); break; case FadeTypes.FadeOut: MMFadeOutEvent.Trigger(FeedbackDuration, Curve, ID, IgnoreTimeScale, _position); break; } } }
/// <summary> /// Opens the popup /// </summary> public virtual void Open() { if (CurrentlyOpen) { return; } MMFadeEvent.Trigger(FaderOpenDuration, FaderOpacity); _animator.SetTrigger("Open"); CurrentlyOpen = true; }
/// <summary> /// Closes the popup /// </summary> public virtual void Close() { if (!CurrentlyOpen) { return; } MMFadeEvent.Trigger(FaderCloseDuration, 0f); _animator.SetTrigger("Close"); CurrentlyOpen = false; }
/// <summary> /// On play we trigger the selected fade event /// </summary> /// <param name="position"></param> /// <param name="attenuation"></param> protected override void CustomPlayFeedback(Vector3 position, float attenuation = 1.0f) { if (Active) { _position = GetPosition(position); switch (FadeType) { case FadeTypes.Custom: MMFadeEvent.Trigger(Duration, TargetAlpha, Curve, ID, IgnoreTimeScale, _position); break; case FadeTypes.FadeIn: MMFadeInEvent.Trigger(Duration, Curve, ID, IgnoreTimeScale, _position); break; case FadeTypes.FadeOut: MMFadeOutEvent.Trigger(Duration, Curve, ID, IgnoreTimeScale, _position); break; } } }