TrinityCore
Loading...
Searching...
No Matches
SmartAI Class Reference

#include <SmartAI.h>

+ Inheritance diagram for SmartAI:

Public Member Functions

 ~SmartAI ()
 
 SmartAI (Creature *creature)
 
bool IsAIControlled () const
 
void StartPath (uint32 pathId=0, bool repeat=false, Unit *invoker=nullptr, uint32 nodeId=1)
 
WaypointPath const * LoadPath (uint32 entry)
 
void PausePath (uint32 delay, bool forced=false)
 
bool CanResumePath ()
 
void StopPath (uint32 DespawnTime=0, uint32 quest=0, bool fail=false)
 
void EndPath (bool fail=false)
 
void ResumePath ()
 
bool HasEscortState (uint32 escortState) const
 
void AddEscortState (uint32 escortState)
 
void RemoveEscortState (uint32 escortState)
 
void SetAutoAttack (bool on)
 
void SetCombatMove (bool on, bool stopMoving=false)
 
bool CanCombatMove ()
 
void SetFollow (Unit *target, float dist=0.0f, float angle=0.0f, uint32 credit=0, uint32 end=0, uint32 creditType=0)
 
void StopFollow (bool complete)
 
bool IsEscortInvokerInRange ()
 
void WaypointReached (uint32 nodeId, uint32 pathId) override
 
void WaypointPathEnded (uint32 nodeId, uint32 pathId) override
 
void SetTimedActionList (SmartScriptHolder &e, uint32 entry, Unit *invoker)
 
SmartScript * GetScript ()
 
void JustReachedHome () override
 
void JustEngagedWith (Unit *enemy) override
 
void EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER) override
 
void JustDied (Unit *killer) override
 
void KilledUnit (Unit *victim) override
 
void JustSummoned (Creature *creature) override
 
void SummonedCreatureDies (Creature *summon, Unit *killer) override
 
void AttackStart (Unit *who) override
 
void MoveInLineOfSight (Unit *who) override
 
void SpellHit (WorldObject *caster, SpellInfo const *spellInfo) override
 
void SpellHitTarget (WorldObject *target, SpellInfo const *spellInfo) override
 
void OnSpellCast (SpellInfo const *spellInfo) override
 
void OnSpellFailed (SpellInfo const *spellInfo) override
 
void OnSpellStart (SpellInfo const *spellInfo) override
 
void OnAuraApplied (AuraApplication const *aurApp) override
 
void OnAuraRemoved (AuraApplication const *aurApp) override
 
void DamageTaken (Unit *doneBy, uint32 &damage, DamageEffectType, SpellInfo const *) override
 
void HealReceived (Unit *doneBy, uint32 &addhealth) override
 
void UpdateAI (uint32 diff) override
 
void ReceiveEmote (Player *player, uint32 textEmote) override
 
void MovementInform (uint32 MovementType, uint32 Data) override
 
void IsSummonedBy (WorldObject *summoner) override
 
void DamageDealt (Unit *doneTo, uint32 &damage, DamageEffectType) override
 
void SummonedCreatureDespawn (Creature *unit) override
 
void CorpseRemoved (uint32 &respawnDelay) override
 == Triggered Actions Requested ==================
 
void OnDespawn () override
 
void PassengerBoarded (Unit *who, int8 seatId, bool apply) override
 == Fields =======================================
 
void InitializeAI () override
 
void JustAppeared () override
 
void OnCharmed (bool isNew) override
 
void DoAction (int32 param=0) override
 
uint32 GetData (uint32 id=0) const override
 
void SetData (uint32 id, uint32 value) override
 
void SetData (uint32 id, uint32 value, Unit *invoker)
 
void SetGUID (ObjectGuid const &guid, int32 id=0) override
 
ObjectGuid GetGUID (int32 id=0) const override
 
void SetRun (bool run=true)
 
void SetDisableGravity (bool disable=true)
 
void SetEvadeDisabled (bool disable=true)
 
