aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-11-15 11:57:19 +0100
committerShauren <shauren.trinity@gmail.com>2023-01-12 22:55:18 +0100
commit7df4f5b2856af9b8eb2af83f827915ac28e3db3a (patch)
treecc8ed038d1c3981b1a924e7e33469fa243c50ca0 /src
parentc730fc790bad273dffd729ac49f62fd873857df7 (diff)
Core/GameObjects: Use serverOnly property of GameObjectTemplate for all types that have it, not just spell focus
(cherry picked from commit 4ee64a232ad830255bc6779e595d412c934b6b74)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/GameObject/GameObject.cpp2
-rw-r--r--src/server/game/Entities/GameObject/GameObjectData.h12
2 files changed, 13 insertions, 1 deletions
diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp
index 2ae6a70d357..31ecfdc62f6 100644
--- a/src/server/game/Entities/GameObject/GameObject.cpp
+++ b/src/server/game/Entities/GameObject/GameObject.cpp
@@ -1798,7 +1798,7 @@ bool GameObject::IsNeverVisibleFor(WorldObject const* seer) const
if (WorldObject::IsNeverVisibleFor(seer))
return true;
- if (GetGoType() == GAMEOBJECT_TYPE_SPELL_FOCUS && GetGOInfo()->spellFocus.serverOnly == 1)
+ if (GetGOInfo()->GetServerOnly())
return true;
if (!GetDisplayId())
diff --git a/src/server/game/Entities/GameObject/GameObjectData.h b/src/server/game/Entities/GameObject/GameObjectData.h
index 0e08bb26fea..1012000322c 100644
--- a/src/server/game/Entities/GameObject/GameObjectData.h
+++ b/src/server/game/Entities/GameObject/GameObjectData.h
@@ -1192,6 +1192,18 @@ struct GameObjectTemplate
}
}
+ uint32 GetServerOnly() const
+ {
+ switch (type)
+ {
+ case GAMEOBJECT_TYPE_GENERIC: return generic.serverOnly;
+ case GAMEOBJECT_TYPE_TRAP: return trap.serverOnly;
+ case GAMEOBJECT_TYPE_SPELL_FOCUS: return spellFocus.serverOnly;
+ case GAMEOBJECT_TYPE_AURA_GENERATOR: return auraGenerator.serverOnly;
+ default: return 0;
+ }
+ }
+
uint32 GetSpellFocusType() const
{
switch (type)