TrinityCore
Loading...
Searching...
No Matches
PowerUsersSelector Struct Reference

#include <UnitAICommon.h>

Public Member Functions

 PowerUsersSelector (Unit const *unit, Powers power, float dist, bool playerOnly)
 
bool operator() (Unit const *target) const
 

Private Attributes

Unit const * _me
 
Powers const _power
 
float const _dist
 
bool const _playerOnly
 

Constructor & Destructor Documentation

◆ PowerUsersSelector()

PowerUsersSelector::PowerUsersSelector ( Unit const *  unit,
Powers  power,
float  dist,
bool  playerOnly 
)
inline
95: _me(unit), _power(power), _dist(dist), _playerOnly(playerOnly) { }
float const _dist
Definition: UnitAICommon.h:101
Unit const * _me
Definition: UnitAICommon.h:99
Powers const _power
Definition: UnitAICommon.h:100
bool const _playerOnly
Definition: UnitAICommon.h:102

Member Function Documentation

◆ operator()()

bool PowerUsersSelector::operator() ( Unit const *  target) const
152{
153 if (!_me || !target)
154 return false;
155
156 if (target->GetPowerType() != _power)
157 return false;
158
159 if (_playerOnly && target->GetTypeId() != TYPEID_PLAYER)
160 return false;
161
162 if (_dist > 0.0f && !_me->IsWithinCombatRange(target, _dist))
163 return false;
164
165 if (_dist < 0.0f && _me->IsWithinCombatRange(target, -_dist))
166 return false;
167
168 return true;
169}
@ TYPEID_PLAYER
Definition: ObjectGuid.h:39
bool IsWithinCombatRange(Unit const *obj, float dist2compare) const
Definition: Unit.cpp:617
+ Here is the call graph for this function:

Member Data Documentation

◆ _dist

float const PowerUsersSelector::_dist
private

◆ _me

Unit const* PowerUsersSelector::_me
private

◆ _playerOnly

bool const PowerUsersSelector::_playerOnly
private

◆ _power

Powers const PowerUsersSelector::_power
private

The documentation for this struct was generated from the following files: