diff options
Diffstat (limited to 'src/server/game/AI/ScriptedAI')
-rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp | 14 | ||||
-rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp | 19 |
2 files changed, 14 insertions, 19 deletions
diff --git a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp index 572861113e5..a6343124e51 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp @@ -60,10 +60,9 @@ void EscortAI::JustDied(Unit* /*killer*/) { if (Group* group = player->GetGroup()) { - for (GroupReference* groupRef = group->GetFirstMember(); groupRef != nullptr; groupRef = groupRef->next()) - if (Player* member = groupRef->GetSource()) - if (member->IsInMap(player)) - member->FailQuest(_escortQuest->GetQuestId()); + for (GroupReference const& groupRef : group->GetMembers()) + if (groupRef.GetSource()->IsInMap(player)) + groupRef.GetSource()->FailQuest(_escortQuest->GetQuestId()); } else player->FailQuest(_escortQuest->GetQuestId()); @@ -417,10 +416,9 @@ bool EscortAI::IsPlayerOrGroupInRange() { if (Group* group = player->GetGroup()) { - for (GroupReference* groupRef = group->GetFirstMember(); groupRef != nullptr; groupRef = groupRef->next()) - if (Player* member = groupRef->GetSource()) - if (me->IsWithinDistInMap(member, GetMaxPlayerDistance())) - return true; + for (GroupReference const& groupRef : group->GetMembers()) + if (me->IsWithinDistInMap(groupRef.GetSource(), GetMaxPlayerDistance())) + return true; } else if (me->IsWithinDistInMap(player, GetMaxPlayerDistance())) return true; diff --git a/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp b/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp index 5c048d36f07..f91ff6f1207 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp @@ -51,10 +51,9 @@ void FollowerAI::JustDied(Unit* /*killer*/) { if (Group* group = player->GetGroup()) { - for (GroupReference* groupRef = group->GetFirstMember(); groupRef != nullptr; groupRef = groupRef->next()) - if (Player* member = groupRef->GetSource()) - if (member->IsInMap(player)) - member->FailQuest(_questForFollow); + for (GroupReference const& groupRef : group->GetMembers()) + if (groupRef.GetSource()->IsInMap(player)) + groupRef.GetSource()->FailQuest(_questForFollow); } else player->FailQuest(_questForFollow); @@ -101,11 +100,9 @@ void FollowerAI::UpdateAI(uint32 uiDiff) { if (Group* group = player->GetGroup()) { - for (GroupReference* groupRef = group->GetFirstMember(); groupRef && (maxRangeExceeded || questAbandoned); groupRef = groupRef->next()) + for (GroupReference const& groupRef : group->GetMembers()) { - Player* member = groupRef->GetSource(); - if (!member) - continue; + Player* member = groupRef.GetSource(); if (maxRangeExceeded && me->IsWithinDistInMap(member, MAX_PLAYER_DISTANCE)) maxRangeExceeded = false; if (questAbandoned) @@ -238,10 +235,10 @@ Player* FollowerAI::GetLeaderForFollower() { if (Group* group = player->GetGroup()) { - for (GroupReference* groupRef = group->GetFirstMember(); groupRef != nullptr; groupRef = groupRef->next()) + for (GroupReference const& groupRef : group->GetMembers()) { - Player* member = groupRef->GetSource(); - if (member && me->IsWithinDistInMap(member, MAX_PLAYER_DISTANCE) && member->IsAlive()) + Player* member = groupRef.GetSource(); + if (me->IsWithinDistInMap(member, MAX_PLAYER_DISTANCE) && member->IsAlive()) { TC_LOG_DEBUG("scripts.ai.followerai", "FollowerAI::GetLeaderForFollower: GetLeader changed and returned new leader. ({})", me->GetGUID().ToString()); _leaderGUID = member->GetGUID(); |