/// <summary> /// When this feedback gets played /// </summary> /// <param name="position"></param> /// <param name="attenuation"></param> protected virtual void TestVibration() { Vector3 position = this.transform.position; switch (HapticMethod) { case HapticMethods.AdvancedPattern: string iOSString = (AHAPFileForIOS == null) ? "" : AHAPFileForIOS.text; long[] androidPattern = (AndroidWaveFormFile == null) ? null : AndroidWaveFormFile.WaveForm.Pattern; int[] androidAmplitude = (AndroidWaveFormFile == null) ? null : AndroidWaveFormFile.WaveForm.Amplitudes; long[] rumblePattern = (RumbleWaveFormFile == null) ? null : RumbleWaveFormFile.WaveForm.Pattern; int[] lowFreqAmplitude = (RumbleWaveFormFile == null) ? null : RumbleWaveFormFile.WaveForm.LowFrequencyAmplitudes; int[] highFreqAmplitude = (RumbleWaveFormFile == null) ? null : RumbleWaveFormFile.WaveForm.HighFrequencyAmplitudes; MMVibrationManager.AdvancedHapticPattern(iOSString, androidPattern, androidAmplitude, AndroidRepeat, rumblePattern, lowFreqAmplitude, highFreqAmplitude, RumbleRepeat, OldIOSFallback, this); break; case HapticMethods.Continuous: StartCoroutine(ContinuousHapticsCoroutine()); break; case HapticMethods.NativePreset: MMVibrationManager.Haptic(HapticType, false, AllowRumble, this); break; case HapticMethods.Transient: MMVibrationManager.TransientHaptic(TransientIntensity, TransientSharpness, AllowRumble, this); break; case HapticMethods.Stop: if (_continuousPlaying) { MMVibrationManager.StopContinuousHaptic(AllowRumble); _continuousPlaying = false; } break; } }
/// <summary> /// Triggers the warning haptic feedback, a heavy then medium vibration on Android, and a warning impact on iOS /// </summary> public virtual void TriggerWarning() { MMVibrationManager.Haptic(HapticTypes.Warning); }
public virtual void LightButton() { MMVibrationManager.Haptic(HapticTypes.LightImpact); ChangeImage(LightSprite); }
public virtual void SoftButton() { MMVibrationManager.Haptic(HapticTypes.SoftImpact); ChangeImage(SoftSprite); }
public virtual void RigidButton() { MMVibrationManager.Haptic(HapticTypes.RigidImpact); ChangeImage(RigidSprite); }
public virtual void TurnHapticsOff() { MMVibrationManager.Haptic(HapticTypes.Warning, false, true, this); MMVibrationManager.SetHapticsActive(false); }
/// <summary> /// Triggers the selection haptic feedback, a light vibration on Android, and a light impact on iOS /// </summary> public virtual void TriggerSelection() { MMVibrationManager.Haptic(HapticTypes.Selection); }
/// <summary> /// Triggers a medium impact on iOS and a medium and regular vibration on Android. /// </summary> public virtual void TriggerMediumImpact() { MMVibrationManager.Haptic(HapticTypes.MediumImpact); }
public virtual void SelectionButton() { MMVibrationManager.Haptic(HapticTypes.Selection); ChangeImage(SelectionSprite); }
public virtual void HeavyButton() { MMVibrationManager.Haptic(HapticTypes.HeavyImpact); ChangeImage(HeavySprite); }
public virtual void MediumButton() { MMVibrationManager.Haptic(HapticTypes.MediumImpact); ChangeImage(MediumSprite); }
public virtual void TurnSoundsOff() { AudioListener.volume = 0f; SoundActive = false; MMVibrationManager.Haptic(HapticTypes.Warning, false, true, this); }
public virtual void TurnSoundsOn() { AudioListener.volume = 1f; SoundActive = true; MMVibrationManager.Haptic(HapticTypes.Success, false, true, this); }
/// <summary> /// Triggers the failure haptic feedback, a medium / heavy / heavy / light vibration pattern on Android, and a failure impact on iOS /// </summary> public virtual void TriggerFailure() { MMVibrationManager.Haptic(HapticTypes.Failure); }
public virtual void SuccessButton() { MMVibrationManager.Haptic(HapticTypes.Success); ChangeImage(SuccessSprite); }
/// <summary> /// Triggers a light impact on iOS and a short and light vibration on Android. /// </summary> public virtual void TriggerLightImpact() { MMVibrationManager.Haptic(HapticTypes.LightImpact); }
public virtual void WarningButton() { MMVibrationManager.Haptic(HapticTypes.Warning); ChangeImage(WarningSprite); }
/// <summary> /// Triggers a heavy impact on iOS and a long and heavy vibration on Android. /// </summary> public virtual void TriggerHeavyImpact() { MMVibrationManager.Haptic(HapticTypes.HeavyImpact); }
public virtual void FailureButton() { MMVibrationManager.Haptic(HapticTypes.Failure); ChangeImage(FailureSprite); }
/// <summary> /// Triggers the success haptic feedback, a light then heavy vibration on Android, and a success impact on iOS /// </summary> public virtual void TriggerSuccess() { MMVibrationManager.Haptic(HapticTypes.Success); }
public virtual void TurnHapticsOn() { MMVibrationManager.SetHapticsActive(true); MMVibrationManager.Haptic(HapticTypes.Success, false, true, this); }