mirror of
https://github.com/EQEmu/Server.git
synced 2026-03-02 06:02:25 +00:00
Export death event variables to Perl (Kingly Krab)
http://www.eqemulator.org/forums/showpost.php?p=227770&postcount=9
This commit is contained in:
parent
3159453e75
commit
3970bb5955
@ -2042,8 +2042,8 @@ bool NPC::Death(Mob* killerMob, int32 damage, uint16 spell, SkillUseTypes attack
|
|||||||
if(killerMob) {
|
if(killerMob) {
|
||||||
oos = killerMob->GetOwnerOrSelf();
|
oos = killerMob->GetOwnerOrSelf();
|
||||||
|
|
||||||
char buffer[32] = { 0 };
|
char buffer[48] = { 0 };
|
||||||
snprintf(buffer, 31, "%d %d %d", damage, spell, static_cast<int>(attack_skill));
|
snprintf(buffer, 47, "%d %d %d %d", killerMob ? killerMob->GetID() : 0, damage, spell, static_cast<int>(attack_skill));
|
||||||
if(parse->EventNPC(EVENT_DEATH, this, oos, buffer, 0) != 0)
|
if(parse->EventNPC(EVENT_DEATH, this, oos, buffer, 0) != 0)
|
||||||
{
|
{
|
||||||
if(GetHP() < 0) {
|
if(GetHP() < 0) {
|
||||||
@ -2058,8 +2058,8 @@ bool NPC::Death(Mob* killerMob, int32 damage, uint16 spell, SkillUseTypes attack
|
|||||||
killerMob->GetCleanName(), GetCleanName(), ConvertArray(damage, val1));
|
killerMob->GetCleanName(), GetCleanName(), ConvertArray(damage, val1));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
char buffer[32] = { 0 };
|
char buffer[48] = { 0 };
|
||||||
snprintf(buffer, 31, "%d %d %d", damage, spell, static_cast<int>(attack_skill));
|
snprintf(buffer, 47, "%d %d %d %d", killerMob ? killerMob->GetID() : 0, damage, spell, static_cast<int>(attack_skill));
|
||||||
if(parse->EventNPC(EVENT_DEATH, this, nullptr, buffer, 0) != 0)
|
if(parse->EventNPC(EVENT_DEATH, this, nullptr, buffer, 0) != 0)
|
||||||
{
|
{
|
||||||
if(GetHP() < 0) {
|
if(GetHP() < 0) {
|
||||||
@ -2401,8 +2401,8 @@ bool NPC::Death(Mob* killerMob, int32 damage, uint16 spell, SkillUseTypes attack
|
|||||||
|
|
||||||
entity_list.UpdateFindableNPCState(this, true);
|
entity_list.UpdateFindableNPCState(this, true);
|
||||||
|
|
||||||
char buffer[32] = { 0 };
|
char buffer[48] = { 0 };
|
||||||
snprintf(buffer, 31, "%d %d %d", damage, spell, static_cast<int>(attack_skill));
|
snprintf(buffer, 47, "%d %d %d %d", killerMob ? killerMob->GetID() : 0, damage, spell, static_cast<int>(attack_skill));
|
||||||
parse->EventNPC(EVENT_DEATH_COMPLETE, this, oos, buffer, 0);
|
parse->EventNPC(EVENT_DEATH_COMPLETE, this, oos, buffer, 0);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1307,6 +1307,16 @@ void PerlembParser::ExportEventVariables(std::string &package_name, QuestEventID
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case EVENT_DEATH:
|
||||||
|
case EVENT_DEATH_COMPLETE: {
|
||||||
|
Seperator sep(data);
|
||||||
|
ExportVar(package_name.c_str(), "killer_id", sep.arg[0]);
|
||||||
|
ExportVar(package_name.c_str(), "killer_damage", sep.arg[1]);
|
||||||
|
ExportVar(package_name.c_str(), "killer_spell", sep.arg[2]);
|
||||||
|
ExportVar(package_name.c_str(), "killer_skill", sep.arg[3]);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
default: {
|
default: {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user