mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
Merge branch 'dev' into gorp
This commit is contained in:
commit
eaf71ca23f
@ -245,12 +245,27 @@ namespace NewHorizons.Builder.Body
|
|||||||
cloak._sectors = new Sector[] { sector };
|
cloak._sectors = new Sector[] { sector };
|
||||||
cloak.GetComponent<Renderer>().enabled = true;
|
cloak.GetComponent<Renderer>().enabled = true;
|
||||||
|
|
||||||
// Cull stuff
|
|
||||||
// Do next update so other nodes can be built first
|
// Do next update so other nodes can be built first
|
||||||
Delay.FireOnNextUpdate(() =>
|
Delay.FireOnNextUpdate(() =>
|
||||||
{
|
{
|
||||||
|
// Cull stuff
|
||||||
var cullController = go.AddComponent<BrambleSectorController>();
|
var cullController = go.AddComponent<BrambleSectorController>();
|
||||||
cullController.SetSector(sector);
|
cullController.SetSector(sector);
|
||||||
|
|
||||||
|
// Prevent recursion from causing hard crash
|
||||||
|
foreach (var senderWarp in outerFogWarpVolume._senderWarps.ToList())
|
||||||
|
{
|
||||||
|
var currentWarp = senderWarp;
|
||||||
|
while (currentWarp.GetContainerWarpVolume() != null)
|
||||||
|
{
|
||||||
|
if (currentWarp.GetContainerWarpVolume() == outerFogWarpVolume && currentWarp != senderWarp) // game already fixes here to here recursion
|
||||||
|
{
|
||||||
|
outerFogWarpVolume._senderWarps.Remove(senderWarp);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
currentWarp = (InnerFogWarpVolume)currentWarp.GetContainerWarpVolume().GetLinkedFogWarpVolume();
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// finalize
|
// finalize
|
||||||
|
|||||||
@ -250,12 +250,13 @@ namespace NewHorizons.Builder.Props
|
|||||||
brambleNode.FindChild("Prefab_SeedPunctureVolume (2)").GetComponent<CompoundShape>().enabled = true;
|
brambleNode.FindChild("Prefab_SeedPunctureVolume (2)").GetComponent<CompoundShape>().enabled = true;
|
||||||
fogLight._maxVisibleDistance = float.PositiveInfinity; // Prefab does have working foglight aside from this
|
fogLight._maxVisibleDistance = float.PositiveInfinity; // Prefab does have working foglight aside from this
|
||||||
fogLight._minVisibleDistance *= config.scale / 15f;
|
fogLight._minVisibleDistance *= config.scale / 15f;
|
||||||
|
fogLight._occlusionRange = 175f;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
brambleNode.FindChild("Effects/PointLight_DB_FogLight").GetComponent<Light>().range *= config.scale;
|
brambleNode.FindChild("Effects/PointLight_DB_FogLight").GetComponent<Light>().range *= config.scale;
|
||||||
brambleNode.FindChild("Effects/FogOverrideVolume").GetComponent<FogOverrideVolume>().blendDistance *= config.scale;
|
brambleNode.FindChild("Effects/FogOverrideVolume").GetComponent<FogOverrideVolume>().blendDistance *= config.scale;
|
||||||
fogLight._minVisibleDistance *= config.scale;
|
//fogLight._minVisibleDistance *= config.scale;
|
||||||
|
|
||||||
// Seed fog works differently, so it doesn't need to be fixed
|
// 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)
|
// (it's also located on a different child path, so the below FindChild calls wouldn't work)
|
||||||
@ -333,6 +334,24 @@ namespace NewHorizons.Builder.Props
|
|||||||
|
|
||||||
SetNodeColors(brambleNode, fogTint, farFogTint, fogLightTint, lightTint, lightShaftTint, glowTint, fogOverrideTint);
|
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
|
// Set up warps
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user