Beispiel #1
0
        /// <summary>
        /// On play we trigger a one time or ToDestination play on our target float controller
        /// </summary>
        /// <param name="position"></param>
        /// <param name="feedbacksIntensity"></param>
        protected override void CustomPlayFeedback(Vector3 position, float feedbacksIntensity = 1.0f)
        {
            if (Active && (TargetFloatController != null))
            {
                float intensityMultiplier = Timing.ConstantIntensity ? 1f : feedbacksIntensity;
                TargetFloatController.RevertToInitialValueAfterEnd = RevertToInitialValueAfterEnd;

                if (Mode == Modes.OneTime)
                {
                    TargetFloatController.OneTimeDuration  = FeedbackDuration;
                    TargetFloatController.OneTimeAmplitude = OneTimeAmplitude;
                    TargetFloatController.OneTimeCurve     = OneTimeCurve;
                    if (NormalPlayDirection)
                    {
                        TargetFloatController.OneTimeRemapMin = OneTimeRemapMin * intensityMultiplier;
                        TargetFloatController.OneTimeRemapMax = OneTimeRemapMax * intensityMultiplier;
                    }
                    else
                    {
                        TargetFloatController.OneTimeRemapMin = OneTimeRemapMax * intensityMultiplier;
                        TargetFloatController.OneTimeRemapMax = OneTimeRemapMin * intensityMultiplier;
                    }
                    TargetFloatController.OneTime();
                }
                if (Mode == Modes.ToDestination)
                {
                    TargetFloatController.ToDestinationCurve    = ToDestinationCurve;
                    TargetFloatController.ToDestinationDuration = FeedbackDuration;
                    TargetFloatController.ToDestinationValue    = ToDestinationValue;
                    TargetFloatController.ToDestination();
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// On play we make our renderer flicker
        /// </summary>
        /// <param name="position"></param>
        /// <param name="attenuation"></param>
        protected override void CustomPlayFeedback(Vector3 position, float attenuation = 1.0f)
        {
            if (Active && (TargetFloatController != null))
            {
                TargetFloatController.RevertToInitialValueAfterEnd = RevertToInitialValueAfterEnd;

                if (Mode == Modes.OneTime)
                {
                    TargetFloatController.OneTimeDuration  = OneTimeDuration;
                    TargetFloatController.OneTimeAmplitude = OneTimeAmplitude;
                    TargetFloatController.OneTimeCurve     = OneTimeCurve;
                    TargetFloatController.OneTimeRemapMin  = OneTimeRemapMin;
                    TargetFloatController.OneTimeRemapMax  = OneTimeRemapMax;
                    TargetFloatController.OneTime();
                }
                if (Mode == Modes.ToDestination)
                {
                    TargetFloatController.ToDestinationCurve    = ToDestinationCurve;
                    TargetFloatController.ToDestinationDuration = ToDestinationDuration;
                    TargetFloatController.ToDestinationValue    = ToDestinationValue;
                    TargetFloatController.ToDestination();
                }
            }
        }