From e2f7d8a05b060f2cffc458c5660750a193a27fab Mon Sep 17 00:00:00 2001 From: TerrificTrifid <99054745+TerrificTrifid@users.noreply.github.com> Date: Mon, 12 Dec 2022 21:53:35 -0600 Subject: [PATCH 1/2] Foglight tweaks --- NewHorizons/Builder/Props/BrambleNodeBuilder.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/NewHorizons/Builder/Props/BrambleNodeBuilder.cs b/NewHorizons/Builder/Props/BrambleNodeBuilder.cs index 83a657e8..e227cb02 100644 --- a/NewHorizons/Builder/Props/BrambleNodeBuilder.cs +++ b/NewHorizons/Builder/Props/BrambleNodeBuilder.cs @@ -250,12 +250,13 @@ namespace NewHorizons.Builder.Props brambleNode.FindChild("Prefab_SeedPunctureVolume (2)").GetComponent().enabled = true; fogLight._maxVisibleDistance = float.PositiveInfinity; // Prefab does have working foglight aside from this fogLight._minVisibleDistance *= config.scale / 15f; + fogLight._occlusionRange = 175f; } else { brambleNode.FindChild("Effects/PointLight_DB_FogLight").GetComponent().range *= config.scale; brambleNode.FindChild("Effects/FogOverrideVolume").GetComponent().blendDistance *= config.scale; - fogLight._minVisibleDistance *= config.scale; + //fogLight._minVisibleDistance *= config.scale; // Seed fog works differently, so it doesn't need to be fixed // (it's also located on a different child path, so the below FindChild calls wouldn't work) From 3ca471fa93d592289eecd8a0080a5f9e421c888b Mon Sep 17 00:00:00 2001 From: TerrificTrifid <99054745+TerrificTrifid@users.noreply.github.com> Date: Mon, 12 Dec 2022 23:06:19 -0600 Subject: [PATCH 2/2] Fix foglight data --- .../Builder/Props/BrambleNodeBuilder.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/NewHorizons/Builder/Props/BrambleNodeBuilder.cs b/NewHorizons/Builder/Props/BrambleNodeBuilder.cs index e227cb02..56114146 100644 --- a/NewHorizons/Builder/Props/BrambleNodeBuilder.cs +++ b/NewHorizons/Builder/Props/BrambleNodeBuilder.cs @@ -334,6 +334,24 @@ namespace NewHorizons.Builder.Props SetNodeColors(brambleNode, fogTint, farFogTint, fogLightTint, lightTint, lightShaftTint, glowTint, fogOverrideTint); } + + // Redo the foglight data after everything is colored + if (fogLight._linkedFogLights != null) + { + Delay.FireOnNextUpdate(() => + { + FogLightManager fogLightManager = Locator.GetFogLightManager(); + fogLight._linkedLightData.Clear(); + for (int i = 0; i < fogLight._linkedFogLights.Count; i++) + { + FogLight.LightData lightData = new FogLight.LightData(); + lightData.color = fogLight._linkedFogLights[i].GetTint(); + lightData.maxAlpha = fogLight._linkedFogLights[i]._maxAlpha; + fogLight._linkedLightData.Add(lightData); + fogLightManager.RegisterLightData(lightData); + } + }); + } }); // Set up warps