more comments

This commit is contained in:
Noah Pilarski 2025-02-15 02:53:23 -05:00
parent aa0939631d
commit 5f47e3b2ec

View File

@ -29,10 +29,13 @@ namespace NewHorizons.Handlers
var scene = SearchUtilities.Find("Scene"); var scene = SearchUtilities.Find("Scene");
var background = SearchUtilities.Find("Scene/Background"); var background = SearchUtilities.Find("Scene/Background");
var planetPivot = SearchUtilities.Find("Scene/Background/PlanetPivot"); var planetPivot = SearchUtilities.Find("Scene/Background/PlanetPivot");
// Add fake sectors for ocean water component support
scene.AddComponent<FakeSector>(); scene.AddComponent<FakeSector>();
background.AddComponent<FakeSector>(); background.AddComponent<FakeSector>();
planetPivot.AddComponent<FakeSector>(); planetPivot.AddComponent<FakeSector>();
// parent ambient light and campfire to the root (idk why they aren't parented in the first place mobius)
var planetRoot = SearchUtilities.Find("Scene/Background/PlanetPivot/PlanetRoot"); var planetRoot = SearchUtilities.Find("Scene/Background/PlanetPivot/PlanetRoot");
var campfire = SearchUtilities.Find("Scene/Background/PlanetPivot/Prefab_HEA_Campfire"); var campfire = SearchUtilities.Find("Scene/Background/PlanetPivot/Prefab_HEA_Campfire");
campfire.transform.SetParent(planetRoot.transform, true); campfire.transform.SetParent(planetRoot.transform, true);
@ -47,24 +50,27 @@ namespace NewHorizons.Handlers
var profileManager = StandaloneProfileManager.SharedInstance; var profileManager = StandaloneProfileManager.SharedInstance;
profileManager.PreInitialize(); profileManager.PreInitialize();
profileManager.Initialize(); profileManager.Initialize();
if (profileManager.currentProfile != null) if (profileManager.currentProfile != null) // check if there is even a profile made yet
PlayerData.Init(profileManager.currentProfileGameSave, PlayerData.Init(profileManager.currentProfileGameSave,
profileManager.currentProfileGameSettings, profileManager.currentProfileGameSettings,
profileManager.currentProfileGraphicsSettings, profileManager.currentProfileGraphicsSettings,
profileManager.currentProfileInputJSON); profileManager.currentProfileInputJSON);
// Grab configs and handlers and merge them into one list
var validBuilders = Main.TitleScreenConfigs.Select(kvp => (ITitleScreenBuilder)new TitleScreenConfigBuilder(kvp.Key, kvp.Value)) var validBuilders = Main.TitleScreenConfigs.Select(kvp => (ITitleScreenBuilder)new TitleScreenConfigBuilder(kvp.Key, kvp.Value))
.Concat(TitleScreenBuilders.Select(kvp => (ITitleScreenBuilder)kvp.Value)) .Concat(TitleScreenBuilders.Select(kvp => (ITitleScreenBuilder)kvp.Value))
.Where(builder => builder.KnowsFact() && builder.HasCondition()).ToList(); .Where(builder => builder.KnowsFact() && builder.HasCondition()).ToList();
var hasNHPlanets = eligibleCount != 0; var hasNHPlanets = eligibleCount != 0;
// Get random index for the main builder
var index = UnityEngine.Random.Range(0, validBuilders.Count()); var index = UnityEngine.Random.Range(0, validBuilders.Count());
var randomBuilder = validBuilders.ElementAtOrDefault(index); var randomBuilder = validBuilders.ElementAtOrDefault(index);
if (randomBuilder != null) if (randomBuilder != null)
{ {
validBuilders.RemoveAt(index); validBuilders.RemoveAt(index);
// display nh planets if not disabled
if (!randomBuilder.DisableNHPlanets) if (!randomBuilder.DisableNHPlanets)
{ {
DisplayBodiesOnTitleScreen(); DisplayBodiesOnTitleScreen();
@ -72,14 +78,17 @@ namespace NewHorizons.Handlers
randomBuilder.Build(); randomBuilder.Build();
// if it can share build extras
if (randomBuilder.CanShare) if (randomBuilder.CanShare)
{ {
// only build the ones that also can share and have the same value for disabling nh planet (if there is any nh planets)
foreach (var builder in validBuilders.Where(builder => builder.CanShare && (hasNHPlanets ? builder.DisableNHPlanets == randomBuilder.DisableNHPlanets : true))) foreach (var builder in validBuilders.Where(builder => builder.CanShare && (hasNHPlanets ? builder.DisableNHPlanets == randomBuilder.DisableNHPlanets : true)))
{ {
builder.Build(); builder.Build();
} }
} }
} }
// default to displaying nh planets if no title screen builders
else else
DisplayBodiesOnTitleScreen(); DisplayBodiesOnTitleScreen();
} }
@ -172,7 +181,7 @@ namespace NewHorizons.Handlers
} }
var rotator = menuPlanet.GetComponent<RotateTransform>(); var rotator = menuPlanet.GetComponent<RotateTransform>();
rotator._localAxis = Vector3.up; rotator._localAxis = Vector3.up; // fix axis (because there is no reason for it to be negative when degrees were also negative)
rotator._degreesPerSecond = config.MenuPlanet.rotationSpeed; rotator._degreesPerSecond = config.MenuPlanet.rotationSpeed;
if (config.MenuPlanet.destroyMenuPlanet) if (config.MenuPlanet.destroyMenuPlanet)