mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
Scene stuff
This commit is contained in:
parent
da6c7b79a1
commit
fda39ad79e
@ -13,24 +13,26 @@ namespace NewHorizons.Patches
|
|||||||
return Main.Instance.CurrentStarSystem != "EyeOfTheUniverse" || deathType == DeathType.BigBang;
|
return Main.Instance.CurrentStarSystem != "EyeOfTheUniverse" || deathType == DeathType.BigBang;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void SwitchToDefaultIfAtEyeGoingToSS(OWScene scene)
|
private static void OnLoadScene(OWScene scene)
|
||||||
{
|
{
|
||||||
// Switch to default just in case another mod warps back.
|
|
||||||
if (scene == OWScene.SolarSystem)
|
if (scene == OWScene.SolarSystem)
|
||||||
{
|
{
|
||||||
PlayerData.SaveEyeCompletion();
|
PlayerData.SaveEyeCompletion();
|
||||||
|
|
||||||
|
// Switch to default just in case another mod warps back.
|
||||||
if (Main.Instance.CurrentStarSystem == "EyeOfTheUniverse") Main.Instance._currentStarSystem = Main.Instance.DefaultStarSystem;
|
if (Main.Instance.CurrentStarSystem == "EyeOfTheUniverse") Main.Instance._currentStarSystem = Main.Instance.DefaultStarSystem;
|
||||||
}
|
}
|
||||||
|
// Switch to eye just in case another mod warps there.
|
||||||
|
else if (scene == OWScene.EyeOfTheUniverse) Main.Instance._currentStarSystem = "EyeOfTheUniverse";
|
||||||
}
|
}
|
||||||
|
|
||||||
[HarmonyPrefix]
|
[HarmonyPrefix]
|
||||||
[HarmonyPatch(typeof(LoadManager), nameof(LoadManager.LoadSceneImmediate))]
|
[HarmonyPatch(typeof(LoadManager), nameof(LoadManager.LoadSceneImmediate))]
|
||||||
public static void LoadManager_LoadSceneImmediate(OWScene scene) => SwitchToDefaultIfAtEyeGoingToSS(scene);
|
public static void LoadManager_LoadSceneImmediate(OWScene scene) => OnLoadScene(scene);
|
||||||
|
|
||||||
[HarmonyPrefix]
|
[HarmonyPrefix]
|
||||||
[HarmonyPatch(typeof(LoadManager), nameof(LoadManager.StartAsyncSceneLoad))]
|
[HarmonyPatch(typeof(LoadManager), nameof(LoadManager.StartAsyncSceneLoad))]
|
||||||
public static void LoadManager_StartAsyncSceneLoad(OWScene scene) => SwitchToDefaultIfAtEyeGoingToSS(scene);
|
public static void LoadManager_StartAsyncSceneLoad(OWScene scene) => OnLoadScene(scene);
|
||||||
|
|
||||||
[HarmonyPrefix]
|
[HarmonyPrefix]
|
||||||
[HarmonyPatch(typeof(SubmitActionLoadScene), nameof(SubmitActionLoadScene.ConfirmSubmit))]
|
[HarmonyPatch(typeof(SubmitActionLoadScene), nameof(SubmitActionLoadScene.ConfirmSubmit))]
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user