Fix the EOTP ending bug (that pikpik will probably fix in EOTP)

This commit is contained in:
xen-42 2025-02-11 23:26:23 -05:00
parent fa4e95b9b3
commit cb64f79c5d
2 changed files with 10 additions and 8 deletions

View File

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

View File

@ -194,7 +194,7 @@ namespace NewHorizons.Handlers
_eyeMusicController = new GameObject("EyeMusicController").AddComponent<EyeMusicController>(); _eyeMusicController = new GameObject("EyeMusicController").AddComponent<EyeMusicController>();
var quantumCampsiteController = Object.FindObjectOfType<QuantumCampsiteController>(); var quantumCampsiteController = Object.FindObjectOfType<QuantumCampsiteController>();
var cosmicInflationController = Object.FindObjectOfType<CosmicInflationController>(); var cosmicInflationController = _eyeMusicController.CosmicInflationController;
_eyeMusicController.RegisterFinaleSource(cosmicInflationController._travelerFinaleSource); _eyeMusicController.RegisterFinaleSource(cosmicInflationController._travelerFinaleSource);