Truncate expedition members to max on creation

This implements the new behavior from live's September 16, 2020
(test server's September 8, 2020) patch

Expeditions can be created even when the client's group or raid
exceeds the expedition's max player requirement. Members are added
until the max player count is reached and the rest are ignored.

Raid members are added ordered by their raid group number with
ungrouped members having the lowest priority

Rename expedition request method ValidateMembers to CanMembersJoin

Change some expedition messages to System color (live changes)
This commit is contained in:
hg
2020-09-08 23:44:26 -04:00
parent a597753bee
commit 1d24432e47
6 changed files with 72 additions and 17 deletions
+13
View File
@@ -1849,3 +1849,16 @@ void Raid::QueueClients(Mob *sender, const EQApplicationPacket *app, bool ack_re
}
}
}
std::vector<RaidMember> Raid::GetMembers() const
{
std::vector<RaidMember> raid_members;
for (int i = 0; i < MAX_RAID_MEMBERS; ++i)
{
if (members[i].membername[0])
{
raid_members.emplace_back(members[i]);
}
}
return raid_members;
}