AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
CorpseExplosionCheck Class Reference

Public Member Functions

 CorpseExplosionCheck (ObjectGuid casterGUID, bool allowGhoul)
 
bool operator() (WorldObject *obj) const
 

Private Attributes

ObjectGuid _casterGUID
 
bool _allowGhoul
 

Detailed Description

Constructor & Destructor Documentation

◆ CorpseExplosionCheck()

CorpseExplosionCheck::CorpseExplosionCheck ( ObjectGuid  casterGUID,
bool  allowGhoul 
)
inlineexplicit
1087: _casterGUID(casterGUID), _allowGhoul(allowGhoul) { }
ObjectGuid _casterGUID
Definition: spell_dk.cpp:1103
bool _allowGhoul
Definition: spell_dk.cpp:1104

Member Function Documentation

◆ operator()()

bool CorpseExplosionCheck::operator() ( WorldObject obj) const
inline
1090 {
1091 if (Unit* target = obj->ToUnit())
1092 {
1093 if ((target->isDead() || (_allowGhoul && target->GetEntry() == NPC_DK_GHOUL && target->GetOwnerGUID() == _casterGUID))
1094 && !(target->GetCreatureTypeMask() & CREATURE_TYPEMASK_MECHANICAL_OR_ELEMENTAL)
1095 && target->GetDisplayId() == target->GetNativeDisplayId())
1096 return false;
1097 }
1098
1099 return true;
1100 }
@ NPC_DK_GHOUL
Definition: spell_dk.cpp:89
uint32 const CREATURE_TYPEMASK_MECHANICAL_OR_ELEMENTAL
Definition: SharedDefines.h:2645
Unit * ToUnit()
Definition: Object.h:206
Definition: Unit.h:630

References _allowGhoul, _casterGUID, CREATURE_TYPEMASK_MECHANICAL_OR_ELEMENTAL, NPC_DK_GHOUL, and Object::ToUnit().

Member Data Documentation

◆ _allowGhoul

bool CorpseExplosionCheck::_allowGhoul
private

Referenced by operator()().

◆ _casterGUID

ObjectGuid CorpseExplosionCheck::_casterGUID
private

Referenced by operator()().