mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-13 10:31:29 +00:00
[Bug] UINT32 EmoteID (#2369)
emoteid packet structure is UINT32 but a number of references are in UINT16.
This commit is contained in:
parent
79285b1002
commit
f6889d20e9
@ -1779,7 +1779,7 @@ bool Client::Death(Mob* killerMob, int64 damage, uint16 spell, EQ::skills::Skill
|
|||||||
|
|
||||||
mod_client_death_npc(killerMob);
|
mod_client_death_npc(killerMob);
|
||||||
|
|
||||||
uint16 emoteid = killerMob->GetEmoteID();
|
uint32 emoteid = killerMob->GetEmoteID();
|
||||||
if (emoteid != 0)
|
if (emoteid != 0)
|
||||||
killerMob->CastToNPC()->DoNPCEmote(KILLEDPC, emoteid);
|
killerMob->CastToNPC()->DoNPCEmote(KILLEDPC, emoteid);
|
||||||
killerMob->TrySpellOnKill(killed_level, spell);
|
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);
|
entity_list.RemoveFromAutoXTargets(this);
|
||||||
|
|
||||||
uint16 emoteid = GetEmoteID();
|
uint32 emoteid = GetEmoteID();
|
||||||
auto corpse = new Corpse(this, &itemlist, GetNPCTypeID(), &NPCTypedata,
|
auto corpse = new Corpse(this, &itemlist, GetNPCTypeID(), &NPCTypedata,
|
||||||
level > 54 ? RuleI(NPC, MajorNPCCorpseDecayTimeMS)
|
level > 54 ? RuleI(NPC, MajorNPCCorpseDecayTimeMS)
|
||||||
: RuleI(NPC, MinorNPCCorpseDecayTimeMS));
|
: RuleI(NPC, MinorNPCCorpseDecayTimeMS));
|
||||||
@ -2708,12 +2708,12 @@ bool NPC::Death(Mob* killer_mob, int64 damage, uint16 spell, EQ::skills::SkillTy
|
|||||||
if (oos) {
|
if (oos) {
|
||||||
mod_npc_killed(oos);
|
mod_npc_killed(oos);
|
||||||
|
|
||||||
uint16 emoteid = GetEmoteID();
|
uint32 emoteid = GetEmoteID();
|
||||||
if (emoteid != 0)
|
if (emoteid != 0)
|
||||||
DoNPCEmote(ONDEATH, emoteid);
|
DoNPCEmote(ONDEATH, emoteid);
|
||||||
if (oos->IsNPC()) {
|
if (oos->IsNPC()) {
|
||||||
parse->EventNPC(EVENT_NPC_SLAY, oos->CastToNPC(), this, "", 0);
|
parse->EventNPC(EVENT_NPC_SLAY, oos->CastToNPC(), this, "", 0);
|
||||||
uint16 emoteid = oos->GetEmoteID();
|
uint32 emoteid = oos->GetEmoteID();
|
||||||
if (emoteid != 0)
|
if (emoteid != 0)
|
||||||
oos->CastToNPC()->DoNPCEmote(KILLEDNPC, emoteid);
|
oos->CastToNPC()->DoNPCEmote(KILLEDNPC, emoteid);
|
||||||
killer_mob->TrySpellOnKill(killed_level, spell);
|
killer_mob->TrySpellOnKill(killed_level, spell);
|
||||||
|
|||||||
@ -6233,7 +6233,7 @@ void Client::CheckEmoteHail(Mob *target, const char* message)
|
|||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
uint16 emoteid = target->GetEmoteID();
|
uint32 emoteid = target->GetEmoteID();
|
||||||
if(emoteid != 0)
|
if(emoteid != 0)
|
||||||
target->CastToNPC()->DoNPCEmote(HAILED,emoteid);
|
target->CastToNPC()->DoNPCEmote(HAILED,emoteid);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -699,7 +699,7 @@ void EntityList::AddNPC(NPC *npc, bool SendSpawnPacket, bool dontqueue)
|
|||||||
}
|
}
|
||||||
parse->EventNPC(EVENT_SPAWN, npc, nullptr, "", 0);
|
parse->EventNPC(EVENT_SPAWN, npc, nullptr, "", 0);
|
||||||
|
|
||||||
uint16 emoteid = npc->GetEmoteID();
|
uint32 emoteid = npc->GetEmoteID();
|
||||||
if (emoteid != 0)
|
if (emoteid != 0)
|
||||||
npc->DoNPCEmote(ONSPAWN, emoteid);
|
npc->DoNPCEmote(ONSPAWN, emoteid);
|
||||||
npc->SetSpawned();
|
npc->SetSpawned();
|
||||||
|
|||||||
@ -10,7 +10,7 @@ void command_emotesearch(Client *c, const Seperator *sep)
|
|||||||
int count = 0;
|
int count = 0;
|
||||||
|
|
||||||
if (Seperator::IsNumber(search_criteria)) {
|
if (Seperator::IsNumber(search_criteria)) {
|
||||||
uint16 emoteid = atoi(search_criteria);
|
uint32 emoteid = atoi(search_criteria);
|
||||||
LinkedListIterator<NPC_Emote_Struct *> iterator(zone->NPCEmoteList);
|
LinkedListIterator<NPC_Emote_Struct *> iterator(zone->NPCEmoteList);
|
||||||
iterator.Reset();
|
iterator.Reset();
|
||||||
while (iterator.MoreElements()) {
|
while (iterator.MoreElements()) {
|
||||||
|
|||||||
@ -1256,8 +1256,8 @@ public:
|
|||||||
void TarGlobal(const char *varname, const char *value, const char *duration, int npcid, int charid, int zoneid);
|
void TarGlobal(const char *varname, const char *value, const char *duration, int npcid, int charid, int zoneid);
|
||||||
void DelGlobal(const char *varname);
|
void DelGlobal(const char *varname);
|
||||||
|
|
||||||
inline void SetEmoteID(uint16 emote) { emoteid = emote; }
|
inline void SetEmoteID(uint32 emote) { emoteid = emote; }
|
||||||
inline uint16 GetEmoteID() { return emoteid; }
|
inline uint32 GetEmoteID() { return emoteid; }
|
||||||
|
|
||||||
bool HasSpellEffect(int effect_id);
|
bool HasSpellEffect(int effect_id);
|
||||||
int mod_effect_value(int effect_value, uint16 spell_id, int effect_type, Mob *caster, uint16 caster_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;
|
bool m_targetable;
|
||||||
int QGVarDuration(const char *fmt);
|
int QGVarDuration(const char *fmt);
|
||||||
void InsertQuestGlobal(int charid, int npcid, int zoneid, const char *name, const char *value, int expdate);
|
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];
|
SpecialAbility SpecialAbilities[MAX_SPECIAL_ATTACK];
|
||||||
bool bEnraged;
|
bool bEnraged;
|
||||||
|
|||||||
@ -1923,7 +1923,7 @@ void Mob::AI_Event_Engaged(Mob *attacker, bool yell_for_help)
|
|||||||
if (attacker->GetHP() > 0) {
|
if (attacker->GetHP() > 0) {
|
||||||
if (!CastToNPC()->GetCombatEvent() && GetHP() > 0) {
|
if (!CastToNPC()->GetCombatEvent() && GetHP() > 0) {
|
||||||
parse->EventNPC(EVENT_COMBAT, CastToNPC(), attacker, "1", 0);
|
parse->EventNPC(EVENT_COMBAT, CastToNPC(), attacker, "1", 0);
|
||||||
uint16 emoteid = GetEmoteID();
|
uint32 emoteid = GetEmoteID();
|
||||||
if (emoteid != 0) {
|
if (emoteid != 0) {
|
||||||
CastToNPC()->DoNPCEmote(ENTERCOMBAT, emoteid);
|
CastToNPC()->DoNPCEmote(ENTERCOMBAT, emoteid);
|
||||||
}
|
}
|
||||||
@ -1955,7 +1955,7 @@ void Mob::AI_Event_NoLongerEngaged() {
|
|||||||
SetAssistAggro(false);
|
SetAssistAggro(false);
|
||||||
if (CastToNPC()->GetCombatEvent() && GetHP() > 0) {
|
if (CastToNPC()->GetCombatEvent() && GetHP() > 0) {
|
||||||
if (entity_list.GetNPCByID(this->GetID())) {
|
if (entity_list.GetNPCByID(this->GetID())) {
|
||||||
uint16 emoteid = CastToNPC()->GetEmoteID();
|
uint32 emoteid = CastToNPC()->GetEmoteID();
|
||||||
parse->EventNPC(EVENT_COMBAT, CastToNPC(), nullptr, "0", 0);
|
parse->EventNPC(EVENT_COMBAT, CastToNPC(), nullptr, "0", 0);
|
||||||
if (emoteid != 0) {
|
if (emoteid != 0) {
|
||||||
CastToNPC()->DoNPCEmote(LEAVECOMBAT, emoteid);
|
CastToNPC()->DoNPCEmote(LEAVECOMBAT, emoteid);
|
||||||
|
|||||||
@ -399,7 +399,7 @@ NPC::NPC(const NPCType *npc_type_data, Spawn2 *in_respawn, const glm::vec4 &posi
|
|||||||
|
|
||||||
qGlobals = nullptr;
|
qGlobals = nullptr;
|
||||||
|
|
||||||
SetEmoteID(static_cast<uint16>(npc_type_data->emoteid));
|
SetEmoteID(static_cast<uint32>(npc_type_data->emoteid));
|
||||||
InitializeBuffSlots();
|
InitializeBuffSlots();
|
||||||
CalcBonuses();
|
CalcBonuses();
|
||||||
|
|
||||||
@ -1087,7 +1087,7 @@ void NPC::UpdateEquipmentLight()
|
|||||||
}
|
}
|
||||||
|
|
||||||
void NPC::Depop(bool StartSpawnTimer) {
|
void NPC::Depop(bool StartSpawnTimer) {
|
||||||
uint16 emoteid = GetEmoteID();
|
uint32 emoteid = GetEmoteID();
|
||||||
if(emoteid != 0)
|
if(emoteid != 0)
|
||||||
DoNPCEmote(ONDESPAWN,emoteid);
|
DoNPCEmote(ONDESPAWN,emoteid);
|
||||||
p_depop = true;
|
p_depop = true;
|
||||||
@ -3012,7 +3012,7 @@ void NPC::SignalNPC(int _signal_id)
|
|||||||
signal_q.push_back(_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);
|
LinkedListIterator<NPC_Emote_Struct*> iterator(zone->NPCEmoteList);
|
||||||
iterator.Reset();
|
iterator.Reset();
|
||||||
while(iterator.MoreElements())
|
while(iterator.MoreElements())
|
||||||
@ -3026,7 +3026,7 @@ NPC_Emote_Struct* NPC::GetNPCEmote(uint16 emoteid, uint8 event_) {
|
|||||||
return (nullptr);
|
return (nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void NPC::DoNPCEmote(uint8 event_, uint16 emoteid)
|
void NPC::DoNPCEmote(uint8 event_, uint32 emoteid)
|
||||||
{
|
{
|
||||||
if(this == nullptr || emoteid == 0)
|
if(this == nullptr || emoteid == 0)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -458,8 +458,8 @@ public:
|
|||||||
Timer *GetRefaceTimer() const { return reface_timer; }
|
Timer *GetRefaceTimer() const { return reface_timer; }
|
||||||
const uint32 GetAltCurrencyType() const { return NPCTypedata->alt_currency_type; }
|
const uint32 GetAltCurrencyType() const { return NPCTypedata->alt_currency_type; }
|
||||||
|
|
||||||
NPC_Emote_Struct* GetNPCEmote(uint16 emoteid, uint8 event_);
|
NPC_Emote_Struct* GetNPCEmote(uint32 emoteid, uint8 event_);
|
||||||
void DoNPCEmote(uint8 event_, uint16 emoteid);
|
void DoNPCEmote(uint8 event_, uint32 emoteid);
|
||||||
bool CanTalk();
|
bool CanTalk();
|
||||||
void DoQuestPause(Mob *other);
|
void DoQuestPause(Mob *other);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user