From f759325a03bc768bf708d111f2b6e11b391ac0f3 Mon Sep 17 00:00:00 2001 From: Nick Date: Sun, 21 Aug 2022 17:40:37 -0400 Subject: [PATCH] Fix meteor collisions --- NewHorizons/Builder/Props/VolcanoBuilder.cs | 23 +++++++-------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/NewHorizons/Builder/Props/VolcanoBuilder.cs b/NewHorizons/Builder/Props/VolcanoBuilder.cs index 54cf68e0..a5ddd810 100644 --- a/NewHorizons/Builder/Props/VolcanoBuilder.cs +++ b/NewHorizons/Builder/Props/VolcanoBuilder.cs @@ -45,6 +45,7 @@ namespace NewHorizons.Builder.Props } }); } + private static void FixMeteor(MeteorController meteor, PropModule.VolcanoInfo info) { meteor.transform.localScale = Vector3.one * info.scale; @@ -53,24 +54,16 @@ namespace NewHorizons.Builder.Props mat.SetColor(Color1, info.stoneTint?.ToColor() ?? defaultStoneTint); mat.SetColor(EmissionColor, info.lavaTint?.ToColor() ?? defaultLavaTint); - var detectors = meteor.transform.Find("ConstantDetectors").gameObject; - GameObject.Destroy(detectors.GetComponent()); - GameObject.Destroy(detectors.GetComponent()); + GameObject.Destroy(meteor.transform.Find("ConstantDetectors").gameObject); + + var detectors = meteor.transform.Find("DynamicDetector").gameObject; + + meteor._constantFluidDetector = null; + meteor._constantForceDetector = null; var forceDetector = detectors.gameObject.AddComponent(); - detectors.gameObject.AddComponent(); - detectors.layer = LayerMask.NameToLayer("BasicDetector"); - - var sphere = detectors.AddComponent(); - sphere.radius = 1; - - var sphere2 = detectors.AddComponent(); - sphere2._collisionMode = Shape.CollisionMode.Detector; - sphere2.radius = 1; - - forceDetector._collider = sphere; - forceDetector._shape = sphere2; + meteor._owColliders = meteor.gameObject.GetComponentsInChildren(); } } }