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

#include "GridNotifiers.h"

Public Member Functions

 MostHPMissingInRange (Unit const *obj, float range, uint32 hp)
 
bool operator() (Unit *u)
 

Private Attributes

Unit const * i_obj
 
float i_range
 
uint32 i_hp
 

Detailed Description

Constructor & Destructor Documentation

◆ MostHPMissingInRange()

Acore::MostHPMissingInRange::MostHPMissingInRange ( Unit const *  obj,
float  range,
uint32  hp 
)
inline
774: i_obj(obj), i_range(range), i_hp(hp) {}
uint32 i_hp
Definition: GridNotifiers.h:787
Unit const * i_obj
Definition: GridNotifiers.h:785
float i_range
Definition: GridNotifiers.h:786

Member Function Documentation

◆ operator()()

bool Acore::MostHPMissingInRange::operator() ( Unit u)
inline
776 {
777 if (u->IsAlive() && u->IsInCombat() && !i_obj->IsHostileTo(u) && i_obj->IsWithinDistInMap(u, i_range) && u->GetMaxHealth() - u->GetHealth() > i_hp)
778 {
779 i_hp = u->GetMaxHealth() - u->GetHealth();
780 return true;
781 }
782 return false;
783 }
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool useBoundingRadius=true) const
Definition: Object.cpp:1321
uint32 GetMaxHealth() const
Definition: Unit.h:1441
bool IsAlive() const
Definition: Unit.h:1808
uint32 GetHealth() const
Definition: Unit.h:1440
bool IsHostileTo(Unit const *unit) const
Definition: Unit.cpp:10209
bool IsInCombat() const
Definition: Unit.h:1688

References Unit::GetHealth(), Unit::GetMaxHealth(), i_hp, i_obj, i_range, Unit::IsAlive(), Unit::IsHostileTo(), Unit::IsInCombat(), and WorldObject::IsWithinDistInMap().

Member Data Documentation

◆ i_hp

uint32 Acore::MostHPMissingInRange::i_hp
private

Referenced by operator()().

◆ i_obj

Unit const* Acore::MostHPMissingInRange::i_obj
private

Referenced by operator()().

◆ i_range

float Acore::MostHPMissingInRange::i_range
private

Referenced by operator()().