From 4cdfac8ccde384c97bcb05cfd1bf05f9efcbc07b Mon Sep 17 00:00:00 2001 From: drewcassidy Date: Fri, 19 Jun 2020 23:54:32 -0700 Subject: [PATCH] Global override for selectability and kill part on detach --- .../Plugins/ConformalDecals.dll | Bin 41472 -> 41984 bytes .../Resources/ConformalDecals.cfg | 3 ++ Source/ConformalDecals/DecalConfig.cs | 7 +++- .../ConformalDecals/ModuleConformalDecal.cs | 39 ++++++++++++++---- 4 files changed, 39 insertions(+), 10 deletions(-) diff --git a/GameData/ConformalDecals/Plugins/ConformalDecals.dll b/GameData/ConformalDecals/Plugins/ConformalDecals.dll index 2286ffcdff0e6dee52a4fd265e2674e929c15f06..a42d00a0b889d231e71639e0f69c0428da409bc2 100644 GIT binary patch literal 41984 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 z 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 AIsgCw diff --git a/GameData/ConformalDecals/Resources/ConformalDecals.cfg b/GameData/ConformalDecals/Resources/ConformalDecals.cfg index 72c6e59..bed0e9c 100644 --- a/GameData/ConformalDecals/Resources/ConformalDecals.cfg +++ b/GameData/ConformalDecals/Resources/ConformalDecals.cfg @@ -1,4 +1,7 @@ CONFORMALDECALS { + decalLayer = 31 + selectableInFlight = false + SHADERBLACKLIST { shader = DepthMask shader = KSP/Alpha/Cutoff diff --git a/Source/ConformalDecals/DecalConfig.cs b/Source/ConformalDecals/DecalConfig.cs index 9304988..ca35d8d 100644 --- a/Source/ConformalDecals/DecalConfig.cs +++ b/Source/ConformalDecals/DecalConfig.cs @@ -6,11 +6,15 @@ namespace ConformalDecals { public static class DecalConfig { private static Texture2D _blankNormal; private static List _shaderBlacklist; - private static int _decalLayer = 31; + private static int _decalLayer = 31; + private static bool _selectableInFlight = false; public static Texture2D BlankNormal => _blankNormal; + public static int DecalLayer => _decalLayer; + public static bool SelectableInFlight => _selectableInFlight; + public static bool IsBlacklisted(Shader shader) { return IsBlacklisted(shader.name); } @@ -26,6 +30,7 @@ namespace ConformalDecals { } ParseUtil.ParseIntIndirect(ref _decalLayer, node, "decalLayer"); + ParseUtil.ParseBoolIndirect(ref _selectableInFlight, node, "selectableInFlight"); } } diff --git a/Source/ConformalDecals/ModuleConformalDecal.cs b/Source/ConformalDecals/ModuleConformalDecal.cs index 9a997c0..c5b06e2 100644 --- a/Source/ConformalDecals/ModuleConformalDecal.cs +++ b/Source/ConformalDecals/ModuleConformalDecal.cs @@ -237,13 +237,7 @@ namespace ConformalDecals { public override void OnStart(StartState state) { this.Log("Starting module"); - // handle tweakables - if (HighLogic.LoadedSceneIsEditor) { - GameEvents.onEditorPartEvent.Add(OnEditorEvent); - GameEvents.onVariantApplied.Add(OnVariantApplied); - UpdateTweakables(); - } materialProperties.RenderQueue = DecalQueue; @@ -261,19 +255,39 @@ namespace ConformalDecals { } } + // handle tweakables + if (HighLogic.LoadedSceneIsEditor) { + GameEvents.onEditorPartEvent.Add(OnEditorEvent); + GameEvents.onVariantApplied.Add(OnVariantApplied); + + UpdateTweakables(); + } + + // handle flight events if (HighLogic.LoadedSceneIsFlight) { + GameEvents.onPartWillDie.Add(OnPartWillDie); + Part.layerMask |= 1 << DecalConfig.DecalLayer; decalColliderTransform.gameObject.layer = DecalConfig.DecalLayer; - if (!selectableInFlight) { + + if (!selectableInFlight || !DecalConfig.SelectableInFlight) { decalColliderTransform.GetComponent().enabled = false; } + + if (part.parent == null) part.explode(); } } public virtual void OnDestroy() { // remove GameEvents - GameEvents.onEditorPartEvent.Remove(OnEditorEvent); - GameEvents.onVariantApplied.Remove(OnVariantApplied); + if (HighLogic.LoadedSceneIsEditor) { + GameEvents.onEditorPartEvent.Remove(OnEditorEvent); + GameEvents.onVariantApplied.Remove(OnVariantApplied); + } + + if (HighLogic.LoadedSceneIsFlight) { + GameEvents.onPartWillDie.Remove(OnPartWillDie); + } // remove from preCull delegate Camera.onPreCull -= Render; @@ -332,6 +346,13 @@ namespace ConformalDecals { } } + protected void OnPartWillDie(Part willDie) { + if (willDie == part.parent) { + this.Log("Parent part about to be destroyed! Killing decal part."); + part.Die(); + } + } + protected void OnAttach() { if (part.parent == null) { this.LogError("Attach function called but part has no parent!");