mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 16:51:29 +00:00
[Quest API] Cleanup Signal Methods in Perl/Lua. (#2604)
# Perl - Add `$client->Signal(signal_id)`. # Notes - Some places still had signal as `uint32` versus `int`. - Rename `signal` to `signal_id` where valid so we don't have conflicts.
This commit is contained in:
parent
ede3ed4df3
commit
e1d5274bd5
@ -1528,7 +1528,7 @@ struct CZSetEntityVariable_Struct {
|
||||
struct CZSignal_Struct {
|
||||
uint8 update_type; // 0 - Character, 1 - Group, 2 - Raid, 3 - Guild, 4 - Expedition, 5 - Character Name, 6 - NPC
|
||||
int update_identifier; // Character ID, Group ID, Raid ID, Guild ID, Expedition ID, or NPC ID based on update type, 0 for Character Name
|
||||
int signal;
|
||||
int signal_id;
|
||||
char client_name[64]; // Only used by Character Name Type, else empty
|
||||
};
|
||||
|
||||
@ -1601,7 +1601,7 @@ struct WWSetEntityVariable_Struct {
|
||||
|
||||
struct WWSignal_Struct {
|
||||
uint8 update_type; // 0 - Character, 1 - NPC
|
||||
int signal;
|
||||
int signal_id;
|
||||
uint8 min_status;
|
||||
uint8 max_status;
|
||||
};
|
||||
|
||||
@ -901,7 +901,7 @@ void ConsoleSignalCharByName(
|
||||
int update_identifier = 0;
|
||||
CZS->update_type = update_type;
|
||||
CZS->update_identifier = update_identifier;
|
||||
CZS->signal = atoi(args[1].c_str());
|
||||
CZS->signal_id = atoi(args[1].c_str());
|
||||
strn0cpy(CZS->client_name, (char *) args[0].c_str(), 64);
|
||||
zoneserver_list.SendPacket(pack);
|
||||
safe_delete(pack);
|
||||
|
||||
@ -3173,40 +3173,40 @@ void Perl__crosszonesetentityvariablebynpctypeid(int npc_id, const char* variabl
|
||||
quest_manager.CrossZoneSetEntityVariable(CZUpdateType_NPC, npc_id, variable_name, variable_value);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalclientbycharid(int character_id, int signal)
|
||||
void Perl__crosszonesignalclientbycharid(int character_id, int signal_id)
|
||||
{
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Character, character_id, signal);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Character, character_id, signal_id);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalclientbygroupid(int group_id, int signal)
|
||||
void Perl__crosszonesignalclientbygroupid(int group_id, int signal_id)
|
||||
{
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Group, group_id, signal);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Group, group_id, signal_id);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalclientbyraidid(int raid_id, int signal)
|
||||
void Perl__crosszonesignalclientbyraidid(int raid_id, int signal_id)
|
||||
{
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Raid, raid_id, signal);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Raid, raid_id, signal_id);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalclientbyguildid(int guild_id, int signal)
|
||||
void Perl__crosszonesignalclientbyguildid(int guild_id, int signal_id)
|
||||
{
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Guild, guild_id, signal);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Guild, guild_id, signal_id);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalclientbyexpeditionid(uint32 expedition_id, int signal)
|
||||
void Perl__crosszonesignalclientbyexpeditionid(uint32 expedition_id, int signal_id)
|
||||
{
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Expedition, expedition_id, signal);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Expedition, expedition_id, signal_id);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalclientbyname(const char* client_name, int signal)
|
||||
void Perl__crosszonesignalclientbyname(const char* client_name, int signal_id)
|
||||
{
|
||||
int update_identifier = 0;
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Expedition, update_identifier, signal, client_name);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_Expedition, update_identifier, signal_id, client_name);
|
||||
}
|
||||
|
||||
void Perl__crosszonesignalnpcbynpctypeid(uint32 npc_id, int signal)
|
||||
void Perl__crosszonesignalnpcbynpctypeid(uint32 npc_id, int signal_id)
|
||||
{
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_NPC, npc_id, signal);
|
||||
quest_manager.CrossZoneSignal(CZUpdateType_NPC, npc_id, signal_id);
|
||||
}
|
||||
|
||||
void Perl__crosszoneupdateactivitybycharid(int character_id, uint32 task_id, int activity_id)
|
||||
@ -3638,24 +3638,24 @@ void Perl__worldwidesetentityvariablenpc(const char* variable_name, const char*
|
||||
quest_manager.WorldWideSetEntityVariable(WWSetEntityVariableUpdateType_NPC, variable_name, variable_value);
|
||||
}
|
||||
|
||||
void Perl__worldwidesignalnpc(int signal)
|
||||
void Perl__worldwidesignalnpc(int signal_id)
|
||||
{
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_NPC, signal);
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_NPC, signal_id);
|
||||
}
|
||||
|
||||
void Perl__worldwidesignalclient(int signal)
|
||||
void Perl__worldwidesignalclient(int signal_id)
|
||||
{
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_Character, signal);
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_Character, signal_id);
|
||||
}
|
||||
|
||||
void Perl__worldwidesignalclient(int signal, uint8 min_status)
|
||||
void Perl__worldwidesignalclient(int signal_id, uint8 min_status)
|
||||
{
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_Character, signal, min_status);
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_Character, signal_id, min_status);
|
||||
}
|
||||
|
||||
void Perl__worldwidesignalclient(int signal, uint8 min_status, uint8 max_status)
|
||||
void Perl__worldwidesignalclient(int signal_id, uint8 min_status, uint8 max_status)
|
||||
{
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_Character, signal, min_status, max_status);
|
||||
quest_manager.WorldWideSignal(WWSignalUpdateType_Character, signal_id, min_status, max_status);
|
||||
}
|
||||
|
||||
void Perl__worldwideupdateactivity(uint32 task_id, int activity_id)
|
||||
|
||||
@ -3409,7 +3409,7 @@ luabind::scope lua_register_client() {
|
||||
.def("SetTint", (void(Lua_Client::*)(int,uint32))&Lua_Client::SetTint)
|
||||
.def("SetTitleSuffix", (void(Lua_Client::*)(const char *))&Lua_Client::SetTitleSuffix)
|
||||
.def("SetZoneFlag", (void(Lua_Client::*)(uint32))&Lua_Client::SetZoneFlag)
|
||||
.def("Signal", (void(Lua_Client::*)(uint32))&Lua_Client::Signal)
|
||||
.def("Signal", (void(Lua_Client::*)(int))&Lua_Client::Signal)
|
||||
.def("Sit", (void(Lua_Client::*)(void))&Lua_Client::Sit)
|
||||
.def("Stand", (void(Lua_Client::*)(void))&Lua_Client::Stand)
|
||||
.def("SummonBaggedItems", (void(Lua_Client::*)(uint32,luabind::adl::object))&Lua_Client::SummonBaggedItems)
|
||||
|
||||
@ -281,9 +281,9 @@ std::string Lua_EntityList::RemoveNumbers(const char *name) {
|
||||
return self->RemoveNumbers(t_name);
|
||||
}
|
||||
|
||||
void Lua_EntityList::SignalMobsByNPCID(uint32 npc_id, int signal) {
|
||||
void Lua_EntityList::SignalMobsByNPCID(uint32 npc_id, int signal_id) {
|
||||
Lua_Safe_Call_Void();
|
||||
self->SignalMobsByNPCID(npc_id, signal);
|
||||
self->SignalMobsByNPCID(npc_id, signal_id);
|
||||
}
|
||||
|
||||
uint32 Lua_EntityList::DeleteNPCCorpses() {
|
||||
@ -558,9 +558,9 @@ Lua_Spawn_List Lua_EntityList::GetSpawnList() {
|
||||
return ret;
|
||||
}
|
||||
|
||||
void Lua_EntityList::SignalAllClients(int signal) {
|
||||
void Lua_EntityList::SignalAllClients(int signal_id) {
|
||||
Lua_Safe_Call_Void();
|
||||
self->SignalAllClients(signal);
|
||||
self->SignalAllClients(signal_id);
|
||||
}
|
||||
|
||||
void Lua_EntityList::ChannelMessage(Lua_Mob from, int channel_num, int language, const char *message) {
|
||||
|
||||
@ -101,7 +101,7 @@ public:
|
||||
void OpenDoorsNear(Lua_Mob opener);
|
||||
std::string MakeNameUnique(const char *name);
|
||||
std::string RemoveNumbers(const char *name);
|
||||
void SignalMobsByNPCID(uint32 npc_id, int signal);
|
||||
void SignalMobsByNPCID(uint32 npc_id, int signal_id);
|
||||
uint32 DeleteNPCCorpses();
|
||||
uint32 DeletePlayerCorpses();
|
||||
void HalveAggro(Lua_Mob who);
|
||||
@ -128,7 +128,7 @@ public:
|
||||
Lua_Object_List GetObjectList();
|
||||
Lua_Doors_List GetDoorsList();
|
||||
Lua_Spawn_List GetSpawnList();
|
||||
void SignalAllClients(int signal);
|
||||
void SignalAllClients(int signal_id);
|
||||
void ChannelMessage(Lua_Mob from, int channel_num, int language, const char *message);
|
||||
#ifdef BOTS
|
||||
Lua_Bot GetBotByID(uint32 bot_id);
|
||||
|
||||
@ -2868,40 +2868,40 @@ void lua_cross_zone_set_entity_variable_by_client_name(const char* character_nam
|
||||
quest_manager.CrossZoneSetEntityVariable(update_type, update_identifier, variable_name, variable_value, character_name);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_client_by_char_id(uint32 character_id, int signal) {
|
||||
void lua_cross_zone_signal_client_by_char_id(uint32 character_id, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_Character;
|
||||
quest_manager.CrossZoneSignal(update_type, character_id, signal);
|
||||
quest_manager.CrossZoneSignal(update_type, character_id, signal_id);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_client_by_group_id(uint32 group_id, int signal) {
|
||||
void lua_cross_zone_signal_client_by_group_id(uint32 group_id, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_Group;
|
||||
quest_manager.CrossZoneSignal(update_type, group_id, signal);
|
||||
quest_manager.CrossZoneSignal(update_type, group_id, signal_id);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_client_by_raid_id(uint32 raid_id, int signal) {
|
||||
void lua_cross_zone_signal_client_by_raid_id(uint32 raid_id, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_Raid;
|
||||
quest_manager.CrossZoneSignal(update_type, raid_id, signal);
|
||||
quest_manager.CrossZoneSignal(update_type, raid_id, signal_id);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_client_by_guild_id(uint32 guild_id, int signal) {
|
||||
void lua_cross_zone_signal_client_by_guild_id(uint32 guild_id, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_Guild;
|
||||
quest_manager.CrossZoneSignal(update_type, guild_id, signal);
|
||||
quest_manager.CrossZoneSignal(update_type, guild_id, signal_id);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_client_by_expedition_id(uint32 expedition_id, int signal) {
|
||||
void lua_cross_zone_signal_client_by_expedition_id(uint32 expedition_id, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_Expedition;
|
||||
quest_manager.CrossZoneSignal(update_type, expedition_id, signal);
|
||||
quest_manager.CrossZoneSignal(update_type, expedition_id, signal_id);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_client_by_name(const char* client_name, int signal) {
|
||||
void lua_cross_zone_signal_client_by_name(const char* client_name, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_ClientName;
|
||||
int update_identifier = 0;
|
||||
quest_manager.CrossZoneSignal(update_type, update_identifier, signal, client_name);
|
||||
quest_manager.CrossZoneSignal(update_type, update_identifier, signal_id, client_name);
|
||||
}
|
||||
|
||||
void lua_cross_zone_signal_npc_by_npctype_id(uint32 npctype_id, int signal) {
|
||||
void lua_cross_zone_signal_npc_by_npctype_id(uint32 npctype_id, int signal_id) {
|
||||
uint8 update_type = CZUpdateType_NPC;
|
||||
quest_manager.CrossZoneSignal(update_type, npctype_id, signal);
|
||||
quest_manager.CrossZoneSignal(update_type, npctype_id, signal_id);
|
||||
}
|
||||
|
||||
void lua_cross_zone_update_activity_by_char_id(int character_id, uint32 task_id, int activity_id) {
|
||||
@ -3329,24 +3329,24 @@ void lua_world_wide_set_entity_variable_npc(const char* variable_name, const cha
|
||||
quest_manager.WorldWideSetEntityVariable(update_type, variable_name, variable_value);
|
||||
}
|
||||
|
||||
void lua_world_wide_signal_client(uint32 signal) {
|
||||
void lua_world_wide_signal_client(int signal_id) {
|
||||
uint8 update_type = WWSignalUpdateType_Character;
|
||||
quest_manager.WorldWideSignal(update_type, signal);
|
||||
quest_manager.WorldWideSignal(update_type, signal_id);
|
||||
}
|
||||
|
||||
void lua_world_wide_signal_client(uint32 signal, uint8 min_status) {
|
||||
void lua_world_wide_signal_client(int signal_id, uint8 min_status) {
|
||||
uint8 update_type = WWSignalUpdateType_Character;
|
||||
quest_manager.WorldWideSignal(update_type, signal, min_status);
|
||||
quest_manager.WorldWideSignal(update_type, signal_id, min_status);
|
||||
}
|
||||
|
||||
void lua_world_wide_signal_client(uint32 signal, uint8 min_status, uint8 max_status) {
|
||||
void lua_world_wide_signal_client(int signal_id, uint8 min_status, uint8 max_status) {
|
||||
uint8 update_type = WWSignalUpdateType_Character;
|
||||
quest_manager.WorldWideSignal(update_type, signal, min_status, max_status);
|
||||
quest_manager.WorldWideSignal(update_type, signal_id, min_status, max_status);
|
||||
}
|
||||
|
||||
void lua_world_wide_signal_npc(uint32 signal) {
|
||||
void lua_world_wide_signal_npc(int signal_id) {
|
||||
uint8 update_type = WWSignalUpdateType_NPC;
|
||||
quest_manager.WorldWideSignal(update_type, signal);
|
||||
quest_manager.WorldWideSignal(update_type, signal_id);
|
||||
}
|
||||
|
||||
void lua_world_wide_update_activity(uint32 task_id, int activity_id) {
|
||||
@ -4329,9 +4329,9 @@ luabind::scope lua_register_general() {
|
||||
luabind::def("world_wide_set_entity_variable_client", (void(*)(const char*,const char*,uint8))&lua_world_wide_set_entity_variable_client),
|
||||
luabind::def("world_wide_set_entity_variable_client", (void(*)(const char*,const char*,uint8,uint8))&lua_world_wide_set_entity_variable_client),
|
||||
luabind::def("world_wide_set_entity_variable_npc", &lua_world_wide_set_entity_variable_npc),
|
||||
luabind::def("world_wide_signal_client", (void(*)(uint32))&lua_world_wide_signal_client),
|
||||
luabind::def("world_wide_signal_client", (void(*)(uint32,uint8))&lua_world_wide_signal_client),
|
||||
luabind::def("world_wide_signal_client", (void(*)(uint32,uint8,uint8))&lua_world_wide_signal_client),
|
||||
luabind::def("world_wide_signal_client", (void(*)(int))&lua_world_wide_signal_client),
|
||||
luabind::def("world_wide_signal_client", (void(*)(int,uint8))&lua_world_wide_signal_client),
|
||||
luabind::def("world_wide_signal_client", (void(*)(int,uint8,uint8))&lua_world_wide_signal_client),
|
||||
luabind::def("world_wide_signal_npc", &lua_world_wide_signal_npc),
|
||||
luabind::def("world_wide_update_activity", (void(*)(uint32,int))&lua_world_wide_update_activity),
|
||||
luabind::def("world_wide_update_activity", (void(*)(uint32,int,int))&lua_world_wide_update_activity),
|
||||
|
||||
@ -2732,6 +2732,11 @@ perl::array Perl_Client_GetZoneFlags(Client* self)
|
||||
return a;
|
||||
}
|
||||
|
||||
void Perl_Client_Signal(Client* self, int signal_id)
|
||||
{
|
||||
self->Signal(signal_id);
|
||||
}
|
||||
|
||||
std::string Perl_Client_GetGuildPublicNote(Client* self)
|
||||
{
|
||||
return self->GetGuildPublicNote();
|
||||
@ -3276,6 +3281,7 @@ void perl_register_client()
|
||||
package.add("SetTitleSuffix", (void(*)(Client*, std::string))&Perl_Client_SetTitleSuffix);
|
||||
package.add("SetTitleSuffix", (void(*)(Client*, std::string, bool))&Perl_Client_SetTitleSuffix);
|
||||
package.add("SetZoneFlag", &Perl_Client_SetZoneFlag);
|
||||
package.add("Signal", &Perl_Client_Signal);
|
||||
package.add("SilentMessage", &Perl_Client_SilentMessage);
|
||||
package.add("Sit", &Perl_Client_Sit);
|
||||
package.add("SlotConvert2", &Perl_Client_SlotConvert2);
|
||||
|
||||
@ -533,9 +533,9 @@ perl::array Perl_EntityList_GetDoorsList(EntityList* self) // @categories Script
|
||||
return result;
|
||||
}
|
||||
|
||||
void Perl_EntityList_SignalAllClients(EntityList* self, uint32_t data) // @categories Script Utility
|
||||
void Perl_EntityList_SignalAllClients(EntityList* self, int signal_id) // @categories Script Utility
|
||||
{
|
||||
entity_list.SignalAllClients(data);
|
||||
entity_list.SignalAllClients(signal_id);
|
||||
}
|
||||
|
||||
Mob* Perl_EntityList_GetRandomMob(EntityList* self) // @categories Account and Character, Script Utility
|
||||
|
||||
@ -3701,12 +3701,12 @@ void QuestManager::CrossZoneSetEntityVariable(uint8 update_type, int update_iden
|
||||
safe_delete(pack);
|
||||
}
|
||||
|
||||
void QuestManager::CrossZoneSignal(uint8 update_type, int update_identifier, int signal, const char* client_name) {
|
||||
void QuestManager::CrossZoneSignal(uint8 update_type, int update_identifier, int signal_id, const char* client_name) {
|
||||
auto pack = new ServerPacket(ServerOP_CZSignal, sizeof(CZSignal_Struct));
|
||||
CZSignal_Struct* CZS = (CZSignal_Struct*)pack->pBuffer;
|
||||
CZS->update_type = update_type;
|
||||
CZS->update_identifier = update_identifier;
|
||||
CZS->signal = signal;
|
||||
CZS->signal_id = signal_id;
|
||||
strn0cpy(CZS->client_name, client_name, 64);
|
||||
worldserver.SendPacket(pack);
|
||||
safe_delete(pack);
|
||||
@ -3811,11 +3811,11 @@ void QuestManager::WorldWideSetEntityVariable(uint8 update_type, const char* var
|
||||
safe_delete(pack);
|
||||
}
|
||||
|
||||
void QuestManager::WorldWideSignal(uint8 update_type, int signal, uint8 min_status, uint8 max_status) {
|
||||
void QuestManager::WorldWideSignal(uint8 update_type, int signal_id, uint8 min_status, uint8 max_status) {
|
||||
auto pack = new ServerPacket(ServerOP_WWSignal, sizeof(WWSignal_Struct));
|
||||
WWSignal_Struct* WWS = (WWSignal_Struct*)pack->pBuffer;
|
||||
WWS->update_type = update_type;
|
||||
WWS->signal = signal;
|
||||
WWS->signal_id = signal_id;
|
||||
WWS->min_status = min_status;
|
||||
WWS->max_status = max_status;
|
||||
worldserver.SendPacket(pack);
|
||||
|
||||
@ -313,7 +313,7 @@ public:
|
||||
void CrossZoneMessage(uint8 update_type, int update_identifier, uint32 type, const char* message, const char* client_name = "");
|
||||
void CrossZoneMove(uint8 update_type, uint8 update_subtype, int update_identifier, const char* zone_short_name, uint16 instance_id, const char* client_name = "");
|
||||
void CrossZoneSetEntityVariable(uint8 update_type, int update_identifier, const char* variable_name, const char* variable_value, const char* client_name = "");
|
||||
void CrossZoneSignal(uint8 update_type, int update_identifier, int signal, const char* client_name = "");
|
||||
void CrossZoneSignal(uint8 update_type, int update_identifier, int signal_id, const char* client_name = "");
|
||||
void CrossZoneSpell(uint8 update_type, uint8 update_subtype, int update_identifier, uint32 spell_id, const char* client_name = "");
|
||||
void CrossZoneTaskUpdate(uint8 update_type, uint8 update_subtype, int update_identifier, uint32 task_identifier, int task_subidentifier = -1, int update_count = 1, bool enforce_level_requirement = false, const char* client_name = "");
|
||||
void WorldWideDialogueWindow(const char* message, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
@ -322,7 +322,7 @@ public:
|
||||
void WorldWideMessage(uint32 type, const char* message, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
void WorldWideMove(uint8 update_type, const char* zone_short_name, uint16 instance_id = 0, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
void WorldWideSetEntityVariable(uint8 update_type, const char* variable_name, const char* variable_value, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
void WorldWideSignal(uint8 update_type, int signal, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
void WorldWideSignal(uint8 update_type, int signal_id, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
void WorldWideSpell(uint8 update_type, uint32 spell_id, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
void WorldWideTaskUpdate(uint8 update_type, uint32 task_identifier, int task_subidentifier = -1, int update_count = 1, bool enforce_level_requirement = false, uint8 min_status = AccountStatus::Player, uint8 max_status = AccountStatus::Player);
|
||||
bool EnableRecipe(uint32 recipe_id);
|
||||
|
||||
@ -2614,12 +2614,12 @@ void WorldServer::HandleMessage(uint16 opcode, const EQ::Net::Packet &p)
|
||||
CZSignal_Struct* CZS = (CZSignal_Struct*) pack->pBuffer;
|
||||
uint8 update_type = CZS->update_type;
|
||||
int update_identifier = CZS->update_identifier;
|
||||
int signal = CZS->signal;
|
||||
int signal_id = CZS->signal_id;
|
||||
const char* client_name = CZS->client_name;
|
||||
if (update_type == CZUpdateType_Character) {
|
||||
auto client = entity_list.GetClientByCharID(update_identifier);
|
||||
if (client) {
|
||||
client->Signal(signal);
|
||||
client->Signal(signal_id);
|
||||
}
|
||||
} else if (update_type == CZUpdateType_Group) {
|
||||
auto client_group = entity_list.GetGroupByID(update_identifier);
|
||||
@ -2627,7 +2627,7 @@ void WorldServer::HandleMessage(uint16 opcode, const EQ::Net::Packet &p)
|
||||
for (int member_index = 0; member_index < MAX_GROUP_MEMBERS; member_index++) {
|
||||
if (client_group->members[member_index] && client_group->members[member_index]->IsClient()) {
|
||||
auto group_member = client_group->members[member_index]->CastToClient();
|
||||
group_member->Signal(signal);
|
||||
group_member->Signal(signal_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2637,31 +2637,31 @@ void WorldServer::HandleMessage(uint16 opcode, const EQ::Net::Packet &p)
|
||||
for (int member_index = 0; member_index < MAX_RAID_MEMBERS; member_index++) {
|
||||
if (client_raid->members[member_index].member && client_raid->members[member_index].member->IsClient()) {
|
||||
auto raid_member = client_raid->members[member_index].member->CastToClient();
|
||||
raid_member->Signal(signal);
|
||||
raid_member->Signal(signal_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (update_type == CZUpdateType_Guild) {
|
||||
for (auto &client: entity_list.GetClientList()) {
|
||||
if (client.second->GuildID() > 0 && client.second->GuildID() == update_identifier) {
|
||||
client.second->Signal(signal);
|
||||
client.second->Signal(signal_id);
|
||||
}
|
||||
}
|
||||
} else if (update_type == CZUpdateType_Expedition) {
|
||||
for (auto &client: entity_list.GetClientList()) {
|
||||
if (client.second->GetExpedition() && client.second->GetExpedition()->GetID() == update_identifier) {
|
||||
client.second->Signal(signal);
|
||||
client.second->Signal(signal_id);
|
||||
}
|
||||
}
|
||||
} else if (update_type == CZUpdateType_ClientName) {
|
||||
auto client = entity_list.GetClientByName(client_name);
|
||||
if (client) {
|
||||
client->Signal(signal);
|
||||
client->Signal(signal_id);
|
||||
}
|
||||
} else if (update_type == CZUpdateType_NPC) {
|
||||
auto npc = entity_list.GetNPCByNPCTypeID(update_identifier);
|
||||
if (npc) {
|
||||
npc->SignalNPC(signal);
|
||||
npc->SignalNPC(signal_id);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -3083,18 +3083,18 @@ void WorldServer::HandleMessage(uint16 opcode, const EQ::Net::Packet &p)
|
||||
{
|
||||
WWSignal_Struct* WWS = (WWSignal_Struct*) pack->pBuffer;
|
||||
uint8 update_type = WWS->update_type;
|
||||
uint32 signal = WWS->signal;
|
||||
int signal_id = WWS->signal_id;
|
||||
uint8 min_status = WWS->min_status;
|
||||
uint8 max_status = WWS->max_status;
|
||||
if (update_type == WWSignalUpdateType_Character) {
|
||||
for (auto &client : entity_list.GetClientList()) {
|
||||
if (client.second->Admin() >= min_status && (client.second->Admin() <= max_status || max_status == AccountStatus::Player)) {
|
||||
client.second->Signal(signal);
|
||||
client.second->Signal(signal_id);
|
||||
}
|
||||
}
|
||||
} else if (update_type == WWSignalUpdateType_NPC) {
|
||||
for (auto &npc : entity_list.GetNPCList()) {
|
||||
npc.second->SignalNPC(signal);
|
||||
npc.second->SignalNPC(signal_id);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user