void SetInvincibilityHpLevel (uint32 level)
 
bool OnGossipHello (Player *player) override
 
bool OnGossipSelect (Player *player, uint32 menuId, uint32 gossipListId) override
 
bool OnGossipSelectCode (Player *player, uint32 menuId, uint32 gossipListId, char const *code) override
 
void OnQuestAccept (Player *player, Quest const *quest) override
 
void OnQuestReward (Player *player, Quest const *quest, uint32 opt) override
 
void OnGameEvent (bool start, uint16 eventId) override
 
void SetDespawnTime (uint32 t)
 
void StartDespawn ()
 
void OnSpellClick (Unit *clicker, bool spellClickHandled) override
 
void SetWPPauseTimer (uint32 time)
 
void SetGossipReturn (bool val)
 
void SetEscortQuest (uint32 questID)
 
- Public Member Functions inherited from CreatureAI
 CreatureAI (Creature *creature)
 
virtual ~CreatureAI ()
 
bool IsEngaged () const
 
void Talk (uint8 id, WorldObject const *whisperTarget=nullptr)
 
void MoveInLineOfSight_Safe (Unit *who)
 == Reactions At =================================
 
void TriggerAlert (Unit const *who) const
 
void JustEnteredCombat (Unit *) override
 
virtual void JustStartedThreateningMe (Unit *who)
 
virtual void OnChannelFinished (SpellInfo const *)
 
virtual bool IsEscorted () const
 
void DoZoneInCombat (Creature *creature=nullptr)
 
virtual void OwnerAttackedBy (Unit *attacker)
 
virtual void OwnerAttacked (Unit *target)
 
virtual Optional< QuestGiverStatus > GetDialogStatus (Player *)
 == Gossip system ================================
 
virtual void WaypointStarted (uint32, uint32)
 == Waypoints system =============================
 
virtual bool CanSeeAlways (WorldObject const *)
 
virtual PlayerAI * GetAIForCharmedPlayer (Player *)
 
int32 VisualizeBoundary (Seconds duration, Unit *owner=nullptr, bool fill=false) const
 
virtual bool CheckInRoom ()
 
CreatureBoundary const * GetBoundary () const
 
void SetBoundary (CreatureBoundary const *boundary, bool negativeBoundaries=false)
 
bool IsInBoundary (Position const *who=nullptr) const
 
- Public Member Functions inherited from UnitAI
 UnitAI (Unit *unit)
 
virtual ~UnitAI ()
 
virtual bool CanAIAttack (Unit const *) const
 
virtual void Reset ()
 
Unit * SelectTarget (SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
 
template<class PREDICATE >
Unit * SelectTarget (SelectTargetMethod targetType, uint32 offset, PREDICATE const &predicate)
 
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
 
template<class PREDICATE >
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 offset, PREDICATE const &predicate)
 
virtual void JustExitedCombat ()
 
virtual void HealDone (Unit *, uint32 &)
 
virtual void SpellInterrupted (uint32, uint32)
 
void AttackStartCaster (Unit *victim, float dist)
 
SpellCastResult DoCast (uint32 spellId)
 
SpellCastResult DoCast (Unit *victim, uint32 spellId, CastSpellExtraArgs const &args={})
 
SpellCastResult DoCastSelf (uint32 spellId, CastSpellExtraArgs const &args={})
 
SpellCastResult DoCastVictim (uint32 spellId, CastSpellExtraArgs const &args={})
 
SpellCastResult DoCastAOE (uint32 spellId, CastSpellExtraArgs const &args={})
 
float DoGetSpellMaxRange (uint32 spellId, bool positive=false)
 
virtual bool ShouldSparWith (Unit const *) const
 
void DoMeleeAttackIfReady ()
 
bool DoSpellAttackIfReady (uint32 spellId)
 
virtual std::string GetDebugInfo () const
 

Static Public Member Functions

static int32 Permissible (Creature const *)
 
- Static Public Member Functions inherited from CreatureAI
static bool IsInBounds (CreatureBoundary const &boundary, Position const *who)
 
