From bf6745d351216dfb7ea6d3bbace9de45ba01277c Mon Sep 17 00:00:00 2001 From: JohnCorby Date: Wed, 7 Sep 2022 17:21:42 -0700 Subject: [PATCH] groups on details --- NewHorizons/Builder/General/GroupBuilder.cs | 30 +++++++++++++++++++++ NewHorizons/Builder/Props/DetailBuilder.cs | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 NewHorizons/Builder/General/GroupBuilder.cs diff --git a/NewHorizons/Builder/General/GroupBuilder.cs b/NewHorizons/Builder/General/GroupBuilder.cs new file mode 100644 index 00000000..828a7117 --- /dev/null +++ b/NewHorizons/Builder/General/GroupBuilder.cs @@ -0,0 +1,30 @@ +using UnityEngine; +using Logger = NewHorizons.Utility.Logger; + +namespace NewHorizons.Builder.General; + +public static class GroupBuilder +{ + /// + /// puts groups on objects. + /// run this before the gameobject is active. + /// + public static void Make(GameObject go, Sector sector) + { + Logger.LogVerbose($"putting groups on {go} (linked to {sector})"); + if (!sector) + { + Logger.LogWarning("tried to put groups on a null sector"); + return; + } + if (go.activeInHierarchy) + { + Logger.LogWarning("tried to put groups on an active gameobject"); + return; + } + + go.GetAddComponent()._sector = sector; + go.GetAddComponent()._sector = sector; + go.GetAddComponent()._sector = sector; + } +} \ No newline at end of file diff --git a/NewHorizons/Builder/Props/DetailBuilder.cs b/NewHorizons/Builder/Props/DetailBuilder.cs index ae7a63f7..2c849ecf 100644 --- a/NewHorizons/Builder/Props/DetailBuilder.cs +++ b/NewHorizons/Builder/Props/DetailBuilder.cs @@ -1,3 +1,4 @@ +using NewHorizons.Builder.General; using NewHorizons.External.Configs; using NewHorizons.External.Modules; using NewHorizons.Handlers; @@ -100,6 +101,7 @@ namespace NewHorizons.Builder.Props prop.transform.localScale = detail.scale != 0 ? Vector3.one * detail.scale : prefab.transform.localScale; + if (!detail.keepLoaded) GroupBuilder.Make(prop, sector); prop.SetActive(true); if (prop == null) return null;