Files
DeltaVR/Assets/_PROJECT/Components/Server room/Alarm Trigger.cs

49 lines
1.1 KiB
C#

using UnityEngine;
using UnityEngine.XR.Content.Interaction;
using FMOD.Studio;
public class AlarmTrigger : MonoBehaviour
{
public XRPushButton PushButton;
private EventInstance AlarmSound;
private FirstPersonOcclusion occlusion;
private void Awake()
{
AlarmSound = AudioManager.Instance.CreateInstance(FMODEvents.Instance.ServerRoomAlarm); //initialise the instance
occlusion = GetComponent<FirstPersonOcclusion>(); //apply occlusion
if (occlusion != null)
{
occlusion.InitialiseWithInstance(AlarmSound);
}
}
void Start()
{
if (PushButton != null)
{
PushButton.onPress.AddListener(OnButtonPressed);
}
}
void OnButtonPressed()
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.ServerRoomButton, PushButton.gameObject); //3d oneshot instance
Debug.Log("Alarm button Pressed!");
AlarmSound.start();
}
void Update()
{
AlarmSound.set3DAttributes(FMODUnity.RuntimeUtils.To3DAttributes(gameObject)); //updating 3d attributes
}
}