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

#include <SmartAI.h>

+ Inheritance diagram for SmartAI:

Public Member Functions

 ~SmartAI ()
 
 SmartAI (Creature *creature, uint32 scriptId={})
 
bool IsAIControlled () const
 
void StartPath (uint32 pathId=0, bool repeat=false, Unit *invoker=nullptr, uint32 nodeId=0, uint32 fadeObjectDuration=0, Scripting::v2::ActionResultSetter< MovementStopReason > &&scriptResult={})
 
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 SetCombatMove (bool on, bool stopMoving=false)
 
bool CanCombatMove () const
 
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, uint32 startFromEventId=0)
 
SmartScript * GetScript ()
 
void JustReachedHome () override
 
void JustEngagedWith (Unit *enemy) override
 
void EnterEvadeMode (EvadeReason why) 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
 == Triggered Actions Requested ==================
 
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
 == State checks =================================
 
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) override
 
uint32 GetData (uint32 id) const override
 
void SetData (uint32 id, uint32 value) override
 
void SetData (uint32 id, uint32 value, Unit *invoker)
 
void SetGUID (ObjectGuid const &guid, int32 id) override
 
ObjectGuid GetGUID (int32 id) const override
 
void SetRun (bool run=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, LootItemType type, 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, uint32 scriptId={}) noexcept
 
virtual ~CreatureAI ()
 
uint32 GetId () const
 
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 OnHealthDepleted (Unit *, bool)
 
virtual void JustSummonedGameobject (GameObject *)
 
virtual void SummonedGameobjectDespawn (GameObject *)
 
virtual void JustRegisteredDynObject (DynamicObject *)
 
virtual void JustUnregisteredDynObject (DynamicObject *)
 
virtual void JustRegisteredAreaTrigger (AreaTrigger *)
 
virtual void JustUnregisteredAreaTrigger (AreaTrigger *)
 
virtual void OnChannelFinished (SpellInfo const *)
 
virtual bool IsEscorted () const
 
void DoZoneInCombat ()
 
virtual void OwnerAttackedBy (Unit *attacker)
 
virtual void OwnerAttacked (Unit *target)
 
virtual Optional< QuestGiverStatus > GetDialogStatus (Player const *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={})
 
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 void DoZoneInCombat (Creature *creature)
 
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 _currentWaypointNodeId
 
bool _waypointReached
 
uint32 _waypointPauseTimer
 
bool _waypointPauseForced
 
bool _repeatWaypointPath
 
bool _OOCReached
 
bool _waypointPathEnded
 
bool _run
 
bool _evadeDisabled
 
bool _canCombatMove
 
uint32 _invincibilityHPLevel
 
uint32 _despawnTime
 
uint32 _despawnState
 
bool _vehicleConditions
 
uint32 _vehicleConditionsTimer
 
bool _gossipReturn
 
uint32 _escortQuestId
 

Additional Inherited Members

- Static Public Attributes inherited from UnitAI
static std::unordered_map< std::pair< uint32, Difficulty >, 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=EvadeReason::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 42 of file SmartAI.h.

Constructor & Destructor Documentation

◆ ~SmartAI()

SmartAI::~SmartAI ( )
inline

Definition at line 45 of file SmartAI.h.

◆ SmartAI()

SmartAI::SmartAI ( Creature *  creature,
uint32  scriptId = {} 
)
explicit

Member Function Documentation

◆ AddEscortState()

void SmartAI::AddEscortState ( uint32  escortState)
inline

Definition at line 67 of file SmartAI.h.

Referenced by EnterEvadeMode(), and PausePath().

◆ AssistPlayerInCombatAgainst()

◆ AttackStart()

void SmartAI::AttackStart ( Unit *  victim)
overridevirtual

◆ CanCombatMove()

bool SmartAI::CanCombatMove ( ) const
inline

Definition at line 76 of file SmartAI.h.

◆ CanResumePath()

bool SmartAI::CanResumePath ( )

Definition at line 135 of file SmartAI.cpp.

References HasEscortState(), SMART_ESCORT_ESCORTING, and SMART_ESCORT_PAUSED.

◆ CheckConditions()

◆ CorpseRemoved()

void SmartAI::CorpseRemoved ( uint32 &  )
overridevirtual

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

Reimplemented from CreatureAI.

Definition at line 666 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 656 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)
overridevirtual

Reimplemented from UnitAI.

Definition at line 720 of file SmartAI.cpp.

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

◆ EndPath()

◆ EnterEvadeMode()

◆ GetData()

uint32 SmartAI::GetData ( uint32  id) const
overridevirtual

Reimplemented from UnitAI.

Definition at line 725 of file SmartAI.cpp.

◆ GetGUID()

ObjectGuid SmartAI::GetGUID ( int32  id) const
overridevirtual

Reimplemented from UnitAI.

Definition at line 737 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 641 of file SmartAI.cpp.

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

◆ InitializeAI()

◆ IsAIControlled()

bool SmartAI::IsAIControlled ( ) const

◆ 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 562 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 557 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 671 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 753 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

Reimplemented from CreatureAI.

Definition at line 760 of file SmartAI.cpp.

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

◆ OnGossipSelectCode()

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

Reimplemented from CreatureAI.

Definition at line 767 of file SmartAI.cpp.

◆ OnQuestAccept()

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

Reimplemented from CreatureAI.

Definition at line 772 of file SmartAI.cpp.

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

◆ OnQuestReward()

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

Reimplemented from CreatureAI.

Definition at line 777 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 605 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 875 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 610 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 615 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 676 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 49 of file SmartAI.h.

References PERMIT_BASE_NO.

◆ ReceiveEmote()

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

Reimplemented from CreatureAI.

Definition at line 646 of file SmartAI.cpp.

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

