From 08cd624d0ce303e4ed10830469b5724094124efd Mon Sep 17 00:00:00 2001 From: Dehravor Date: Sun, 9 Feb 2014 11:12:09 +0100 Subject: Core/Group: Any party member may mark targets (this does not apply to raid groups) Also ensure that the targeted player is not hostile. --- src/server/game/Handlers/GroupHandler.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp index c14ea5bdda5..fd7d0602265 100644 --- a/src/server/game/Handlers/GroupHandler.cpp +++ b/src/server/game/Handlers/GroupHandler.cpp @@ -543,11 +543,20 @@ void WorldSession::HandleRaidTargetUpdateOpcode(WorldPacket& recvData) } else // target icon update { - if (!group->IsLeader(GetPlayer()->GetGUID()) && !group->IsAssistant(GetPlayer()->GetGUID())) + if (group->isRaidGroup() && !group->IsLeader(GetPlayer()->GetGUID()) && !group->IsAssistant(GetPlayer()->GetGUID())) return; uint64 guid; recvData >> guid; + + if (IS_PLAYER_GUID(guid)) + { + Player* target = ObjectAccessor::FindPlayer(guid); + + if (!target || target->IsHostileTo(GetPlayer())) + return; + } + group->SetTargetIcon(x, _player->GetGUID(), guid); } } -- cgit v1.2.3