- Static Public Member Functions inherited from UnitAI
static void FillAISpellInfo ()
 

Private Member Functions

bool AssistPlayerInCombatAgainst (Unit *who)
 
void ReturnToLastOOCPos ()
 
void CheckConditions (uint32 diff)
 
void UpdatePath (uint32 diff)
 
void UpdateFollow (uint32 diff)
 
void UpdateDespawn (uint32 diff)
 

Private Attributes

SmartScript _script
 
bool _charmed
 
uint32 _followCreditType
 
uint32 _followArrivedTimer
 
uint32 _followCredit
 
uint32 _followArrivedEntry
 
ObjectGuid _followGUID
 
float _followDistance
 
float _followAngle
 
uint32 _escortState
 
uint32 _escortNPCFlags
 
uint32 _escortInvokerCheckTimer
 
uint32 _currentWaypointNode
 
bool _waypointReached
 
uint32 _waypointPauseTimer
 
bool _waypointPauseForced
 
bool _repeatWaypointPath
 
bool _OOCReached
 
bool _waypointPathEnded
 
bool _run
 
bool _evadeDisabled
 
bool _canAutoAttack
 
bool _canCombatMove
 
uint32 _invincibilityHPLevel
 
uint32 _despawnTime
 
uint32 _despawnState
 
bool _vehicleConditions
 
uint32 _vehicleConditionsTimer
 
bool _gossipReturn
 
uint32 _escortQuestId
 

Additional Inherited Members

- Public Types inherited from CreatureAI
enum  EvadeReason {
  EVADE_REASON_NO_HOSTILES , EVADE_REASON_BOUNDARY , EVADE_REASON_NO_PATH , EVADE_REASON_SEQUENCE_BREAK ,
  EVADE_REASON_OTHER
}
 
- Static Public Attributes inherited from UnitAI
static AISpellInfoType * AISpellInfo
 
- Protected Member Functions inherited from CreatureAI
bool UpdateVictim ()
 
Creature * DoSummon (uint32 entry, Position const &pos, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
Creature * DoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
Creature * DoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
void EngagementStart (Unit *who)
 
void EngagementOver ()
 
bool _EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER)
 
- Protected Attributes inherited from CreatureAI
Creature *const me
 
CreatureBoundary const * _boundary
 
bool _negateBoundary
 
- Protected Attributes inherited from UnitAI
Unit *const me
 

Detailed Description

Definition at line 39 of file SmartAI.h.

Constructor & Destructor Documentation

◆ ~SmartAI()

SmartAI::~SmartAI ( )
inline

Definition at line 42 of file SmartAI.h.

◆ SmartAI()

SmartAI::SmartAI ( Creature *  creature)
explicit

Member Function Documentation

◆ AddEscortState()

void SmartAI::AddEscortState ( uint32  escortState)
inline

Definition at line 63 of file SmartAI.h.

Referenced by EnterEvadeMode(), and PausePath().

◆ AssistPlayerInCombatAgainst()

◆ AttackStart()

◆ CanCombatMove()

bool SmartAI::CanCombatMove ( )
inline

Definition at line 76 of file SmartAI.h.

◆ CanResumePath()

bool SmartAI::CanResumePath ( )

Definition at line 127 of file SmartAI.cpp.

References HasEscortState(), SMART_ESCORT_ESCORTING, and SMART_ESCORT_PAUSED.

◆ CheckConditions()

◆ CorpseRemoved()

void SmartAI::CorpseRemoved ( uint32 &  )
overridevirtual

== Triggered Actions Requested ==================

== State checks =================================

Reimplemented from CreatureAI.

Definition at line 673 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_CORPSE_REMOVED.

◆ DamageDealt()

void SmartAI::DamageDealt ( Unit *  doneTo,
uint32 &  damage,
DamageEffectType   
)
overridevirtual

Reimplemented from UnitAI.

Definition at line 663 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_DAMAGED_TARGET.

