aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-07-11 17:40:34 +0200
committerShauren <shauren.trinity@gmail.com>2025-07-11 17:40:34 +0200
commitcbb532e4bec11d59f2072441a43b7c797de6d16d (patch)
tree27a0dc63805e527d2f47744963fc2f341493ce27 /src/server/game/Handlers
parentae197a62b77cd93799571b16756c372081704929 (diff)
Core/Groups: Use iterators instead of raw LinkedListElement to interact with group members
Diffstat (limited to 'src/server/game/Handlers')
-rw-r--r--src/server/game/Handlers/BattleGroundHandler.cpp14
-rw-r--r--src/server/game/Handlers/GroupHandler.cpp8
-rw-r--r--src/server/game/Handlers/LFGHandler.cpp7
-rw-r--r--src/server/game/Handlers/LootHandler.cpp7
-rw-r--r--src/server/game/Handlers/QuestHandler.cpp12
5 files changed, 18 insertions, 30 deletions
diff --git a/src/server/game/Handlers/BattleGroundHandler.cpp b/src/server/game/Handlers/BattleGroundHandler.cpp
index a04564c5a41..cad7634d64a 100644
--- a/src/server/game/Handlers/BattleGroundHandler.cpp
+++ b/src/server/game/Handlers/BattleGroundHandler.cpp
@@ -224,12 +224,9 @@ void WorldSession::HandleBattlemasterJoinOpcode(WorldPackets::Battleground::Batt
avgTime = bgQueue.GetAverageQueueWaitTime(ginfo, bracketEntry->GetBracketId());
}
- for (GroupReference const* itr = grp->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : grp->GetMembers())
{
- Player* member = itr->GetSource();
- if (!member)
- continue; // this should never happen
-
+ Player* member = itr.GetSource();
if (err)
{
WorldPackets::Battleground::BattlefieldStatusFailed battlefieldStatus;
@@ -578,12 +575,9 @@ void WorldSession::HandleBattlemasterJoinArena(WorldPackets::Battleground::Battl
avgTime = bgQueue.GetAverageQueueWaitTime(ginfo, bracketEntry->GetBracketId());
}
- for (GroupReference* itr = grp->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : grp->GetMembers())
{
- Player* member = itr->GetSource();
- if (!member)
- continue;
-
+ Player* member = itr.GetSource();
if (err)
{
WorldPackets::Battleground::BattlefieldStatusFailed battlefieldStatus;
diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp
index daa0e086981..617850957a9 100644
--- a/src/server/game/Handlers/GroupHandler.cpp
+++ b/src/server/game/Handlers/GroupHandler.cpp
@@ -720,9 +720,9 @@ void WorldSession::HandleSendPingUnit(WorldPackets::Party::SendPingUnit const& p
broadcastPingUnit.SpellOverrideNameID = pingUnit.SpellOverrideNameID;
broadcastPingUnit.Write();
- for (GroupReference const* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : group->GetMembers())
{
- Player const* member = itr->GetSource();
+ Player const* member = itr.GetSource();
if (_player == member || !_player->IsInMap(member))
continue;
@@ -749,9 +749,9 @@ void WorldSession::HandleSendPingWorldPoint(WorldPackets::Party::SendPingWorldPo
broadcastPingWorldPoint.PingDuration = pingWorldPoint.PingDuration;
broadcastPingWorldPoint.Write();
- for (GroupReference const* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : group->GetMembers())
{
- Player const* member = itr->GetSource();
+ Player const* member = itr.GetSource();
if (_player == member || !_player->IsInMap(member))
continue;
diff --git a/src/server/game/Handlers/LFGHandler.cpp b/src/server/game/Handlers/LFGHandler.cpp
index 5abec45cbf8..3e4030a5691 100644
--- a/src/server/game/Handlers/LFGHandler.cpp
+++ b/src/server/game/Handlers/LFGHandler.cpp
@@ -209,12 +209,9 @@ void WorldSession::SendLfgPartyLockInfo()
WorldPackets::LFG::LfgPartyInfo lfgPartyInfo;
// Get the locked dungeons of the other party members
- for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : group->GetMembers())
{
- Player* plrg = itr->GetSource();
- if (!plrg)
- continue;
-
+ Player* plrg = itr.GetSource();
ObjectGuid pguid = plrg->GetGUID();
if (pguid == guid)
continue;
diff --git a/src/server/game/Handlers/LootHandler.cpp b/src/server/game/Handlers/LootHandler.cpp
index e73fe2a5203..695caeb7282 100644
--- a/src/server/game/Handlers/LootHandler.cpp
+++ b/src/server/game/Handlers/LootHandler.cpp
@@ -155,12 +155,9 @@ void WorldSession::HandleLootMoneyOpcode(WorldPackets::Loot::LootMoney& /*packet
Group* group = player->GetGroup();
std::vector<Player*> playersNear;
- for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : group->GetMembers())
{
- Player* member = itr->GetSource();
- if (!member)
- continue;
-
+ Player* member = itr.GetSource();
if (!loot->HasAllowedLooter(member->GetGUID()))
continue;
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp
index d86bbf17cb1..085ec2e1ff9 100644
--- a/src/server/game/Handlers/QuestHandler.cpp
+++ b/src/server/game/Handlers/QuestHandler.cpp
@@ -152,11 +152,11 @@ void WorldSession::HandleQuestgiverAcceptQuestOpcode(WorldPackets::Quest::QuestG
{
if (Group* group = _player->GetGroup())
{
- for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : group->GetMembers())
{
- Player* player = itr->GetSource();
+ Player* player = itr.GetSource();
- if (!player || player == _player || !player->IsInMap(_player)) // not self and in same map
+ if (player == _player || !player->IsInMap(_player)) // not self and in same map
continue;
if (player->CanTakeQuest(quest, true))
@@ -595,11 +595,11 @@ void WorldSession::HandlePushQuestToParty(WorldPackets::Quest::PushQuestToParty&
return;
}
- for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
+ for (GroupReference const& itr : group->GetMembers())
{
- Player* receiver = itr->GetSource();
+ Player* receiver = itr.GetSource();
- if (!receiver || receiver == sender)
+ if (receiver == sender)
continue;
if (!receiver->GetPlayerSharingQuest().IsEmpty())