/// <summary> /// Triggers the corresponding coroutine /// </summary> /// <param name="position"></param> /// <param name="attenuation"></param> protected override void CustomPlayFeedback(Vector3 position, float attenuation = 1.0f) { if (Active) { MMAudioSourceVolumeShakeEvent.Trigger(VolumeTween, Duration, RemapVolumeZero, RemapVolumeOne, RelativeVolume, attenuation, Channel, ResetShakerValuesAfterShake, ResetTargetValuesAfterShake); } }
/// <summary> /// On stop we stop our transition /// </summary> /// <param name="position"></param> /// <param name="feedbacksIntensity"></param> protected override void CustomStopFeedback(Vector3 position, float feedbacksIntensity = 1) { base.CustomStopFeedback(position, feedbacksIntensity); if (Active) { MMAudioSourceVolumeShakeEvent.Trigger(VolumeTween, FeedbackDuration, RemapVolumeZero, RemapVolumeOne, stop: true); } }
/// <summary> /// Triggers the corresponding coroutine /// </summary> /// <param name="position"></param> /// <param name="feedbacksIntensity"></param> protected override void CustomPlayFeedback(Vector3 position, float feedbacksIntensity = 1.0f) { if (Active) { float intensityMultiplier = Timing.ConstantIntensity ? 1f : feedbacksIntensity; MMAudioSourceVolumeShakeEvent.Trigger(VolumeTween, FeedbackDuration, RemapVolumeZero, RemapVolumeOne, RelativeVolume, intensityMultiplier, Channel, ResetShakerValuesAfterShake, ResetTargetValuesAfterShake, NormalPlayDirection); } }
/// <summary> /// On stop we stop our transition /// </summary> /// <param name="position"></param> /// <param name="feedbacksIntensity"></param> protected override void CustomStopFeedback(Vector3 position, float feedbacksIntensity = 1) { if (!Active || !FeedbackTypeAuthorized) { return; } base.CustomStopFeedback(position, feedbacksIntensity); MMAudioSourceVolumeShakeEvent.Trigger(VolumeTween, FeedbackDuration, RemapVolumeZero, RemapVolumeOne, stop: true); }
/// <summary> /// Stops listening for events /// </summary> public override void StopListening() { base.StopListening(); MMAudioSourceVolumeShakeEvent.Unregister(OnMMAudioSourceVolumeShakeEvent); }