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)
 
SmartScriptGetScript ()
 
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< QuestGiverStatusGetDialogStatus (Player *)
 == Gossip system ================================
 
virtual void WaypointStarted (uint32, uint32)
 == Waypoints system =============================
 
virtual bool CanSeeAlways (WorldObject const *)
 
virtual PlayerAIGetAIForCharmedPlayer (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 ()
 
UnitSelectTarget (SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
 
template<class PREDICATE >
UnitSelectTarget (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 spell)
 
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 AISpellInfoTypeAISpellInfo
 
- Protected Member Functions inherited from CreatureAI
bool UpdateVictim ()
 
CreatureDoSummon (uint32 entry, Position const &pos, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
CreatureDoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
CreatureDoSummonFlyer (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

Definition at line 34 of file SmartAI.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ AddEscortState()

void SmartAI::AddEscortState ( uint32  escortState)
inline

Definition at line 63 of file SmartAI.h.

+ Here is the caller graph for this function:

◆ AssistPlayerInCombatAgainst()

bool SmartAI::AssistPlayerInCombatAgainst ( Unit who)
private

Definition at line 458 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ AttackStart()

void SmartAI::AttackStart ( Unit who)
overridevirtual

Reimplemented from UnitAI.

Definition at line 579 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ 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.

+ Here is the call graph for this function:

◆ CheckConditions()

void SmartAI::CheckConditions ( uint32  diff)
private

Definition at line 895 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CorpseRemoved()

void SmartAI::CorpseRemoved ( uint32 )
overridevirtual

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

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

Reimplemented from CreatureAI.

Definition at line 673 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ DamageDealt()

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

Reimplemented from UnitAI.

Definition at line 663 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ DamageTaken()

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

Reimplemented from UnitAI.

Definition at line 637 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ DoAction()

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

Reimplemented from UnitAI.

Definition at line 727 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ EndPath()

void SmartAI::EndPath ( bool  fail = false)

Definition at line 177 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ EnterEvadeMode()

void SmartAI::EnterEvadeMode ( EvadeReason  why = EVADE_REASON_OTHER)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 396 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ 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.

◆ GetScript()

SmartScript * SmartAI::GetScript ( )
inline

Definition at line 88 of file SmartAI.h.

+ Here is the caller graph for this function:

◆ HasEscortState()

bool SmartAI::HasEscortState ( uint32  escortState) const
inline

Definition at line 59 of file SmartAI.h.

+ Here is the caller graph for this function:

◆ HealReceived()

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

Reimplemented from UnitAI.

Definition at line 648 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ InitializeAI()

void SmartAI::InitializeAI ( )
overridevirtual

Reimplemented from UnitAI.

Definition at line 501 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ IsAIControlled()

bool SmartAI::IsAIControlled ( ) const

Definition at line 42 of file SmartAI.cpp.

+ Here is the caller graph for this function:

◆ IsEscortInvokerInRange()

bool SmartAI::IsEscortInvokerInRange ( )

Definition at line 303 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsSummonedBy()

void SmartAI::IsSummonedBy ( WorldObject summoner)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 658 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ JustAppeared()

void SmartAI::JustAppeared ( )
overridevirtual

Reimplemented from CreatureAI.

Definition at line 517 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ JustDied()

void SmartAI::JustDied ( Unit killer)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 556 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ JustEngagedWith()

void SmartAI::JustEngagedWith ( Unit enemy)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 548 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ JustReachedHome()

void SmartAI::JustReachedHome ( )
overridevirtual

Reimplemented from CreatureAI.

Definition at line 528 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ JustSummoned()

void SmartAI::JustSummoned ( Creature creature)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 569 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ KilledUnit()

void SmartAI::KilledUnit ( Unit victim)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 564 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ LoadPath()

WaypointPath const * SmartAI::LoadPath ( uint32  entry)

Definition at line 76 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MoveInLineOfSight()

void SmartAI::MoveInLineOfSight ( Unit who)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 442 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ MovementInform()

void SmartAI::MovementInform ( uint32  MovementType,
uint32  Data 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 382 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnAuraApplied()

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

Reimplemented from CreatureAI.

Definition at line 627 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnAuraRemoved()

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

Reimplemented from CreatureAI.

Definition at line 632 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnCharmed()

void SmartAI::OnCharmed ( bool  isNew)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 688 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnDespawn()

void SmartAI::OnDespawn ( )
overridevirtual

Reimplemented from UnitAI.

Definition at line 678 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnGameEvent()

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

Reimplemented from UnitAI.

Definition at line 882 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnGossipHello()

bool SmartAI::OnGossipHello ( Player player)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 765 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnGossipSelect()

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

Reimplemented from CreatureAI.

Definition at line 772 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ 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.

+ Here is the call graph for this function:

◆ OnQuestReward()

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

Reimplemented from CreatureAI.

Definition at line 789 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnSpellCast()

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

Reimplemented from CreatureAI.

Definition at line 612 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnSpellClick()

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

Reimplemented from CreatureAI.

Definition at line 887 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnSpellFailed()

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

Reimplemented from CreatureAI.

Definition at line 617 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ OnSpellStart()

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

Reimplemented from CreatureAI.

Definition at line 622 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ PassengerBoarded()

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

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

Reimplemented from CreatureAI.

Definition at line 683 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ PausePath()

void SmartAI::PausePath ( uint32  delay,
bool  forced = false 
)

Definition at line 92 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ Permissible()

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

Definition at line 46 of file SmartAI.h.

◆ ReceiveEmote()

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

Reimplemented from CreatureAI.

Definition at line 653 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ RemoveEscortState()

void SmartAI::RemoveEscortState ( uint32  escortState)
inline

Definition at line 67 of file SmartAI.h.

+ Here is the caller graph for this function:

◆ ResumePath()

void SmartAI::ResumePath ( )

Definition at line 251 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ReturnToLastOOCPos()

void SmartAI::ReturnToLastOOCPos ( )
private

Definition at line 265 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetAutoAttack()

void SmartAI::SetAutoAttack ( bool  on)
inline

Definition at line 71 of file SmartAI.h.

◆ SetCombatMove()

void SmartAI::SetCombatMove ( bool  on,
bool  stopMoving = false 
)

Definition at line 794 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ SetData() [1/2]

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

Reimplemented from UnitAI.

Definition at line 190 of file SmartAI.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetData() [2/2]

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

Definition at line 737 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ SetDespawnTime()

void SmartAI::SetDespawnTime ( uint32  t)
inline

Definition at line 218 of file SmartAI.h.

+ Here is the caller graph for this function:

◆ SetDisableGravity()

void SmartAI::SetDisableGravity ( bool  disable = true)

Definition at line 755 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ 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.

◆ SetFollow()

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

Definition at line 829 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ 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.

+ Here is the caller graph for this function:

◆ SetRun()

void SmartAI::SetRun ( bool  run = true)

Definition at line 749 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetTimedActionList()

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

Definition at line 877 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ 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

Reimplemented from CreatureAI.

Definition at line 602 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ SpellHitTarget()

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

Reimplemented from CreatureAI.

Definition at line 607 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ StartDespawn()

void SmartAI::StartDespawn ( )
inline

Definition at line 223 of file SmartAI.h.

+ Here is the caller graph for this function:

◆ StartPath()

void SmartAI::StartPath ( uint32  pathId = 0,
bool  repeat = false,
Unit invoker = nullptr,
uint32  nodeId = 1 
)

Definition at line 47 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StopFollow()

void SmartAI::StopFollow ( bool  complete)

Definition at line 848 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StopPath()

void SmartAI::StopPath ( uint32  DespawnTime = 0,
uint32  quest = 0,
bool  fail = false 
)

Definition at line 138 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SummonedCreatureDespawn()

void SmartAI::SummonedCreatureDespawn ( Creature unit)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 668 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ SummonedCreatureDies()

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

Reimplemented from CreatureAI.

Definition at line 574 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ UpdateAI()

void SmartAI::UpdateAI ( uint32  diff)
overridevirtual

Implements UnitAI.

Definition at line 274 of file SmartAI.cpp.

+ Here is the call graph for this function:

◆ UpdateDespawn()

void SmartAI::UpdateDespawn ( uint32  diff)
private

Definition at line 996 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UpdateFollow()

void SmartAI::UpdateFollow ( uint32  diff)
private

Definition at line 977 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UpdatePath()

void SmartAI::UpdatePath ( uint32  diff)
private

Definition at line 924 of file SmartAI.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ 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.

+ Here is the call graph for this function:

◆ WaypointReached()

void SmartAI::WaypointReached ( uint32  nodeId,
uint32  pathId 
)
overridevirtual

Reimplemented from CreatureAI.

Definition at line 344 of file SmartAI.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ _canAutoAttack

bool SmartAI::_canAutoAttack
private

Definition at line 276 of file SmartAI.h.

◆ _canCombatMove

bool SmartAI::_canCombatMove
private

Definition at line 277 of file SmartAI.h.

◆ _charmed

bool SmartAI::_charmed
private

Definition at line 254 of file SmartAI.h.

◆ _currentWaypointNode

uint32 SmartAI::_currentWaypointNode
private

Definition at line 266 of file SmartAI.h.

◆ _despawnState

uint32 SmartAI::_despawnState
private

Definition at line 281 of file SmartAI.h.

◆ _despawnTime

uint32 SmartAI::_despawnTime
private

Definition at line 280 of file SmartAI.h.

◆ _escortInvokerCheckTimer

uint32 SmartAI::_escortInvokerCheckTimer
private

Definition at line 265 of file SmartAI.h.

◆ _escortNPCFlags

uint32 SmartAI::_escortNPCFlags
private

Definition at line 264 of file SmartAI.h.

◆ _escortQuestId

uint32 SmartAI::_escortQuestId
private

Definition at line 290 of file SmartAI.h.

◆ _escortState

uint32 SmartAI::_escortState
private

Definition at line 263 of file SmartAI.h.

◆ _evadeDisabled

bool SmartAI::_evadeDisabled
private

Definition at line 275 of file SmartAI.h.

◆ _followAngle

float SmartAI::_followAngle
private

Definition at line 261 of file SmartAI.h.

◆ _followArrivedEntry

uint32 SmartAI::_followArrivedEntry
private

Definition at line 258 of file SmartAI.h.

◆ _followArrivedTimer

uint32 SmartAI::_followArrivedTimer
private

Definition at line 256 of file SmartAI.h.

◆ _followCredit

uint32 SmartAI::_followCredit
private

Definition at line 257 of file SmartAI.h.

◆ _followCreditType

uint32 SmartAI::_followCreditType
private

Definition at line 255 of file SmartAI.h.

◆ _followDistance

float SmartAI::_followDistance
private

Definition at line 260 of file SmartAI.h.

◆ _followGUID

ObjectGuid SmartAI::_followGUID
private

Definition at line 259 of file SmartAI.h.

◆ _gossipReturn

bool SmartAI::_gossipReturn
private

Definition at line 288 of file SmartAI.h.

◆ _invincibilityHPLevel

uint32 SmartAI::_invincibilityHPLevel
private

Definition at line 278 of file SmartAI.h.

◆ _OOCReached

bool SmartAI::_OOCReached
private

Definition at line 271 of file SmartAI.h.

◆ _repeatWaypointPath

bool SmartAI::_repeatWaypointPath
private

Definition at line 270 of file SmartAI.h.

◆ _run

bool SmartAI::_run
private

Definition at line 274 of file SmartAI.h.

◆ _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.

◆ _vehicleConditionsTimer

uint32 SmartAI::_vehicleConditionsTimer
private

Definition at line 285 of file SmartAI.h.

◆ _waypointPathEnded

bool SmartAI::_waypointPathEnded
private

Definition at line 272 of file SmartAI.h.

◆ _waypointPauseForced

bool SmartAI::_waypointPauseForced
private

Definition at line 269 of file SmartAI.h.

◆ _waypointPauseTimer

uint32 SmartAI::_waypointPauseTimer
private

Definition at line 268 of file SmartAI.h.

◆ _waypointReached

bool SmartAI::_waypointReached
private

Definition at line 267 of file SmartAI.h.


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