AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
Acore::AnyGroupedUnitInObjectRangeCheck Class Reference

#include "GridNotifiers.h"

Public Member Functions

 AnyGroupedUnitInObjectRangeCheck (WorldObject const *obj, Unit const *funit, float range, bool raid)
 
bool operator() (Unit *u)
 

Private Attributes

WorldObject const * _source
 
Unit const * _refUnit
 
float _range
 
bool _raid
 

Detailed Description

Constructor & Destructor Documentation

◆ AnyGroupedUnitInObjectRangeCheck()

Acore::AnyGroupedUnitInObjectRangeCheck::AnyGroupedUnitInObjectRangeCheck ( WorldObject const *  obj,
Unit const *  funit,
float  range,
bool  raid 
)
inline
1037: _source(obj), _refUnit(funit), _range(range), _raid(raid) {}
float _range
Definition GridNotifiers.h:1057
bool _raid
Definition GridNotifiers.h:1058
WorldObject const * _source
Definition GridNotifiers.h:1055
Unit const * _refUnit
Definition GridNotifiers.h:1056

Member Function Documentation

◆ operator()()

bool Acore::AnyGroupedUnitInObjectRangeCheck::operator() ( Unit u)
inline
1039 {
1040 if (u->IsVehicle())
1041 return false;
1042
1043 if (_raid)
1044 {
1045 if (!_refUnit->IsInRaidWith(u))
1046 return false;
1047 }
1048 else if (!_refUnit->IsInPartyWith(u))
1049 return false;
1050
1051 return !_refUnit->IsHostileTo(u) && u->IsAlive() && _source->IsWithinDistInMap(u, _range);
1052 }
bool IsVehicle() const
Definition Unit.h:801
bool IsAlive() const
Definition Unit.h:1793
bool IsInRaidWith(Unit const *unit) const
Definition Unit.cpp:15071
bool IsHostileTo(Unit const *unit) const
Definition Unit.cpp:7297
bool IsInPartyWith(Unit const *unit) const
Definition Unit.cpp:15048
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
Definition Object.cpp:1381

References _raid, _range, _refUnit, _source, Unit::IsAlive(), Unit::IsHostileTo(), Unit::IsInPartyWith(), Unit::IsInRaidWith(), Unit::IsVehicle(), and WorldObject::IsWithinDistInMap().

Member Data Documentation

◆ _raid

bool Acore::AnyGroupedUnitInObjectRangeCheck::_raid
private

Referenced by operator()().

◆ _range

float Acore::AnyGroupedUnitInObjectRangeCheck::_range
private

Referenced by operator()().

◆ _refUnit

Unit const* Acore::AnyGroupedUnitInObjectRangeCheck::_refUnit
private

Referenced by operator()().

◆ _source

WorldObject const* Acore::AnyGroupedUnitInObjectRangeCheck::_source
private

Referenced by operator()().


The documentation for this class was generated from the following file: