end of day Jan 11

This commit is contained in:
neckkola
2022-01-12 00:01:58 -04:00
parent 4098d9db51
commit d62171f34d
2 changed files with 27 additions and 12 deletions
+1 -1
View File
@@ -10510,7 +10510,7 @@ void Bot::ProcessRaidInvite(Bot* invitee, Client* invitor) {
// raid->GroupUpdate(0, true); // raid->GroupUpdate(0, true);
// raid->SendBulkRaid(invitee); //Send a raid updates to the invitor // raid->SendBulkRaid(invitee); //Send a raid updates to the invitor
g_invitor->JoinRaidXTarget(raid, true); g_invitor->JoinRaidXTarget(raid, true);
g_invitor->DisbandGroup(true); // g_invitor->DisbandGroup(true);
raid->GroupUpdate(0, true); raid->GroupUpdate(0, true);
if (raid->IsLocked()) { if (raid->IsLocked()) {
raid->SendRaidLockTo(invitor); raid->SendRaidLockTo(invitor);
+26 -11
View File
@@ -11755,20 +11755,35 @@ void Client::Handle_OP_RaidCommand(const EQApplicationPacket *app)
} }
} }
} }
#ifdef BOTS
//check to see if the leader_name has any bots in the raid
//if so, remove them as well
for (int i = 0; i < MAX_RAID_MEMBERS; ++i)
{
if (raid->members[i] && raid->members[i].member->IsBot() && raid->members[i].member->GetOwnerID() == entity_list.GetClientByName(raid_command_packet->leader_name)->CharacterID())
raid->RemoveMember(raid->members[i].membername);
}
#endif
raid->RemoveMember(raid_command_packet->leader_name); raid->RemoveMember(raid_command_packet->leader_name);
Client *c = entity_list.GetClientByName(raid_command_packet->leader_name); Client *c = entity_list.GetClientByName(raid_command_packet->leader_name);
if (c) if (c) {
#ifdef BOTS
//check to see if the leader_name has any bots in the raid
//if so, remove them as well
// for (int i = 0; i < MAX_RAID_MEMBERS; ++i)
// {
// if (raid->members[i].member && raid->members[i].member->IsBot() && raid->members[i].member->CastToBot()->GetOwner()->CastToClient()->CharacterID() == entity_list.GetClientByName(raid_command_packet->leader_name)->CharacterID())
// raid->RemoveMember(raid->members[i].membername);
// }
std::vector<Bot*> raid_members_bots;
int owner_id = entity_list.GetClientByName(raid_command_packet->leader_name)->CharacterID();
for (int i = 0; i < MAX_RAID_MEMBERS; ++i)
{
if (raid->members[i].member && raid->members[i].member->IsBot() && raid->members[i].member->CastToBot()->GetOwner()->CastToClient()->CharacterID() == owner_id)
{
raid_members_bots.emplace_back(raid->members[i].member->CastToBot());
}
}
for (auto bot_iter : raid_members_bots) {
if (bot_iter && bot_iter->IsBot())
raid->RemoveMember(bot_iter->GetName());
}
#endif
raid->SendGroupDisband(c); raid->SendGroupDisband(c);
}
else { else {
auto pack = auto pack =
new ServerPacket(ServerOP_RaidGroupDisband, sizeof(ServerRaidGeneralAction_Struct)); new ServerPacket(ServerOP_RaidGroupDisband, sizeof(ServerRaidGeneralAction_Struct));