diff --git a/NewHorizons/Components/EyeOfTheUniverse/EyeMusicController.cs b/NewHorizons/Components/EyeOfTheUniverse/EyeMusicController.cs index 12a4a386..233b2f4c 100644 --- a/NewHorizons/Components/EyeOfTheUniverse/EyeMusicController.cs +++ b/NewHorizons/Components/EyeOfTheUniverse/EyeMusicController.cs @@ -1,3 +1,4 @@ +using NewHorizons.Utility; using NewHorizons.Utility.OWML; using System.Collections; using System.Collections.Generic; @@ -17,7 +18,7 @@ namespace NewHorizons.Components.EyeOfTheUniverse private bool _isPlaying; private double _segmentEndAudioTime; private float _segmentEndGameTime; - private CosmicInflationController _cosmicInflationController; + public CosmicInflationController CosmicInflationController { get; private set; } public void RegisterLoopSource(OWAudioSource src) { @@ -59,9 +60,9 @@ namespace NewHorizons.Components.EyeOfTheUniverse } // Set quantum sphere inflation timer - var finaleDuration = _cosmicInflationController._travelerFinaleSource.clip.length; - _cosmicInflationController._startFormationTime = Time.time; - _cosmicInflationController._finishFormationTime = finaleGameTime + finaleDuration - 4f; + var finaleDuration = CosmicInflationController._travelerFinaleSource.clip.length; + CosmicInflationController._startFormationTime = Time.time; + CosmicInflationController._finishFormationTime = finaleGameTime + finaleDuration - 4f; // Play finale in sync foreach (var finaleSrc in _finaleSources) @@ -70,9 +71,10 @@ namespace NewHorizons.Components.EyeOfTheUniverse } } - private void Awake() + public void Awake() { - _cosmicInflationController = FindObjectOfType(); + // EOTP makes 2 new CosmicInflationControllers for no reason + CosmicInflationController = SearchUtilities.Find("EyeOfTheUniverse_Body/Sector_EyeOfTheUniverse/Sector_Campfire/InflationController").GetComponent(); } private IEnumerator DoLoop() @@ -126,7 +128,7 @@ namespace NewHorizons.Components.EyeOfTheUniverse } // Wait until the bubble has finished expanding - while (Time.time < _cosmicInflationController._finishFormationTime) + while (Time.time < CosmicInflationController._finishFormationTime) { yield return null; } diff --git a/NewHorizons/Handlers/EyeSceneHandler.cs b/NewHorizons/Handlers/EyeSceneHandler.cs index 7a3a4c1a..1433e9ee 100644 --- a/NewHorizons/Handlers/EyeSceneHandler.cs +++ b/NewHorizons/Handlers/EyeSceneHandler.cs @@ -194,7 +194,7 @@ namespace NewHorizons.Handlers _eyeMusicController = new GameObject("EyeMusicController").AddComponent(); var quantumCampsiteController = Object.FindObjectOfType(); - var cosmicInflationController = Object.FindObjectOfType(); + var cosmicInflationController = _eyeMusicController.CosmicInflationController; _eyeMusicController.RegisterFinaleSource(cosmicInflationController._travelerFinaleSource);