mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-13 10:31:29 +00:00
[Code] ClientList Global to Singleton Cleanup (#4942)
This commit is contained in:
parent
4f7ff2d6f2
commit
2128b45313
@ -67,7 +67,7 @@ void AdventureManager::Process()
|
||||
void AdventureManager::CalculateAdventureRequestReply(const char *data)
|
||||
{
|
||||
ServerAdventureRequest_Struct *sar = (ServerAdventureRequest_Struct*)data;
|
||||
ClientListEntry *leader = client_list.FindCharacter(sar->leader);
|
||||
ClientListEntry *leader = ClientList::Instance()->FindCharacter(sar->leader);
|
||||
if(!leader)
|
||||
{
|
||||
return;
|
||||
@ -184,7 +184,7 @@ void AdventureManager::CalculateAdventureRequestReply(const char *data)
|
||||
|
||||
for(int i = 0; i < sar->member_count; ++i)
|
||||
{
|
||||
ClientListEntry *current = client_list.FindCharacter((data + sizeof(ServerAdventureRequest_Struct) + (64 * i)));
|
||||
ClientListEntry *current = ClientList::Instance()->FindCharacter((data + sizeof(ServerAdventureRequest_Struct) + (64 * i)));
|
||||
if(current)
|
||||
{
|
||||
int lvl = current->level();
|
||||
@ -356,7 +356,7 @@ void AdventureManager::CalculateAdventureRequestReply(const char *data)
|
||||
void AdventureManager::TryAdventureCreate(const char *data)
|
||||
{
|
||||
ServerAdventureRequestCreate_Struct *src = (ServerAdventureRequestCreate_Struct*)data;
|
||||
ClientListEntry *leader = client_list.FindCharacter(src->leader);
|
||||
ClientListEntry *leader = ClientList::Instance()->FindCharacter(src->leader);
|
||||
if(!leader)
|
||||
{
|
||||
return;
|
||||
@ -403,7 +403,7 @@ void AdventureManager::TryAdventureCreate(const char *data)
|
||||
for(int i = 0; i < src->member_count; ++i)
|
||||
{
|
||||
|
||||
ClientListEntry *player = client_list.FindCharacter((data + sizeof(ServerAdventureRequestCreate_Struct) + (64 * i)));
|
||||
ClientListEntry *player = ClientList::Instance()->FindCharacter((data + sizeof(ServerAdventureRequestCreate_Struct) + (64 * i)));
|
||||
if(player)
|
||||
{
|
||||
int f_count = 0;
|
||||
@ -457,7 +457,7 @@ void AdventureManager::GetAdventureData(Adventure *adv)
|
||||
|
||||
void AdventureManager::GetAdventureData(const char *name)
|
||||
{
|
||||
ClientListEntry *player = client_list.FindCharacter(name);
|
||||
ClientListEntry *player = ClientList::Instance()->FindCharacter(name);
|
||||
if(player)
|
||||
{
|
||||
int f_count = 0;
|
||||
@ -763,7 +763,7 @@ void AdventureManager::PlayerClickedDoor(const char *player, int zone_id, int do
|
||||
{
|
||||
if((*iter)->PlayerExists(player))
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack =
|
||||
@ -791,7 +791,7 @@ void AdventureManager::PlayerClickedDoor(const char *player, int zone_id, int do
|
||||
++iter;
|
||||
}
|
||||
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureClickDoorError, 64);
|
||||
@ -803,7 +803,7 @@ void AdventureManager::PlayerClickedDoor(const char *player, int zone_id, int do
|
||||
|
||||
void AdventureManager::LeaveAdventure(const char *name)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(name);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(name);
|
||||
if(pc)
|
||||
{
|
||||
Adventure *current = GetActiveAdventure(name);
|
||||
@ -866,7 +866,7 @@ void AdventureManager::IncrementCount(uint16 instance_id)
|
||||
|
||||
while(siter != slist.end())
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter((*siter).c_str());
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter((*siter).c_str());
|
||||
if(pc)
|
||||
{
|
||||
memset(ac->player, 0, 64);
|
||||
@ -1261,7 +1261,7 @@ void AdventureManager::DoLeaderboardRequest(const char* player, uint8 type)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestWins(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1327,7 +1327,7 @@ void AdventureManager::DoLeaderboardRequestWins(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestPercentage(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1393,7 +1393,7 @@ void AdventureManager::DoLeaderboardRequestPercentage(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestWinsGuk(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1459,7 +1459,7 @@ void AdventureManager::DoLeaderboardRequestWinsGuk(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestPercentageGuk(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1525,7 +1525,7 @@ void AdventureManager::DoLeaderboardRequestPercentageGuk(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestWinsMir(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1591,7 +1591,7 @@ void AdventureManager::DoLeaderboardRequestWinsMir(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestPercentageMir(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1657,7 +1657,7 @@ void AdventureManager::DoLeaderboardRequestPercentageMir(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestWinsMmc(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1723,7 +1723,7 @@ void AdventureManager::DoLeaderboardRequestWinsMmc(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestPercentageMmc(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
@ -1789,7 +1789,7 @@ void AdventureManager::DoLeaderboardRequestPercentageMmc(const char* player)
|
||||
|
||||
void AdventureManager::DoLeaderboardRequestWinsRuj(const char* player)
|
||||
{
|
||||
ClientListEntry *pc = client_list.FindCharacter(player);
|
||||
ClientListEntry *pc = ClientList::Instance()->FindCharacter(player);
|
||||
if(pc)
|
||||
{
|
||||
auto pack = new ServerPacket(ServerOP_AdventureLeaderboard, 64 + sizeof(AdventureLeaderboard_Struct));
|
||||
|
||||
@ -94,7 +94,7 @@ ClientListEntry::~ClientListEntry()
|
||||
{
|
||||
if (RunLoops) {
|
||||
Camp(); // updates zoneserver's numplayers
|
||||
client_list.RemoveCLEReferances(this);
|
||||
ClientList::Instance()->RemoveCLEReferances(this);
|
||||
}
|
||||
for (auto &elem: m_tell_queue) {
|
||||
safe_delete_array(elem);
|
||||
|
||||
@ -85,6 +85,12 @@ public:
|
||||
return {m_gm_zone_server_ids.begin(), m_gm_zone_server_ids.end()};
|
||||
}
|
||||
|
||||
static ClientList* Instance()
|
||||
{
|
||||
static ClientList instance;
|
||||
return &instance;
|
||||
}
|
||||
|
||||
private:
|
||||
void OnTick(EQ::Timer *t);
|
||||
inline uint32 GetNextCLEID() { return NextCLEID++; }
|
||||
|
||||
@ -41,7 +41,7 @@ void DynamicZone::ChooseNewLeader()
|
||||
|
||||
auto it = std::find_if(m_members.begin(), m_members.end(), [&](const DynamicZoneMember& member) {
|
||||
if (member.id != GetLeaderID() && member.IsOnline()) {
|
||||
auto member_cle = client_list.FindCLEByCharacterID(member.id);
|
||||
auto member_cle = ClientList::Instance()->FindCLEByCharacterID(member.id);
|
||||
return (member_cle && member_cle->GetOnline() == CLE_Status::InZone);
|
||||
}
|
||||
return false;
|
||||
@ -230,8 +230,8 @@ void DynamicZone::CacheMemberStatuses()
|
||||
// called when a new dz is cached to fill member statuses
|
||||
std::string zone_name;
|
||||
std::vector<ClientListEntry*> all_clients;
|
||||
all_clients.reserve(client_list.GetClientCount());
|
||||
client_list.GetClients(zone_name.c_str(), all_clients);
|
||||
all_clients.reserve(ClientList::Instance()->GetClientCount());
|
||||
ClientList::Instance()->GetClients(zone_name.c_str(), all_clients);
|
||||
|
||||
for (const auto& member : m_members)
|
||||
{
|
||||
|
||||
@ -210,7 +210,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
{
|
||||
auto buf = reinterpret_cast<ServerDzCommand_Struct*>(pack->pBuffer);
|
||||
|
||||
ClientListEntry* cle = client_list.FindCharacter(buf->target_name);
|
||||
ClientListEntry* cle = ClientList::Instance()->FindCharacter(buf->target_name);
|
||||
if (cle && cle->Server())
|
||||
{
|
||||
// continue in the add target's zone
|
||||
@ -220,7 +220,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
else
|
||||
{
|
||||
// add target not online, return to inviter
|
||||
ClientListEntry* inviter_cle = client_list.FindCharacter(buf->requester_name);
|
||||
ClientListEntry* inviter_cle = ClientList::Instance()->FindCharacter(buf->requester_name);
|
||||
if (inviter_cle && inviter_cle->Server())
|
||||
{
|
||||
inviter_cle->Server()->SendPacket(pack);
|
||||
@ -231,7 +231,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
case ServerOP_DzSaveInvite:
|
||||
{
|
||||
auto buf = reinterpret_cast<ServerDzCommand_Struct*>(pack->pBuffer);
|
||||
if (ClientListEntry* cle = client_list.FindCharacter(buf->target_name))
|
||||
if (ClientListEntry* cle = ClientList::Instance()->FindCharacter(buf->target_name))
|
||||
{
|
||||
// store packet on cle and re-send it when client requests it
|
||||
buf->is_char_online = true;
|
||||
@ -243,7 +243,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
case ServerOP_DzRequestInvite:
|
||||
{
|
||||
auto buf = reinterpret_cast<ServerCharacterID_Struct*>(pack->pBuffer);
|
||||
if (ClientListEntry* cle = client_list.FindCLEByCharacterID(buf->char_id))
|
||||
if (ClientListEntry* cle = ClientList::Instance()->FindCLEByCharacterID(buf->char_id))
|
||||
{
|
||||
auto invite_pack = cle->GetPendingDzInvite();
|
||||
if (invite_pack && cle->Server())
|
||||
@ -259,7 +259,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
|
||||
// notify requester (old leader) and new leader of the result
|
||||
ZoneServer* new_leader_zs = nullptr;
|
||||
ClientListEntry* leader_cle = client_list.FindCharacter(buf->new_leader_name);
|
||||
ClientListEntry* leader_cle = ClientList::Instance()->FindCharacter(buf->new_leader_name);
|
||||
if (leader_cle && leader_cle->Server())
|
||||
{
|
||||
auto dz = DynamicZone::FindDynamicZoneByID(buf->dz_id);
|
||||
@ -274,7 +274,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
}
|
||||
|
||||
// if old and new leader are in the same zone only send one message
|
||||
ClientListEntry* requester_cle = client_list.FindCLEByCharacterID(buf->requester_id);
|
||||
ClientListEntry* requester_cle = ClientList::Instance()->FindCLEByCharacterID(buf->requester_id);
|
||||
if (requester_cle && requester_cle->Server() && requester_cle->Server() != new_leader_zs)
|
||||
{
|
||||
requester_cle->Server()->SendPacket(pack);
|
||||
@ -441,7 +441,7 @@ void DynamicZoneManager::HandleZoneMessage(ServerPacket* pack)
|
||||
case ServerOP_DzCharacterLockout:
|
||||
{
|
||||
auto buf = reinterpret_cast<ServerDzCharacterLockout_Struct*>(pack->pBuffer);
|
||||
auto cle = client_list.FindCLEByCharacterID(buf->char_id);
|
||||
auto cle = ClientList::Instance()->FindCLEByCharacterID(buf->char_id);
|
||||
if (cle && cle->Server())
|
||||
{
|
||||
cle->Server()->SendPacket(pack);
|
||||
|
||||
@ -125,7 +125,7 @@ void callGetClientList(Json::Value &response, const std::vector<std::string> &ar
|
||||
}
|
||||
}
|
||||
|
||||
client_list.GetClientList(response, full_list);
|
||||
ClientList::Instance()->GetClientList(response, full_list);
|
||||
}
|
||||
|
||||
void getReloadTypes(Json::Value &response)
|
||||
@ -142,7 +142,7 @@ void getReloadTypes(Json::Value &response)
|
||||
void getServerCounts(Json::Value &response, const std::vector<std::string> &args)
|
||||
{
|
||||
response["zone_count"] = zoneserver_list.GetServerListCount();
|
||||
response["client_count"] = client_list.GetClientCount();
|
||||
response["client_count"] = ClientList::Instance()->GetClientCount();
|
||||
}
|
||||
|
||||
void EQEmuApiWorldDataService::reload(Json::Value &r, const std::vector<std::string> &args)
|
||||
@ -259,7 +259,7 @@ void EQEmuApiWorldDataService::callGetGuildDetails(Json::Value &response, const
|
||||
row["tribute"]["time_remaining"] = guild->tribute.time_remaining;
|
||||
row["tribute"]["enabled"] = guild->tribute.enabled;
|
||||
|
||||
client_list.GetGuildClientList(response, guild_id);
|
||||
ClientList::Instance()->GetGuildClientList(response, guild_id);
|
||||
|
||||
response.append(row);
|
||||
}
|
||||
|
||||
@ -108,7 +108,7 @@ void LoginServer::ProcessUsertoWorldReqLeg(uint16_t opcode, EQ::Net::Packet &p)
|
||||
}
|
||||
|
||||
if (RuleB(World, EnforceCharacterLimitAtLogin)) {
|
||||
if (client_list.IsAccountInGame(utwr->lsaccountid)) {
|
||||
if (ClientList::Instance()->IsAccountInGame(utwr->lsaccountid)) {
|
||||
LogDebug("User already online account_id [{0}]", utwr->lsaccountid);
|
||||
utwrs->response = UserToWorldStatusAlreadyOnline;
|
||||
SendPacket(&outpack);
|
||||
@ -189,7 +189,7 @@ void LoginServer::ProcessUsertoWorldReq(uint16_t opcode, EQ::Net::Packet &p)
|
||||
}
|
||||
|
||||
if (RuleB(World, EnforceCharacterLimitAtLogin)) {
|
||||
if (client_list.IsAccountInGame(utwr->lsaccountid)) {
|
||||
if (ClientList::Instance()->IsAccountInGame(utwr->lsaccountid)) {
|
||||
LogDebug("User already online account_id [{0}]", utwr->lsaccountid);
|
||||
utwrs->response = UserToWorldStatusAlreadyOnline;
|
||||
SendPacket(&outpack);
|
||||
@ -221,7 +221,7 @@ void LoginServer::ProcessLSClientAuthLegacy(uint16_t opcode, EQ::Net::Packet &p)
|
||||
r.is_client_from_local_network
|
||||
);
|
||||
|
||||
client_list.CLEAdd(
|
||||
ClientList::Instance()->CLEAdd(
|
||||
r.loginserver_account_id,
|
||||
"eqemu",
|
||||
r.loginserver_account_name,
|
||||
@ -256,7 +256,7 @@ void LoginServer::ProcessLSClientAuth(uint16_t opcode, EQ::Net::Packet &p)
|
||||
r.is_client_from_local_network
|
||||
);
|
||||
|
||||
client_list.CLEAdd(
|
||||
ClientList::Instance()->CLEAdd(
|
||||
r.loginserver_account_id,
|
||||
r.loginserver_name,
|
||||
r.account_name,
|
||||
|
||||
@ -199,7 +199,7 @@ void SharedTaskManager::RemoveMember(SharedTask* s, const SharedTaskMember& memb
|
||||
|
||||
SendSharedTaskMemberRemovedToAllMembers(s, member.character_name);
|
||||
|
||||
client_list.SendCharacterMessageID(member.character_id, Chat::Yellow,
|
||||
ClientList::Instance()->SendCharacterMessageID(member.character_id, Chat::Yellow,
|
||||
TaskStr::PLAYER_REMOVED, {member.character_name, s->GetTaskData().title});
|
||||
|
||||
if (member.is_leader) {
|
||||
@ -229,10 +229,10 @@ void SharedTaskManager::RemoveEveryoneFromSharedTask(SharedTask *t, uint32 reque
|
||||
|
||||
SendRemovePlayerFromSharedTaskPacket(m.character_id, t->GetTaskData().id, true);
|
||||
|
||||
client_list.SendCharacterMessageID(m.character_id, Chat::Yellow, TaskStr::YOU_REMOVED, {t->GetTaskData().title});
|
||||
ClientList::Instance()->SendCharacterMessageID(m.character_id, Chat::Yellow, TaskStr::YOU_REMOVED, {t->GetTaskData().title});
|
||||
}
|
||||
|
||||
client_list.SendCharacterMessageID(requested_character_id, Chat::Red, TaskStr::PLAYER_REMOVED, {"Everyone", t->GetTaskData().title});
|
||||
ClientList::Instance()->SendCharacterMessageID(requested_character_id, Chat::Red, TaskStr::PLAYER_REMOVED, {"Everyone", t->GetTaskData().title});
|
||||
|
||||
RemoveAllMembersFromDynamicZones(t);
|
||||
|
||||
@ -252,7 +252,7 @@ void SharedTaskManager::Terminate(SharedTask& s, bool send_fail, bool erase)
|
||||
SendSharedTaskFailed(member.character_id, s.GetTaskData().id);
|
||||
}
|
||||
SendRemovePlayerFromSharedTaskPacket(member.character_id, s.GetTaskData().id, true);
|
||||
client_list.SendCharacterMessageID(member.character_id, Chat::Yellow, TaskStr::HAS_ENDED, {s.GetTaskData().title});
|
||||
ClientList::Instance()->SendCharacterMessageID(member.character_id, Chat::Yellow, TaskStr::HAS_ENDED, {s.GetTaskData().title});
|
||||
}
|
||||
|
||||
RemoveAllMembersFromDynamicZones(&s);
|
||||
@ -581,7 +581,7 @@ void SharedTaskManager::SharedTaskActivityUpdate(
|
||||
d->ignore_quest_update = ignore_quest_update;
|
||||
|
||||
// get requested character zone server
|
||||
ClientListEntry *c = client_list.FindCLEByCharacterID(m.character_id);
|
||||
ClientListEntry *c = ClientList::Instance()->FindCLEByCharacterID(m.character_id);
|
||||
if (c && c->Server()) {
|
||||
c->Server()->SendPacket(p.get());
|
||||
}
|
||||
@ -683,7 +683,7 @@ void SharedTaskManager::SendAcceptNewSharedTaskPacket(
|
||||
d->accept_time = accept_time;
|
||||
|
||||
// get requested character zone server
|
||||
ClientListEntry *cle = client_list.FindCLEByCharacterID(character_id);
|
||||
ClientListEntry *cle = ClientList::Instance()->FindCLEByCharacterID(character_id);
|
||||
if (cle && cle->Server()) {
|
||||
cle->Server()->SendPacket(p.get());
|
||||
}
|
||||
@ -704,7 +704,7 @@ void SharedTaskManager::SendRemovePlayerFromSharedTaskPacket(
|
||||
d->remove_from_db = remove_from_db;
|
||||
|
||||
// get requested character zone server
|
||||
ClientListEntry *cle = client_list.FindCLEByCharacterID(character_id);
|
||||
ClientListEntry *cle = ClientList::Instance()->FindCLEByCharacterID(character_id);
|
||||
if (cle && cle->Server()) {
|
||||
cle->Server()->SendPacket(p.get());
|
||||
}
|
||||
@ -717,7 +717,7 @@ void SharedTaskManager::SendSharedTaskFailed(uint32_t character_id, uint32_t tas
|
||||
buf->character_id = character_id;
|
||||
buf->task_id = task_id;
|
||||
|
||||
ClientListEntry* cle = client_list.FindCLEByCharacterID(character_id);
|
||||
ClientListEntry* cle = ClientList::Instance()->FindCLEByCharacterID(character_id);
|
||||
if (cle && cle->Server())
|
||||
{
|
||||
cle->Server()->SendPacket(&pack);
|
||||
@ -746,7 +746,7 @@ void SharedTaskManager::SendSharedTaskMemberList(uint32 character_id, const EQ::
|
||||
memcpy(d->cereal_serialized_members, serialized_members.Data(), serialized_members.Length());
|
||||
|
||||
// send memberlist
|
||||
ClientListEntry *cle = client_list.FindCLEByCharacterID(character_id);
|
||||
ClientListEntry *cle = ClientList::Instance()->FindCLEByCharacterID(character_id);
|
||||
if (cle && cle->Server()) {
|
||||
cle->Server()->SendPacket(p.get());
|
||||
}
|
||||
@ -768,7 +768,7 @@ void SharedTaskManager::SendSharedTaskMemberChange(
|
||||
d->removed = removed;
|
||||
strn0cpy(d->player_name, player_name.c_str(), sizeof(d->player_name));
|
||||
|
||||
ClientListEntry *cle = client_list.FindCLEByCharacterID(character_id);
|
||||
ClientListEntry *cle = ClientList::Instance()->FindCLEByCharacterID(character_id);
|
||||
if (cle && cle->Server()) {
|
||||
cle->Server()->SendPacket(p.get());
|
||||
}
|
||||
@ -990,7 +990,7 @@ void SharedTaskManager::SendSharedTaskInvitePacket(SharedTask *s, int64 invited_
|
||||
strn0cpy(d->task_name, s->GetTaskData().title.c_str(), sizeof(d->task_name));
|
||||
|
||||
// get requested character zone server
|
||||
ClientListEntry *cle = client_list.FindCLEByCharacterID(invited_character_id);
|
||||
ClientListEntry *cle = ClientList::Instance()->FindCLEByCharacterID(invited_character_id);
|
||||
if (cle && cle->Server()) {
|
||||
SendLeaderMessageID(s, Chat::Yellow, TaskStr::SEND_INVITE_TO, {cle->name()});
|
||||
cle->Server()->SendPacket(p.get());
|
||||
@ -1213,7 +1213,7 @@ void SharedTaskManager::SendLeaderMessage(SharedTask *shared_task, int chat_type
|
||||
|
||||
for (const auto &member : shared_task->GetMembers()) {
|
||||
if (member.is_leader) {
|
||||
client_list.SendCharacterMessage(member.character_id, chat_type, message);
|
||||
ClientList::Instance()->SendCharacterMessage(member.character_id, chat_type, message);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1230,7 +1230,7 @@ void SharedTaskManager::SendLeaderMessageID(
|
||||
|
||||
for (const auto &member : shared_task->GetMembers()) {
|
||||
if (member.is_leader) {
|
||||
client_list.SendCharacterMessageID(member.character_id, chat_type, eqstr_id, args);
|
||||
ClientList::Instance()->SendCharacterMessageID(member.character_id, chat_type, eqstr_id, args);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1243,7 +1243,7 @@ void SharedTaskManager::SendMembersMessage(SharedTask *shared_task, int chat_typ
|
||||
}
|
||||
|
||||
for (const auto &member : shared_task->GetMembers()) {
|
||||
client_list.SendCharacterMessage(member.character_id, chat_type, message);
|
||||
ClientList::Instance()->SendCharacterMessage(member.character_id, chat_type, message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -68,7 +68,7 @@ void SharedTaskWorldMessaging::HandleZoneMessage(ServerPacket *pack)
|
||||
if (t) {
|
||||
auto leader = t->GetLeader();
|
||||
if (leader.character_id != r->source_character_id) {
|
||||
client_list.SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
ClientList::Instance()->SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
}
|
||||
else {
|
||||
shared_task_manager.RemoveEveryoneFromSharedTask(t, r->source_character_id);
|
||||
@ -144,7 +144,7 @@ void SharedTaskWorldMessaging::HandleZoneMessage(ServerPacket *pack)
|
||||
|
||||
auto leader = t->GetLeader();
|
||||
if (leader.character_id != r->source_character_id) {
|
||||
client_list.SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
ClientList::Instance()->SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
}
|
||||
else {
|
||||
LogTasksDetail(
|
||||
@ -186,10 +186,10 @@ void SharedTaskWorldMessaging::HandleZoneMessage(ServerPacket *pack)
|
||||
|
||||
auto leader = t->GetLeader();
|
||||
if (leader.character_id != r->source_character_id) {
|
||||
client_list.SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
ClientList::Instance()->SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
}
|
||||
else if (strcasecmp(leader.character_name.c_str(), r->player_name) == 0) {
|
||||
client_list.SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::YOU_ALREADY_LEADER);
|
||||
ClientList::Instance()->SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::YOU_ALREADY_LEADER);
|
||||
}
|
||||
else {
|
||||
LogTasksDetail(
|
||||
@ -226,7 +226,7 @@ void SharedTaskWorldMessaging::HandleZoneMessage(ServerPacket *pack)
|
||||
auto leader = t->GetLeader();
|
||||
if (leader.character_id != r->source_character_id) {
|
||||
// taskadd is client sided with System color in newer clients, server side might still be red
|
||||
client_list.SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
ClientList::Instance()->SendCharacterMessageID(r->source_character_id, Chat::Red, TaskStr::NOT_LEADER, {leader.character_name});
|
||||
}
|
||||
else {
|
||||
LogTasksDetail(
|
||||
@ -319,12 +319,12 @@ void SharedTaskWorldMessaging::HandleZoneMessage(ServerPacket *pack)
|
||||
player_names.emplace_back(member.character_name);
|
||||
|
||||
if (member.is_leader) {
|
||||
client_list.SendCharacterMessageID(buf->source_character_id, Chat::Yellow, TaskStr::LEADER_PRINT, {member.character_name});
|
||||
ClientList::Instance()->SendCharacterMessageID(buf->source_character_id, Chat::Yellow, TaskStr::LEADER_PRINT, {member.character_name});
|
||||
}
|
||||
}
|
||||
|
||||
std::string player_list = fmt::format("{}", Strings::Join(player_names, ", "));
|
||||
client_list.SendCharacterMessageID(buf->source_character_id, Chat::Yellow, TaskStr::MEMBERS_PRINT, {player_list});
|
||||
ClientList::Instance()->SendCharacterMessageID(buf->source_character_id, Chat::Yellow, TaskStr::MEMBERS_PRINT, {player_list});
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
@ -913,7 +913,7 @@ bool ZSList::SendPacketToBootedZones(ServerPacket* pack)
|
||||
|
||||
bool ZSList::SendPacketToZonesWithGuild(uint32 guild_id, ServerPacket* pack)
|
||||
{
|
||||
auto servers = client_list.GetGuildZoneServers(guild_id);
|
||||
auto servers = ClientList::Instance()->GetGuildZoneServers(guild_id);
|
||||
for (auto const& z : zone_server_list) {
|
||||
for (auto const& server_id : servers) {
|
||||
if (z->GetID() == server_id && z->GetZoneID() > 0) {
|
||||
@ -927,7 +927,7 @@ bool ZSList::SendPacketToZonesWithGuild(uint32 guild_id, ServerPacket* pack)
|
||||
|
||||
bool ZSList::SendPacketToZonesWithGMs(ServerPacket* pack)
|
||||
{
|
||||
auto servers = client_list.GetZoneServersWithGMs();
|
||||
auto servers = ClientList::Instance()->GetZoneServersWithGMs();
|
||||
for (auto const &z: zone_server_list) {
|
||||
for (auto const &server_id: servers) {
|
||||
if (z->GetID() == server_id && z->GetZoneID() > 0) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user