◆ DamageTaken()

void SmartAI::DamageTaken ( Unit *  doneBy,
uint32 &  damage,
DamageEffectType  ,
SpellInfo const *   
)
overridevirtual

◆ DoAction()

void SmartAI::DoAction ( int32  param = 0)
overridevirtual

Reimplemented from UnitAI.

Definition at line 727 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ACTION_DONE.

◆ EndPath()

◆ EnterEvadeMode()

◆ GetData()

uint32 SmartAI::GetData ( uint32  id = 0) const
overridevirtual

Reimplemented from UnitAI.

Definition at line 732 of file SmartAI.cpp.

◆ GetGUID()

ObjectGuid SmartAI::GetGUID ( int32  id = 0) const
overridevirtual

Reimplemented from UnitAI.

Definition at line 744 of file SmartAI.cpp.

References ObjectGuid::Empty.

◆ GetScript()

◆ HasEscortState()

bool SmartAI::HasEscortState ( uint32  escortState) const
inline

◆ HealReceived()

void SmartAI::HealReceived ( Unit *  doneBy,
uint32 &  addhealth 
)
overridevirtual

Reimplemented from UnitAI.

Definition at line 648 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_RECEIVE_HEAL.

◆ InitializeAI()

◆ IsAIControlled()

◆ IsEscortInvokerInRange()

◆ IsSummonedBy()

void SmartAI::IsSummonedBy ( WorldObject *  summoner)
overridevirtual

◆ JustAppeared()

void SmartAI::JustAppeared ( )
overridevirtual

◆ JustDied()

void SmartAI::JustDied ( Unit *  killer)
overridevirtual

◆ JustEngagedWith()

void SmartAI::JustEngagedWith ( Unit *  enemy)
overridevirtual

◆ JustReachedHome()

◆ JustSummoned()

void SmartAI::JustSummoned ( Creature *  creature)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 569 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_SUMMONED_UNIT.

◆ KilledUnit()

void SmartAI::KilledUnit ( Unit *  victim)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 564 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_KILL.

◆ LoadPath()

WaypointPath const * SmartAI::LoadPath ( uint32  entry)

◆ MoveInLineOfSight()

void SmartAI::MoveInLineOfSight ( Unit *  who)
overridevirtual

◆ MovementInform()

◆ OnAuraApplied()

void SmartAI::OnAuraApplied ( AuraApplication const *  aurApp)
overridevirtual

◆ OnAuraRemoved()

void SmartAI::OnAuraRemoved ( AuraApplication const *  aurApp)
overridevirtual

◆ OnCharmed()

◆ OnDespawn()

void SmartAI::OnDespawn ( )
overridevirtual

Reimplemented from UnitAI.

Definition at line 678 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ON_DESPAWN.

◆ OnGameEvent()

void SmartAI::OnGameEvent ( bool  start,
uint16  eventId 
)
overridevirtual

◆ OnGossipHello()

bool SmartAI::OnGossipHello ( Player *  player)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 765 of file SmartAI.cpp.

References _gossipReturn, GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_GOSSIP_HELLO.

◆ OnGossipSelect()

bool SmartAI::OnGossipSelect ( Player *  player,
uint32  menuId,
uint32  gossipListId 
)
overridevirtual

◆ OnGossipSelectCode()

