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

#include "GridNotifiers.h"

Public Member Functions

 AnyFriendlyNotSelfUnitInObjectRangeCheck (WorldObject const *obj, Unit const *funit, float range, bool playerOnly=false)
 
bool operator() (Unit *u)
 

Private Attributes

WorldObject const * i_obj
 
Unit const * i_funit
 
float i_range
 
bool i_playerOnly
 

Detailed Description

Constructor & Destructor Documentation

◆ AnyFriendlyNotSelfUnitInObjectRangeCheck()

Acore::AnyFriendlyNotSelfUnitInObjectRangeCheck::AnyFriendlyNotSelfUnitInObjectRangeCheck ( WorldObject const *  obj,
Unit const *  funit,
float  range,
bool  playerOnly = false 
)
inline
993: i_obj(obj), i_funit(funit), i_range(range), i_playerOnly(playerOnly) {}
bool i_playerOnly
Definition: GridNotifiers.h:1005
Unit const * i_funit
Definition: GridNotifiers.h:1003
WorldObject const * i_obj
Definition: GridNotifiers.h:1002
float i_range
Definition: GridNotifiers.h:1004

Member Function Documentation

◆ operator()()

bool Acore::AnyFriendlyNotSelfUnitInObjectRangeCheck::operator() ( Unit u)
inline
995 {
996 if (u != i_obj && u->IsAlive() && i_obj->IsWithinDistInMap(u, i_range) && i_funit->IsFriendlyTo(u) && (!i_playerOnly || u->GetTypeId() == TYPEID_PLAYER))
997 return true;
998 else
999 return false;
1000 }
@ TYPEID_PLAYER
Definition: ObjectGuid.h:38
TypeID GetTypeId() const
Definition: Object.h:121
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool useBoundingRadius=true) const
Definition: Object.cpp:1321
bool IsAlive() const
Definition: Unit.h:1808
bool IsFriendlyTo(Unit const *unit) const
Definition: Unit.cpp:10214

References Object::GetTypeId(), i_funit, i_obj, i_playerOnly, i_range, Unit::IsAlive(), Unit::IsFriendlyTo(), WorldObject::IsWithinDistInMap(), and TYPEID_PLAYER.

Member Data Documentation

◆ i_funit

Unit const* Acore::AnyFriendlyNotSelfUnitInObjectRangeCheck::i_funit
private

Referenced by operator()().

◆ i_obj

WorldObject const* Acore::AnyFriendlyNotSelfUnitInObjectRangeCheck::i_obj
private

Referenced by operator()().

◆ i_playerOnly

bool Acore::AnyFriendlyNotSelfUnitInObjectRangeCheck::i_playerOnly
private

Referenced by operator()().

◆ i_range

float Acore::AnyFriendlyNotSelfUnitInObjectRangeCheck::i_range
private

Referenced by operator()().