◆ RemoveEscortState()

void SmartAI::RemoveEscortState ( uint32  escortState)
inline

Definition at line 71 of file SmartAI.h.

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

◆ ResumePath()

◆ ReturnToLastOOCPos()

void SmartAI::ReturnToLastOOCPos ( )
private

◆ 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 730 of file SmartAI.cpp.

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

◆ SetDespawnTime()

void SmartAI::SetDespawnTime ( uint32  t)
inline

Definition at line 216 of file SmartAI.h.

Referenced by StopFollow(), and StopPath().

◆ SetEscortQuest()

void SmartAI::SetEscortQuest ( uint32  questID)
inline

Definition at line 238 of file SmartAI.h.

◆ SetEvadeDisabled()

void SmartAI::SetEvadeDisabled ( bool  disable = true)

Definition at line 748 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 233 of file SmartAI.h.

◆ SetGUID()

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

Reimplemented from UnitAI.

Definition at line 735 of file SmartAI.cpp.

◆ SetInvincibilityHpLevel()

void SmartAI::SetInvincibilityHpLevel ( uint32  level)
inline

Definition at line 204 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,
uint32  startFromEventId = 0 
)

Definition at line 865 of file SmartAI.cpp.

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

◆ SetWPPauseTimer()

void SmartAI::SetWPPauseTimer ( uint32  time)
inline

Definition at line 228 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 221 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 661 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 567 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 366 of file SmartAI.cpp.

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

◆ WaypointReached()

Member Data Documentation

◆ _canCombatMove

bool SmartAI::_canCombatMove
private

Definition at line 274 of file SmartAI.h.

Referenced by AttackStart(), and SetCombatMove().

◆ _charmed

bool SmartAI::_charmed
private

Definition at line 252 of file SmartAI.h.

Referenced by IsAIControlled(), and OnCharmed().

◆ _currentWaypointNodeId

uint32 SmartAI::_currentWaypointNodeId
private

Definition at line 264 of file SmartAI.h.

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

◆ _despawnState

uint32 SmartAI::_despawnState
private

Definition at line 278 of file SmartAI.h.

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

◆ _despawnTime

uint32 SmartAI::_despawnTime
private

Definition at line 277 of file SmartAI.h.

Referenced by InitializeAI(), and UpdateDespawn().

◆ _escortInvokerCheckTimer

uint32 SmartAI::_escortInvokerCheckTimer
private

Definition at line 263 of file SmartAI.h.

Referenced by UpdatePath().

◆ _escortNPCFlags

uint32 SmartAI::_escortNPCFlags
private

Definition at line 262 of file SmartAI.h.

Referenced by EndPath(), and StartPath().

◆ _escortQuestId

uint32 SmartAI::_escortQuestId
private

Definition at line 287 of file SmartAI.h.

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

◆ _escortState

uint32 SmartAI::_escortState
private

Definition at line 261 of file SmartAI.h.

Referenced by InitializeAI(), and StartPath().

◆ _evadeDisabled

bool SmartAI::_evadeDisabled
private

Definition at line 273 of file SmartAI.h.

Referenced by EnterEvadeMode(), and SetEvadeDisabled().

◆ _followAngle

float SmartAI::_followAngle
private

Definition at line 259 of file SmartAI.h.

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

◆ _followArrivedEntry

uint32 SmartAI::_followArrivedEntry
private

Definition at line 256 of file SmartAI.h.

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

◆ _followArrivedTimer

uint32 SmartAI::_followArrivedTimer
private

Definition at line 254 of file SmartAI.h.

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

◆ _followCredit

uint32 SmartAI::_followCredit
private

Definition at line 255 of file SmartAI.h.

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

◆ _followCreditType

uint32 SmartAI::_followCreditType
private

Definition at line 253 of file SmartAI.h.

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

◆ _followDistance

float SmartAI::_followDistance
private

Definition at line 258 of file SmartAI.h.

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

◆ _followGUID

ObjectGuid SmartAI::_followGUID
private

Definition at line 257 of file SmartAI.h.

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

◆ _gossipReturn

bool SmartAI::_gossipReturn
private

Definition at line 285 of file SmartAI.h.

Referenced by OnGossipHello(), and OnGossipSelect().

◆ _invincibilityHPLevel

uint32 SmartAI::_invincibilityHPLevel
private

Definition at line 275 of file SmartAI.h.

Referenced by DamageTaken().

◆ _OOCReached

bool SmartAI::_OOCReached
private

Definition at line 269 of file SmartAI.h.

Referenced by MovementInform(), and UpdatePath().

◆ _repeatWaypointPath

bool SmartAI::_repeatWaypointPath
private

Definition at line 268 of file SmartAI.h.

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

◆ _run

bool SmartAI::_run
private

◆ _script

SmartScript SmartAI::_script
private

Definition at line 251 of file SmartAI.h.

◆ _vehicleConditions

bool SmartAI::_vehicleConditions
private

Definition at line 281 of file SmartAI.h.

Referenced by CheckConditions(), and SmartAI().

◆ _vehicleConditionsTimer

uint32 SmartAI::_vehicleConditionsTimer
private

Definition at line 282 of file SmartAI.h.

Referenced by CheckConditions().

◆ _waypointPathEnded

bool SmartAI::_waypointPathEnded
private

Definition at line 270 of file SmartAI.h.

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

◆ _waypointPauseForced

bool SmartAI::_waypointPauseForced
private

Definition at line 267 of file SmartAI.h.

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

◆ _waypointPauseTimer

uint32 SmartAI::_waypointPauseTimer
private

Definition at line 266 of file SmartAI.h.

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

◆ _waypointReached

bool SmartAI::_waypointReached
private

Definition at line 265 of file SmartAI.h.

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


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