Add a prefab for ambient light too

This commit is contained in:
Noah Pilarski 2022-10-08 15:59:04 -04:00
parent 39dba583b0
commit fb12317c9c
2 changed files with 10 additions and 3 deletions

View File

@ -4,12 +4,18 @@ namespace NewHorizons.Builder.General
{ {
public static class AmbientLightBuilder public static class AmbientLightBuilder
{ {
private static GameObject _ambientLightPrefab;
internal static void InitPrefab()
{
if (_ambientLightPrefab == null) _ambientLightPrefab = SearchUtilities.Find("QuantumMoon_Body/AmbientLight_QM").InstantiateInactive().Rename("Prefab_QM_AmbientLight").DontDestroyOnLoad();
}
public static Light Make(GameObject planetGO, Sector sector, float scale, float intensity) public static Light Make(GameObject planetGO, Sector sector, float scale, float intensity)
{ {
var ambientLight = Main.Instance.CurrentStarSystem == "EyeOfTheUniverse" ? SearchUtilities.Find("EyeOfTheUniverse_Body/Sector_EyeOfTheUniverse/SixthPlanet_Root/QuantumMoonProxy_Pivot/QuantumMoonProxy_Root/MoonState_Root/AmbientLight_QM") : SearchUtilities.Find("QuantumMoon_Body/AmbientLight_QM"); InitPrefab();
if (ambientLight == null) return null;
GameObject lightGO = GameObject.Instantiate(ambientLight, sector?.transform ?? planetGO.transform); GameObject lightGO = GameObject.Instantiate(_ambientLightPrefab, sector?.transform ?? planetGO.transform);
lightGO.transform.position = planetGO.transform.position; lightGO.transform.position = planetGO.transform.position;
lightGO.name = "AmbientLight"; lightGO.name = "AmbientLight";

View File

@ -268,6 +268,7 @@ namespace NewHorizons
{ {
try try
{ {
AmbientLightBuilder.InitPrefab();
AtmosphereBuilder.InitPrefabs(); AtmosphereBuilder.InitPrefabs();
BrambleDimensionBuilder.InitPrefabs(); BrambleDimensionBuilder.InitPrefabs();
BrambleNodeBuilder.InitPrefabs(); BrambleNodeBuilder.InitPrefabs();