From bb22b03c18e8be7e748374e8ec9f768e0a3e0b82 Mon Sep 17 00:00:00 2001 From: Noah Pilarski Date: Fri, 27 May 2022 05:54:18 -0400 Subject: [PATCH] Fix Cloak Invisible Bug --- NewHorizons/Builder/Body/CloakBuilder.cs | 4 +++- .../Components/CloakSectorController.cs | 18 +++++++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/NewHorizons/Builder/Body/CloakBuilder.cs b/NewHorizons/Builder/Body/CloakBuilder.cs index 4debb50a..c75fa60c 100644 --- a/NewHorizons/Builder/Body/CloakBuilder.cs +++ b/NewHorizons/Builder/Body/CloakBuilder.cs @@ -1,4 +1,4 @@ -using NewHorizons.Components; +using NewHorizons.Components; using NewHorizons.Utility; using UnityEngine; namespace NewHorizons.Builder.Body @@ -32,6 +32,8 @@ namespace NewHorizons.Builder.Body newCloak.SetActive(true); cloakFieldController.enabled = true; + cloakSectorController.EnableCloak(); + // To cloak from the start Main.Instance.ModHelper.Events.Unity.FireOnNextUpdate(cloakSectorController.OnPlayerExit); } diff --git a/NewHorizons/Components/CloakSectorController.cs b/NewHorizons/Components/CloakSectorController.cs index 844a1a15..f027a7dc 100644 --- a/NewHorizons/Components/CloakSectorController.cs +++ b/NewHorizons/Components/CloakSectorController.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using UnityEngine; namespace NewHorizons.Components @@ -60,5 +60,21 @@ namespace NewHorizons.Components renderer.forceRenderingOff = true; } } + + public void EnableCloak() + { + SunLightController.RegisterSunOverrider(_cloak, 900); + _cloak._cloakSphereRenderer.SetActivation(true); + Shader.EnableKeyword("_CLOAKINGFIELDENABLED"); + _cloak._cloakVisualsEnabled = true; + } + + public void DisableCloak() + { + SunLightController.UnregisterSunOverrider(_cloak); + _cloak._cloakSphereRenderer.SetActivation(false); + Shader.DisableKeyword("_CLOAKINGFIELDENABLED"); + _cloak._cloakVisualsEnabled = false; + } } }