diff --git a/Assets/_PROJECT/Components/Bolt/Intercation Logic/Car Driving Routine.cs b/Assets/_PROJECT/Components/Bolt/Intercation Logic/Car Driving Routine.cs index 25d92e2a..29d6fdd0 100644 --- a/Assets/_PROJECT/Components/Bolt/Intercation Logic/Car Driving Routine.cs +++ b/Assets/_PROJECT/Components/Bolt/Intercation Logic/Car Driving Routine.cs @@ -27,7 +27,7 @@ public class CarDrivingRoutine : NetworkBehaviour private EventInstance CarMovement; - + private FirstPersonOcclusion occlusion; private void Awake() { @@ -41,6 +41,13 @@ public class CarDrivingRoutine : NetworkBehaviour CarMovement.setParameterByName("EasyBoltLogic", 0); //"Driving - 0 in FMOD" CarMovement.set3DAttributes(FMODUnity.RuntimeUtils.To3DAttributes(gameObject)); //setting 3d attributes + occlusion = GetComponent(); + + if (occlusion != null) + { + occlusion.InitialiseWithInstance(CarMovement); + } + } private void Start() { diff --git a/Assets/_PROJECT/Components/Elevator/Scripts/Elevator outer.cs b/Assets/_PROJECT/Components/Elevator/Scripts/Elevator outer.cs index 6c132de4..27c88b78 100644 --- a/Assets/_PROJECT/Components/Elevator/Scripts/Elevator outer.cs +++ b/Assets/_PROJECT/Components/Elevator/Scripts/Elevator outer.cs @@ -3,6 +3,7 @@ using System.Collections; using System.Collections.Generic; using Unity.XR.CoreUtils; using UnityEngine; +using FMOD.Studio; public class ElevatorOuter : NetworkBehaviour { @@ -25,10 +26,24 @@ public class ElevatorOuter : NetworkBehaviour public ElevatorStatusPlate statusPlate; public AudioSource arrivalBeeper; + private EventInstance arrivalBeep; + private FirstPersonOcclusion occlusion; + private void Start() { doorOpenTime = box.doorOpenTime; doorCloseTime = box.doorCloseTime; + + arrivalBeep = AudioManager.Instance.CreateInstance(FMODEvents.Instance.ElevatorArrival); //initialising the variable + arrivalBeep.set3DAttributes(FMODUnity.RuntimeUtils.To3DAttributes(gameObject)); //setting 3d attributes + + occlusion = GetComponent(); + + if (occlusion != null) + { + occlusion.InitialiseWithInstance(arrivalBeep); + } + } private void OnTriggerEnter(Collider other) { @@ -77,6 +92,11 @@ public class ElevatorOuter : NetworkBehaviour Debug.Log("Outer Doors moved"); } + void Update() + { + arrivalBeep.set3DAttributes(FMODUnity.RuntimeUtils.To3DAttributes(gameObject)); //updating the attributes + } + } diff --git a/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Floor Button Visualizer.cs b/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Floor Button Visualizer.cs index f8883bfe..aba416e6 100644 --- a/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Floor Button Visualizer.cs +++ b/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Floor Button Visualizer.cs @@ -23,15 +23,15 @@ public class FloorButtonVisualizer : MonoBehaviour { this.ActiveState = true; buttonImage.sprite = ActiveSprite; - + AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.Hover, gameObject); // --- Only play hover if selection actually changed --- - if (initialized && lastActiveButton != this) - { - AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.Hover, gameObject); - } + //if (initialized && lastActiveButton != this) + //{ + // AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.Hover, gameObject); + //} - lastActiveButton = this; - initialized = true; + //lastActiveButton = this; + //initialized = true; } public void Deactivate() diff --git a/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Menu Teleport Button.cs b/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Menu Teleport Button.cs index 70273c6b..48863029 100644 --- a/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Menu Teleport Button.cs +++ b/Assets/_PROJECT/Components/NewHandPresence/Prefabs/Scripts/Menu Teleport Button.cs @@ -1,13 +1,14 @@ +using FMOD.Studio; +using FMODUnity; using System; using System.Collections; using System.Collections.Generic; using Unity.XR.CoreUtils; using UnityEngine; +using UnityEngine.EventSystems; using UnityEngine.Rendering; using UnityEngine.UI; using UnityEngine.XR.Interaction.Toolkit; -using FMOD.Studio; -using FMODUnity; public class MenuTeleportButton : MonoBehaviour { @@ -28,6 +29,10 @@ public class MenuTeleportButton : MonoBehaviour private static MenuTeleportButton lastSelectedButton = null; private static bool initialized = false; + // External state: map must be held/visible + public static bool MapIsOpen = false; + private Menu menu; + private void Awake() { TeleportingSound = AudioManager.Instance.CreateInstance(FMODEvents.Instance.Teleport); //initialise the instance @@ -39,6 +44,7 @@ public class MenuTeleportButton : MonoBehaviour void Start() { button = GetComponent