bool SmartAI::OnGossipSelectCode ( Player *  player,
uint32  menuId,
uint32  gossipListId,
char const *  code 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 779 of file SmartAI.cpp.

◆ OnQuestAccept()

void SmartAI::OnQuestAccept ( Player *  player,
Quest const *  quest 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 784 of file SmartAI.cpp.

References Quest::GetQuestId(), GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ACCEPTED_QUEST.

◆ OnQuestReward()

void SmartAI::OnQuestReward ( Player *  player,
Quest const *  quest,
uint32  opt 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 789 of file SmartAI.cpp.

References Quest::GetQuestId(), GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_REWARD_QUEST.

◆ OnSpellCast()

void SmartAI::OnSpellCast ( SpellInfo const *  spellInfo)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 612 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ON_SPELL_CAST.

◆ OnSpellClick()

void SmartAI::OnSpellClick ( Unit *  clicker,
bool  spellClickHandled 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 887 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ON_SPELLCLICK.

◆ OnSpellFailed()

void SmartAI::OnSpellFailed ( SpellInfo const *  spellInfo)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 617 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ON_SPELL_FAILED.

◆ OnSpellStart()

void SmartAI::OnSpellStart ( SpellInfo const *  spellInfo)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 622 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_ON_SPELL_START.

◆ PassengerBoarded()

void SmartAI::PassengerBoarded ( Unit *  ,
int8  ,
bool   
)
overridevirtual

== Fields =======================================

Reimplemented from CreatureAI.

Definition at line 683 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), SMART_EVENT_PASSENGER_BOARDED, and SMART_EVENT_PASSENGER_REMOVED.

◆ PausePath()

◆ Permissible()

static int32 SmartAI::Permissible ( Creature const *  )
inlinestatic

Definition at line 46 of file SmartAI.h.

References PERMIT_BASE_NO.

◆ ReceiveEmote()

void SmartAI::ReceiveEmote ( Player *  player,
uint32  textEmote 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 653 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_RECEIVE_EMOTE.

◆ RemoveEscortState()

void SmartAI::RemoveEscortState ( uint32  escortState)
inline

Definition at line 67 of file SmartAI.h.

Referenced by EndPath(), ResumePath(), and UpdatePath().

◆ ResumePath()

◆ ReturnToLastOOCPos()

void SmartAI::ReturnToLastOOCPos ( )
private

◆ SetAutoAttack()

void SmartAI::SetAutoAttack ( bool  on)
inline

Definition at line 71 of file SmartAI.h.

◆ SetCombatMove()

◆ SetData() [1/2]

void SmartAI::SetData ( uint32  id,
uint32  value 
)
inlineoverridevirtual

Reimplemented from UnitAI.

Definition at line 190 of file SmartAI.h.

References SetData().

Referenced by SetData().

◆ SetData() [2/2]

void SmartAI::SetData ( uint32  id,
uint32  value,
Unit *  invoker 
)

Definition at line 737 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_DATA_SET.

◆ SetDespawnTime()

void SmartAI::SetDespawnTime ( uint32  t)
inline

Definition at line 218 of file SmartAI.h.

Referenced by StopFollow(), and StopPath().

◆ SetDisableGravity()

void SmartAI::SetDisableGravity ( bool  disable = true)

Definition at line 755 of file SmartAI.cpp.

References CreatureAI::me, and Unit::SetDisableGravity().

◆ SetEscortQuest()

void SmartAI::SetEscortQuest ( uint32  questID)
inline

Definition at line 240 of file SmartAI.h.

◆ SetEvadeDisabled()

void SmartAI::SetEvadeDisabled ( bool  disable = true)

Definition at line 760 of file SmartAI.cpp.

References _evadeDisabled.

◆ SetFollow()

void SmartAI::SetFollow ( Unit *  target,
float  dist = 0.0f,
float  angle = 0.0f,
uint32  credit = 0,
uint32  end = 0,
uint32  creditType = 0 
)

◆ SetGossipReturn()

void SmartAI::SetGossipReturn ( bool  val)
inline

Definition at line 235 of file SmartAI.h.

◆ SetGUID()

void SmartAI::SetGUID ( ObjectGuid const &  guid,
int32  id = 0 
)
overridevirtual

Reimplemented from UnitAI.

Definition at line 742 of file SmartAI.cpp.

◆ SetInvincibilityHpLevel()

void SmartAI::SetInvincibilityHpLevel ( uint32  level)
inline

Definition at line 206 of file SmartAI.h.

Referenced by SmartScript::ProcessAction().

◆ SetRun()

void SmartAI::SetRun ( bool  run = true)

◆ SetTimedActionList()

void SmartAI::SetTimedActionList ( SmartScriptHolder &  e,
uint32  entry,
Unit *  invoker 
)

Definition at line 877 of file SmartAI.cpp.

References GetScript(), and SmartScript::SetTimedActionList().

◆ SetWPPauseTimer()

void SmartAI::SetWPPauseTimer ( uint32  time)
inline

Definition at line 230 of file SmartAI.h.

◆ SpellHit()

void SmartAI::SpellHit ( WorldObject *  caster,
SpellInfo const *  spellInfo 
)
overridevirtual

◆ SpellHitTarget()

void SmartAI::SpellHitTarget ( WorldObject *  target,
SpellInfo const *  spellInfo 
)
overridevirtual

◆ StartDespawn()

void SmartAI::StartDespawn ( )
inline

Definition at line 223 of file SmartAI.h.

Referenced by EndPath(), StopFollow(), and StopPath().

◆ StartPath()

◆ StopFollow()

◆ StopPath()

◆ SummonedCreatureDespawn()

void SmartAI::SummonedCreatureDespawn ( Creature *  unit)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 668 of file SmartAI.cpp.

References Object::GetEntry(), GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_SUMMON_DESPAWNED.

◆ SummonedCreatureDies()

void SmartAI::SummonedCreatureDies ( Creature *  summon,
Unit *  killer 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 574 of file SmartAI.cpp.

References GetScript(), SmartScript::ProcessEventsFor(), and SMART_EVENT_SUMMONED_UNIT_DIES.

◆ UpdateAI()

◆ UpdateDespawn()

void SmartAI::UpdateDespawn ( uint32  diff)
private

◆ UpdateFollow()

void SmartAI::UpdateFollow ( uint32  diff)
private

◆ UpdatePath()

◆ WaypointPathEnded()

void SmartAI::WaypointPathEnded ( uint32  nodeId,
uint32  pathId 
)
overridevirtual
Todo:
move escort related logic

Reimplemented from CreatureAI.

Definition at line 373 of file SmartAI.cpp.

References GetScript(), HasEscortState(), SmartScript::ProcessEventsFor(), SMART_ESCORT_ESCORTING, and SMART_EVENT_WAYPOINT_ENDED.

◆ WaypointReached()

Member Data Documentation

◆ _canAutoAttack

bool SmartAI::_canAutoAttack
private

Definition at line 276 of file SmartAI.h.

Referenced by AttackStart(), and UpdateAI().

◆ _canCombatMove

bool SmartAI::_canCombatMove
private

Definition at line 277 of file SmartAI.h.

Referenced by AttackStart(), and SetCombatMove().

◆ _charmed

bool SmartAI::_charmed
private

Definition at line 254 of file SmartAI.h.

Referenced by IsAIControlled(), and OnCharmed().

◆ _currentWaypointNode

uint32 SmartAI::_currentWaypointNode
private

Definition at line 266 of file SmartAI.h.

Referenced by EndPath(), PausePath(), ResumePath(), StartPath(), StopPath(), and WaypointReached().

◆ _despawnState

uint32 SmartAI::_despawnState
private

Definition at line 281 of file SmartAI.h.

Referenced by EndPath(), InitializeAI(), StopPath(), and UpdateDespawn().

◆ _despawnTime

uint32 SmartAI::_despawnTime
private

Definition at line 280 of file SmartAI.h.

Referenced by InitializeAI(), and UpdateDespawn().

◆ _escortInvokerCheckTimer

uint32 SmartAI::_escortInvokerCheckTimer
private

Definition at line 265 of file SmartAI.h.

Referenced by UpdatePath().

◆ _escortNPCFlags

uint32 SmartAI::_escortNPCFlags
private

Definition at line 264 of file SmartAI.h.

Referenced by EndPath(), and StartPath().

◆ _escortQuestId

uint32 SmartAI::_escortQuestId
private

Definition at line 290 of file SmartAI.h.

Referenced by EndPath(), StopPath(), and UpdatePath().

◆ _escortState

uint32 SmartAI::_escortState
private

Definition at line 263 of file SmartAI.h.

Referenced by InitializeAI(), and StartPath().

◆ _evadeDisabled

bool SmartAI::_evadeDisabled
private

Definition at line 275 of file SmartAI.h.

Referenced by EnterEvadeMode(), and SetEvadeDisabled().

◆ _followAngle

float SmartAI::_followAngle
private

Definition at line 261 of file SmartAI.h.

Referenced by EnterEvadeMode(), InitializeAI(), SetFollow(), and StopFollow().

◆ _followArrivedEntry

uint32 SmartAI::_followArrivedEntry
private

Definition at line 258 of file SmartAI.h.

Referenced by InitializeAI(), SetFollow(), StopFollow(), and UpdateFollow().

◆ _followArrivedTimer

uint32 SmartAI::_followArrivedTimer
private

Definition at line 256 of file SmartAI.h.

Referenced by InitializeAI(), SetFollow(), StopFollow(), and UpdateFollow().

◆ _followCredit

uint32 SmartAI::_followCredit
private

Definition at line 257 of file SmartAI.h.

Referenced by InitializeAI(), SetFollow(), and StopFollow().

◆ _followCreditType

uint32 SmartAI::_followCreditType
private

Definition at line 255 of file SmartAI.h.

Referenced by InitializeAI(), SetFollow(), and StopFollow().

◆ _followDistance

float SmartAI::_followDistance
private

Definition at line 260 of file SmartAI.h.

Referenced by EnterEvadeMode(), InitializeAI(), SetFollow(), and StopFollow().

◆ _followGUID

ObjectGuid SmartAI::_followGUID
private

Definition at line 259 of file SmartAI.h.

Referenced by EnterEvadeMode(), InitializeAI(), SetFollow(), StopFollow(), and UpdateFollow().

◆ _gossipReturn

bool SmartAI::_gossipReturn
private

Definition at line 288 of file SmartAI.h.

Referenced by OnGossipHello(), and OnGossipSelect().

◆ _invincibilityHPLevel

uint32 SmartAI::_invincibilityHPLevel
private

Definition at line 278 of file SmartAI.h.

Referenced by DamageTaken().

◆ _OOCReached

bool SmartAI::_OOCReached
private

Definition at line 271 of file SmartAI.h.

Referenced by MovementInform(), and UpdatePath().

◆ _repeatWaypointPath

bool SmartAI::_repeatWaypointPath
private

Definition at line 270 of file SmartAI.h.

Referenced by EndPath(), OnCharmed(), and StartPath().

◆ _run

bool SmartAI::_run
private

◆ _script

SmartScript SmartAI::_script
private

Definition at line 253 of file SmartAI.h.

◆ _vehicleConditions

bool SmartAI::_vehicleConditions
private

Definition at line 284 of file SmartAI.h.

Referenced by CheckConditions(), and SmartAI().

◆ _vehicleConditionsTimer

uint32 SmartAI::_vehicleConditionsTimer
private

Definition at line 285 of file SmartAI.h.

Referenced by CheckConditions().

◆ _waypointPathEnded

bool SmartAI::_waypointPathEnded
private

Definition at line 272 of file SmartAI.h.

Referenced by StartPath(), UpdatePath(), and WaypointReached().

◆ _waypointPauseForced

bool SmartAI::_waypointPauseForced
private

Definition at line 269 of file SmartAI.h.

Referenced by PausePath(), ResumePath(), UpdatePath(), and WaypointReached().

◆ _waypointPauseTimer

uint32 SmartAI::_waypointPauseTimer
private

Definition at line 268 of file SmartAI.h.

Referenced by EndPath(), PausePath(), ResumePath(), UpdatePath(), and WaypointReached().

◆ _waypointReached

bool SmartAI::_waypointReached
private

Definition at line 267 of file SmartAI.h.

Referenced by PausePath(), ResumePath(), UpdatePath(), and WaypointReached().


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