Files
ZeroVR/ZeroPacientVR/Assets/HurricaneVR/Framework/Scripts/Weapons/HVRGunSounds.cs
T

52 lines
1.3 KiB
C#

using FMODUnity;
using UnityEngine;
namespace HurricaneVR.Framework.Weapons
{
public class HVRGunSounds : MonoBehaviour
{
[SerializeField] private EventReference fired;
[SerializeField] private EventReference outOfAmmo;
[SerializeField] private EventReference slideBack;
[SerializeField] private EventReference slideForward;
[SerializeField] private EventReference loadMagazine;
[SerializeField] private EventReference unloadMagazine;
public virtual void PlayGunFire()
{
PlayClip(fired);
}
public virtual void PlayOutOfAmmo()
{
PlayClip(outOfAmmo);
}
public virtual void PlaySlideForward()
{
PlayClip(slideForward);
}
public virtual void PlaySlideBack()
{
PlayClip(slideBack);
}
public virtual void PlayLoadMagazine()
{
PlayClip(loadMagazine);
}
public virtual void PlayUnloadMagazine()
{
PlayClip(unloadMagazine);
}
protected virtual void PlayClip(EventReference clip)
{
if (clip.IsNull) return;
RuntimeManager.PlayOneShot(clip.Guid, transform.position);
}
}
}