mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
patch forget frequency
This commit is contained in:
parent
839780843d
commit
cb08f4710d
10
NewHorizons/External/NewHorizonsData.cs
vendored
10
NewHorizons/External/NewHorizonsData.cs
vendored
@ -128,6 +128,16 @@ namespace NewHorizons.External
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void ForgetFrequency(string frequency)
|
||||||
|
{
|
||||||
|
if (_activeProfile == null) return;
|
||||||
|
if (KnowsFrequency(frequency))
|
||||||
|
{
|
||||||
|
_activeProfile.KnownFrequencies.Remove(frequency);
|
||||||
|
Save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static bool KnowsMultipleFrequencies()
|
public static bool KnowsMultipleFrequencies()
|
||||||
{
|
{
|
||||||
return _activeProfile != null && _activeProfile.KnownFrequencies.Count > 0;
|
return _activeProfile != null && _activeProfile.KnownFrequencies.Count > 0;
|
||||||
|
|||||||
@ -40,6 +40,19 @@ namespace NewHorizons.Patches.PlayerPatches
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HarmonyPrefix]
|
||||||
|
[HarmonyPatch(nameof(PlayerData.ForgetFrequency))]
|
||||||
|
public static bool PlayerData_ForgetFrequency(SignalFrequency frequency)
|
||||||
|
{
|
||||||
|
var freqString = SignalBuilder.GetCustomFrequencyName(frequency);
|
||||||
|
if (!string.IsNullOrEmpty(freqString))
|
||||||
|
{
|
||||||
|
NewHorizonsData.ForgetFrequency(freqString);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
[HarmonyPrefix]
|
[HarmonyPrefix]
|
||||||
[HarmonyPatch(nameof(PlayerData.KnowsSignal))]
|
[HarmonyPatch(nameof(PlayerData.KnowsSignal))]
|
||||||
public static bool PlayerData_KnowsSignal(SignalName signalName, ref bool __result)
|
public static bool PlayerData_KnowsSignal(SignalName signalName, ref bool __result)
|
||||||
@ -59,12 +72,8 @@ namespace NewHorizons.Patches.PlayerPatches
|
|||||||
{
|
{
|
||||||
var customSignalName = SignalBuilder.GetCustomSignalName(signalName);
|
var customSignalName = SignalBuilder.GetCustomSignalName(signalName);
|
||||||
if (!string.IsNullOrEmpty(customSignalName))
|
if (!string.IsNullOrEmpty(customSignalName))
|
||||||
{
|
|
||||||
if (!NewHorizonsData.KnowsSignal(customSignalName))
|
|
||||||
{
|
{
|
||||||
NewHorizonsData.LearnSignal(customSignalName);
|
NewHorizonsData.LearnSignal(customSignalName);
|
||||||
}
|
|
||||||
|
|
||||||
AchievementHandler.OnLearnSignal();
|
AchievementHandler.OnLearnSignal();
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user