Revert "Remove stock planets immediately since we use SearchUtility anyway"

This reverts commit be9df727565364f85e9a6b5d53d06c2e45651d17.
This commit is contained in:
Nick 2023-07-16 16:37:56 -04:00
parent c8f0d9c753
commit db3785f2f4
2 changed files with 10 additions and 3 deletions

View File

@ -32,8 +32,6 @@ namespace NewHorizons.Handlers
public static void Init(List<NewHorizonsBody> bodies) public static void Init(List<NewHorizonsBody> bodies)
{ {
if (Main.SystemDict[Main.Instance.CurrentStarSystem].Config.destroyStockPlanets) PlanetDestructionHandler.RemoveStockPlanets();
Main.FurthestOrbit = 30000; Main.FurthestOrbit = 30000;
_existingBodyDict = new(); _existingBodyDict = new();
@ -137,6 +135,8 @@ namespace NewHorizons.Handlers
SingularityBuilder.PairAllSingularities(); SingularityBuilder.PairAllSingularities();
// Events.FireOnNextUpdate(PlanetDestroyer.RemoveAllProxies); // Events.FireOnNextUpdate(PlanetDestroyer.RemoveAllProxies);
if (Main.SystemDict[Main.Instance.CurrentStarSystem].Config.destroyStockPlanets) PlanetDestructionHandler.RemoveStockPlanets();
} }
public static bool LoadBody(NewHorizonsBody body, bool defaultPrimaryToSun = false) public static bool LoadBody(NewHorizonsBody body, bool defaultPrimaryToSun = false)

View File

@ -54,12 +54,19 @@ namespace NewHorizons.Handlers
public static void RemoveSolarSystem() public static void RemoveSolarSystem()
{ {
// Stop the sun from killing the player
var sunVolumes = SearchUtilities.Find("Sun_Body/Sector_SUN/Volumes_SUN");
sunVolumes.SetActive(false);
foreach (var name in _solarSystemBodies) foreach (var name in _solarSystemBodies)
{ {
var ao = AstroObjectLocator.GetAstroObject(name); var ao = AstroObjectLocator.GetAstroObject(name);
if (ao != null) RemoveBody(ao, false); if (ao != null) Delay.FireInNUpdates(() => RemoveBody(ao, false), 2);
else NHLogger.LogError($"Couldn't find [{name}]"); else NHLogger.LogError($"Couldn't find [{name}]");
} }
// Bring the sun back because why not
Delay.FireInNUpdates(() => { if (Locator.GetAstroObject(AstroObject.Name.Sun).gameObject.activeInHierarchy) { sunVolumes.SetActive(true); } }, 3);
} }
public static void RemoveEyeOfTheUniverse() public static void RemoveEyeOfTheUniverse()