aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Player
diff options
context:
space:
mode:
authorMeji <alvaro.megias@outlook.com>2024-03-24 17:27:13 +0100
committerGitHub <noreply@github.com>2024-03-24 17:27:13 +0100
commit6a80bebcb533eb5780e5d98be84d813b5732992a (patch)
tree93c5a5246b431e521f4fc88c3b38504b6e0190ba /src/server/game/Entities/Player
parent94b78ebc8b0eb09409d0db36bebfde85a1644fe8 (diff)
Core/GameObjects: Added dynamic highlight for GAMEOBJECT_TYPE_SPELL_FOCUS (#29825)
Diffstat (limited to 'src/server/game/Entities/Player')
-rw-r--r--src/server/game/Entities/Player/Player.cpp30
1 files changed, 16 insertions, 14 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index f530ecdbb2b..f2d321fe6b5 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -25233,23 +25233,25 @@ void Player::UpdateVisibleObjectInteractions(bool allUnits, bool onlySpellClicks
UF::ObjectData::Base objMask;
UF::GameObjectData::Base goMask;
- if (m_questObjectiveStatus.contains({ QUEST_OBJECTIVE_GAMEOBJECT, int32(gameObject->GetEntry()) }))
+ if (m_questObjectiveStatus.contains({ QUEST_OBJECTIVE_GAMEOBJECT, int32(gameObject->GetEntry()) }) || gameObject->GetGOInfo()->GetConditionID1())
objMask.MarkChanged(&UF::ObjectData::DynamicFlags);
-
- switch (gameObject->GetGoType())
+ else
{
- case GAMEOBJECT_TYPE_QUESTGIVER:
- case GAMEOBJECT_TYPE_CHEST:
- case GAMEOBJECT_TYPE_GOOBER:
- case GAMEOBJECT_TYPE_GENERIC:
- case GAMEOBJECT_TYPE_GATHERING_NODE:
- if (sObjectMgr->IsGameObjectForQuests(gameObject->GetEntry()))
- objMask.MarkChanged(&UF::ObjectData::DynamicFlags);
- break;
- default:
- break;
+ switch (gameObject->GetGoType())
+ {
+ case GAMEOBJECT_TYPE_QUESTGIVER:
+ case GAMEOBJECT_TYPE_CHEST:
+ case GAMEOBJECT_TYPE_GENERIC:
+ case GAMEOBJECT_TYPE_SPELL_FOCUS:
+ case GAMEOBJECT_TYPE_GOOBER:
+ case GAMEOBJECT_TYPE_GATHERING_NODE:
+ if (sObjectMgr->IsGameObjectForQuests(gameObject->GetEntry()))
+ objMask.MarkChanged(&UF::ObjectData::DynamicFlags);
+ break;
+ default:
+ break;
+ }
}
-
if (objMask.GetChangesMask().IsAnySet() || goMask.GetChangesMask().IsAnySet())
gameObject->BuildValuesUpdateForPlayerWithMask(&udata, objMask.GetChangesMask(), goMask.GetChangesMask(), this);
}