Make cloaks also turn off tessellated renderers.

Stops water, sand, inner clouds, and any other tessellated renderer from showing even when player is not inside cloak.
This commit is contained in:
Noah Pilarski 2022-07-05 08:01:15 -04:00
parent 164cdbd1b9
commit 85a9c5ce66

View File

@ -11,6 +11,7 @@ namespace NewHorizons.Components
private bool _isInitialized;
private List<Renderer> _renderers = null;
private List<TessellatedRenderer> _tessellatedRenderers = null;
public static bool isPlayerInside = false;
public static bool isProbeInside = false;
@ -51,6 +52,7 @@ namespace NewHorizons.Components
private void SetUpList()
{
_renderers = _root.GetComponentsInChildren<Renderer>().ToList();
_tessellatedRenderers = _root.GetComponentsInChildren<TessellatedRenderer>().ToList();
}
public void OnPlayerEnter()
@ -62,6 +64,11 @@ namespace NewHorizons.Components
renderer.forceRenderingOff = false;
}
foreach (var tessellatedRenderer in _tessellatedRenderers)
{
tessellatedRenderer.enabled = false;
}
isPlayerInside = true;
GlobalMessenger.FireEvent("PlayerEnterCloakField");
}
@ -75,6 +82,11 @@ namespace NewHorizons.Components
renderer.forceRenderingOff = true;
}
foreach (var tessellatedRenderer in _tessellatedRenderers)
{
tessellatedRenderer.enabled = true;
}
isPlayerInside = false;
GlobalMessenger.FireEvent("PlayerExitCloakField");
}