diff --git a/NewHorizons/Builder/Props/SignalBuilder.cs b/NewHorizons/Builder/Props/SignalBuilder.cs index 8cc01ef2..c0fe179a 100644 --- a/NewHorizons/Builder/Props/SignalBuilder.cs +++ b/NewHorizons/Builder/Props/SignalBuilder.cs @@ -25,6 +25,8 @@ namespace NewHorizons.Builder.Props public static List QMSignals { get; private set; } public static List CloakedSignals { get; private set; } + public static bool Initialized; + public static void Init() { Logger.LogVerbose($"Initializing SignalBuilder"); @@ -77,6 +79,8 @@ namespace NewHorizons.Builder.Props QMSignals = new List() { SignalName.Quantum_QM }; CloakedSignals = new List(); + + Initialized = true; } public static SignalFrequency AddFrequency(string str) diff --git a/NewHorizons/Patches/AudioSignalPatches.cs b/NewHorizons/Patches/AudioSignalPatches.cs index 4c508b8d..753da307 100644 --- a/NewHorizons/Patches/AudioSignalPatches.cs +++ b/NewHorizons/Patches/AudioSignalPatches.cs @@ -117,6 +117,8 @@ namespace NewHorizons.Patches [HarmonyPatch(typeof(AudioSignal), nameof(AudioSignal.UpdateSignalStrength))] public static bool AudioSignal_UpdateSignalStrength(AudioSignal __instance, Signalscope scope, float distToClosestScopeObstruction) { + if (!SignalBuilder.Initialized) return true; + if (!SignalBuilder.CloakedSignals.Contains(__instance._name) && !SignalBuilder.QMSignals.Contains(__instance._name)) return true; __instance._canBePickedUpByScope = false;