[Bug] UINT32 EmoteID (#2369)

emoteid packet structure is UINT32 but a number of references are in UINT16.
This commit is contained in:
Michael 2022-08-13 19:41:14 -04:00 committed by GitHub
parent 79285b1002
commit f6889d20e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 18 additions and 18 deletions

View File

@ -1779,7 +1779,7 @@ bool Client::Death(Mob* killerMob, int64 damage, uint16 spell, EQ::skills::Skill
mod_client_death_npc(killerMob);
uint16 emoteid = killerMob->GetEmoteID();
uint32 emoteid = killerMob->GetEmoteID();
if (emoteid != 0)
killerMob->CastToNPC()->DoNPCEmote(KILLEDPC, emoteid);
killerMob->TrySpellOnKill(killed_level, spell);
@ -2610,7 +2610,7 @@ bool NPC::Death(Mob* killer_mob, int64 damage, uint16 spell, EQ::skills::SkillTy
entity_list.RemoveFromAutoXTargets(this);
uint16 emoteid = GetEmoteID();
uint32 emoteid = GetEmoteID();
auto corpse = new Corpse(this, &itemlist, GetNPCTypeID(), &NPCTypedata,
level > 54 ? RuleI(NPC, MajorNPCCorpseDecayTimeMS)
: RuleI(NPC, MinorNPCCorpseDecayTimeMS));
@ -2708,12 +2708,12 @@ bool NPC::Death(Mob* killer_mob, int64 damage, uint16 spell, EQ::skills::SkillTy
if (oos) {
mod_npc_killed(oos);
uint16 emoteid = GetEmoteID();
uint32 emoteid = GetEmoteID();
if (emoteid != 0)
DoNPCEmote(ONDEATH, emoteid);
if (oos->IsNPC()) {
parse->EventNPC(EVENT_NPC_SLAY, oos->CastToNPC(), this, "", 0);
uint16 emoteid = oos->GetEmoteID();
uint32 emoteid = oos->GetEmoteID();
if (emoteid != 0)
oos->CastToNPC()->DoNPCEmote(KILLEDNPC, emoteid);
killer_mob->TrySpellOnKill(killed_level, spell);

View File

@ -6233,7 +6233,7 @@ void Client::CheckEmoteHail(Mob *target, const char* message)
{
return;
}
uint16 emoteid = target->GetEmoteID();
uint32 emoteid = target->GetEmoteID();
if(emoteid != 0)
target->CastToNPC()->DoNPCEmote(HAILED,emoteid);
}

View File

@ -699,7 +699,7 @@ void EntityList::AddNPC(NPC *npc, bool SendSpawnPacket, bool dontqueue)
}
parse->EventNPC(EVENT_SPAWN, npc, nullptr, "", 0);
uint16 emoteid = npc->GetEmoteID();
uint32 emoteid = npc->GetEmoteID();
if (emoteid != 0)
npc->DoNPCEmote(ONSPAWN, emoteid);
npc->SetSpawned();

View File

@ -10,7 +10,7 @@ void command_emotesearch(Client *c, const Seperator *sep)
int count = 0;
if (Seperator::IsNumber(search_criteria)) {
uint16 emoteid = atoi(search_criteria);
uint32 emoteid = atoi(search_criteria);
LinkedListIterator<NPC_Emote_Struct *> iterator(zone->NPCEmoteList);
iterator.Reset();
while (iterator.MoreElements()) {

View File

@ -1256,8 +1256,8 @@ public:
void TarGlobal(const char *varname, const char *value, const char *duration, int npcid, int charid, int zoneid);
void DelGlobal(const char *varname);
inline void SetEmoteID(uint16 emote) { emoteid = emote; }
inline uint16 GetEmoteID() { return emoteid; }
inline void SetEmoteID(uint32 emote) { emoteid = emote; }
inline uint32 GetEmoteID() { return emoteid; }
bool HasSpellEffect(int effect_id);
int mod_effect_value(int effect_value, uint16 spell_id, int effect_type, Mob *caster, uint16 caster_id);
@ -1780,7 +1780,7 @@ protected:
bool m_targetable;
int QGVarDuration(const char *fmt);
void InsertQuestGlobal(int charid, int npcid, int zoneid, const char *name, const char *value, int expdate);
uint16 emoteid;
uint32 emoteid;
SpecialAbility SpecialAbilities[MAX_SPECIAL_ATTACK];
bool bEnraged;

View File

@ -1923,7 +1923,7 @@ void Mob::AI_Event_Engaged(Mob *attacker, bool yell_for_help)
if (attacker->GetHP() > 0) {
if (!CastToNPC()->GetCombatEvent() && GetHP() > 0) {
parse->EventNPC(EVENT_COMBAT, CastToNPC(), attacker, "1", 0);
uint16 emoteid = GetEmoteID();
uint32 emoteid = GetEmoteID();
if (emoteid != 0) {
CastToNPC()->DoNPCEmote(ENTERCOMBAT, emoteid);
}
@ -1955,7 +1955,7 @@ void Mob::AI_Event_NoLongerEngaged() {
SetAssistAggro(false);
if (CastToNPC()->GetCombatEvent() && GetHP() > 0) {
if (entity_list.GetNPCByID(this->GetID())) {
uint16 emoteid = CastToNPC()->GetEmoteID();
uint32 emoteid = CastToNPC()->GetEmoteID();
parse->EventNPC(EVENT_COMBAT, CastToNPC(), nullptr, "0", 0);
if (emoteid != 0) {
CastToNPC()->DoNPCEmote(LEAVECOMBAT, emoteid);

View File

@ -399,7 +399,7 @@ NPC::NPC(const NPCType *npc_type_data, Spawn2 *in_respawn, const glm::vec4 &posi
qGlobals = nullptr;
SetEmoteID(static_cast<uint16>(npc_type_data->emoteid));
SetEmoteID(static_cast<uint32>(npc_type_data->emoteid));
InitializeBuffSlots();
CalcBonuses();
@ -1087,7 +1087,7 @@ void NPC::UpdateEquipmentLight()
}
void NPC::Depop(bool StartSpawnTimer) {
uint16 emoteid = GetEmoteID();
uint32 emoteid = GetEmoteID();
if(emoteid != 0)
DoNPCEmote(ONDESPAWN,emoteid);
p_depop = true;
@ -3012,7 +3012,7 @@ void NPC::SignalNPC(int _signal_id)
signal_q.push_back(_signal_id);
}
NPC_Emote_Struct* NPC::GetNPCEmote(uint16 emoteid, uint8 event_) {
NPC_Emote_Struct* NPC::GetNPCEmote(uint32 emoteid, uint8 event_) {
LinkedListIterator<NPC_Emote_Struct*> iterator(zone->NPCEmoteList);
iterator.Reset();
while(iterator.MoreElements())
@ -3026,7 +3026,7 @@ NPC_Emote_Struct* NPC::GetNPCEmote(uint16 emoteid, uint8 event_) {
return (nullptr);
}
void NPC::DoNPCEmote(uint8 event_, uint16 emoteid)
void NPC::DoNPCEmote(uint8 event_, uint32 emoteid)
{
if(this == nullptr || emoteid == 0)
{

View File

@ -458,8 +458,8 @@ public:
Timer *GetRefaceTimer() const { return reface_timer; }
const uint32 GetAltCurrencyType() const { return NPCTypedata->alt_currency_type; }
NPC_Emote_Struct* GetNPCEmote(uint16 emoteid, uint8 event_);
void DoNPCEmote(uint8 event_, uint16 emoteid);
NPC_Emote_Struct* GetNPCEmote(uint32 emoteid, uint8 event_);
void DoNPCEmote(uint8 event_, uint32 emoteid);
bool CanTalk();
void DoQuestPause(Mob *other);