aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/ArenaTeamHandler.cpp
diff options
context:
space:
mode:
authorDiscover- <amort11@hotmail.com>2014-04-25 15:19:41 +0200
committerDiscover- <amort11@hotmail.com>2014-04-25 15:19:41 +0200
commit9c68103c2179c4946de753ca8151e5a7143ca143 (patch)
tree84bd2e9b517ec0ed715866d60454af4fa9c3d03e /src/server/game/Handlers/ArenaTeamHandler.cpp
parenteb711fd9e95498de138e6558daeaeed9f1a0abb4 (diff)
parentabb97bac18d4d38feacad37a3f60e79dd3b9606c (diff)
Merge pull request #11938 from Dehravor/inspect
Core/Handlers: Add inspect distance and target checks
Diffstat (limited to 'src/server/game/Handlers/ArenaTeamHandler.cpp')
-rw-r--r--src/server/game/Handlers/ArenaTeamHandler.cpp22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/server/game/Handlers/ArenaTeamHandler.cpp b/src/server/game/Handlers/ArenaTeamHandler.cpp
index f3aedeeeb48..632bd02def0 100644
--- a/src/server/game/Handlers/ArenaTeamHandler.cpp
+++ b/src/server/game/Handlers/ArenaTeamHandler.cpp
@@ -37,15 +37,23 @@ void WorldSession::HandleInspectArenaTeamsOpcode(WorldPacket& recvData)
recvData >> guid;
TC_LOG_DEBUG("network", "Inspect Arena stats (GUID: %u TypeId: %u)", GUID_LOPART(guid), GuidHigh2TypeId(GUID_HIPART(guid)));
- if (Player* player = ObjectAccessor::FindPlayer(guid))
+ Player* player = ObjectAccessor::FindPlayer(guid);
+
+ if (!player)
+ return;
+
+ if (!GetPlayer()->IsWithinDistInMap(player, INSPECT_DISTANCE, false))
+ return;
+
+ if (GetPlayer()->IsValidAttackTarget(player))
+ return;
+
+ for (uint8 i = 0; i < MAX_ARENA_SLOT; ++i)
{
- for (uint8 i = 0; i < MAX_ARENA_SLOT; ++i)
+ if (uint32 a_id = player->GetArenaTeamId(i))
{
- if (uint32 a_id = player->GetArenaTeamId(i))
- {
- if (ArenaTeam* arenaTeam = sArenaTeamMgr->GetArenaTeamById(a_id))
- arenaTeam->Inspect(this, player->GetGUID());
- }
+ if (ArenaTeam* arenaTeam = sArenaTeamMgr->GetArenaTeamById(a_id))
+ arenaTeam->Inspect(this, player->GetGUID());
}
}
}