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

Public Member Functions

 UnchainedMagicTargetSelector (bool removeHealers)
 
bool operator() (WorldObject *object) const
 

Private Attributes

bool _removeHealers
 

Detailed Description

Constructor & Destructor Documentation

◆ UnchainedMagicTargetSelector()

UnchainedMagicTargetSelector::UnchainedMagicTargetSelector ( bool  removeHealers)
inline
876: _removeHealers(removeHealers) { }
bool _removeHealers
Definition: boss_sindragosa.cpp:897

Member Function Documentation

◆ operator()()

bool UnchainedMagicTargetSelector::operator() ( WorldObject object) const
inline
879 {
880 if (Player* p = object->ToPlayer())
881 {
882 if (p->getPowerType() != POWER_MANA)
883 return true;
884 if (p->getClass() == CLASS_HUNTER)
885 return true;
886 uint8 maxIndex = p->GetMostPointsTalentTree();
887 if ((p->getClass() == CLASS_PALADIN && maxIndex >= 1) || (p->getClass() == CLASS_SHAMAN && maxIndex == 1) || (p->getClass() == CLASS_DRUID && maxIndex == 1))
888 return true;
889 if (_removeHealers == ((p->getClass() == CLASS_DRUID && maxIndex == 2) || (p->getClass() == CLASS_PALADIN && maxIndex == 0) || (p->getClass() == CLASS_PRIEST && maxIndex <= 1) || (p->getClass() == CLASS_SHAMAN && maxIndex == 2)))
890 return true;
891
892 return false;
893 }
894 return true;
895 }
std::uint8_t uint8
Definition: Define.h:110
@ POWER_MANA
Definition: SharedDefines.h:241
@ CLASS_HUNTER
Definition: SharedDefines.h:115
@ CLASS_DRUID
Definition: SharedDefines.h:123
@ CLASS_SHAMAN
Definition: SharedDefines.h:119
@ CLASS_PRIEST
Definition: SharedDefines.h:117
@ CLASS_PALADIN
Definition: SharedDefines.h:114
Player * ToPlayer()
Definition: Object.h:195
Definition: Player.h:1046

References _removeHealers, CLASS_DRUID, CLASS_HUNTER, CLASS_PALADIN, CLASS_PRIEST, CLASS_SHAMAN, POWER_MANA, and Object::ToPlayer().

Member Data Documentation

◆ _removeHealers

bool UnchainedMagicTargetSelector::_removeHealers
private

Referenced by operator()().