From 1b04ea97e826eeb9a2c2669c120bb0b8540da904 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sun, 22 Jan 2023 23:34:45 -0500 Subject: [PATCH] Core/GameObjects: Use serverOnly property of GameObjectTemplate for all types that have it, not just spell focus Port From (https://github.com/TrinityCore/TrinityCore/commit/7df4f5b2856af9b8eb2af83f827915ac28e3db3a) --- Source/Game/Entities/GameObject/GameObject.cs | 2 +- Source/Game/Entities/GameObject/GameObjectData.cs | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Source/Game/Entities/GameObject/GameObject.cs b/Source/Game/Entities/GameObject/GameObject.cs index 9f8922a9d..5c30c42af 100644 --- a/Source/Game/Entities/GameObject/GameObject.cs +++ b/Source/Game/Entities/GameObject/GameObject.cs @@ -1295,7 +1295,7 @@ namespace Game.Entities if (base.IsNeverVisibleFor(seer)) return true; - if (GetGoType() == GameObjectTypes.SpellFocus && GetGoInfo().SpellFocus.serverOnly == 1) + if (GetGoInfo().GetServerOnly() != 0) return true; if (GetDisplayId() == 0) diff --git a/Source/Game/Entities/GameObject/GameObjectData.cs b/Source/Game/Entities/GameObject/GameObjectData.cs index 0745e154a..f09426e8a 100644 --- a/Source/Game/Entities/GameObject/GameObjectData.cs +++ b/Source/Game/Entities/GameObject/GameObjectData.cs @@ -677,6 +677,15 @@ namespace Game.Entities } } + public uint GetServerOnly() => type switch + { + GameObjectTypes.Generic => Generic.serverOnly, + GameObjectTypes.Trap => Trap.serverOnly, + GameObjectTypes.SpellFocus => SpellFocus.serverOnly, + GameObjectTypes.AuraGenerator => AuraGenerator.serverOnly, + _ => 0, + }; + public uint GetSpellFocusType() { switch (type)