6#ifndef SKYFIRE_SMARTAI_H
7#define SKYFIRE_SMARTAI_H
39 void StartPath(
bool run =
false,
uint32 path = 0,
bool repeat =
false,
Unit* invoker = NULL);
43 void EndPath(
bool fail =
false);
158 void SetRun(
bool run = true);
160 void SetFly(
bool fly = true);
162 void SetSwim(
bool swim = true);
@ SMART_ESCORT_MAX_PLAYER_DIST
UNORDERED_MAP< uint32, WayPoint * > WPPath
CreatureAI(Creature *creature)
GameObjectAI(GameObject *g)
bool OnGossipHello(Player *player) OVERRIDE
uint32 mEscortInvokerCheckTimer
void OnSpellClick(Unit *clicker, bool &result) OVERRIDE
void RemoveEscortState(uint32 uiEscortState)
void UpdatePath(const uint32 diff)
void JustReachedHome() OVERRIDE
void IsSummonedBy(Unit *summoner) OVERRIDE
void StartPath(bool run=false, uint32 path=0, bool repeat=false, Unit *invoker=NULL)
void PausePath(uint32 delay, bool forced=false)
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
void MoveInLineOfSight(Unit *who) OVERRIDE
void sGossipSelect(Player *player, uint32 sender, uint32 action) OVERRIDE
void SetSwim(bool swim=true)
void AttackStart(Unit *who) OVERRIDE
uint32 mFollowArrivedTimer
void StopPath(uint32 DespawnTime=0, uint32 quest=0, bool fail=false)
void PassengerBoarded(Unit *who, int8 seatId, bool apply) OVERRIDE
== Fields =======================================
void UpdateAIWhileCharmed(const uint32 diff)
void InitializeAI() OVERRIDE
void SetDespawnTime(uint32 t)
bool AssistPlayerInCombat(Unit *who)
void EndPath(bool fail=false)
void SetFollow(Unit *target, float dist=0.0f, float angle=0.0f, uint32 credit=0, uint32 end=0, uint32 creditType=0)
void SetAutoAttack(bool on)
void sQuestAccept(Player *player, Quest const *quest) OVERRIDE
void sGossipHello(Player *player) OVERRIDE
bool LoadPath(uint32 entry)
void DamageDealt(Unit *doneTo, uint32 &damage, DamageEffectType) OVERRIDE
WayPoint * GetNextWayPoint()
void MovepointReached(uint32 id)
void JustRespawned() OVERRIDE
bool CanCombatMove() const
void MovementInform(uint32 MovementType, uint32 Data) OVERRIDE
bool CanAIAttack(const Unit *who) const OVERRIDE
void CorpseRemoved(uint32 &respawnDelay) OVERRIDE
== State checks =================================
void SetGUID(uint64 guid, int32 id=0) OVERRIDE
void SpellHitTarget(Unit *target, const SpellInfo *spellInfo) OVERRIDE
uint32 GetData(uint32 id=0) const OVERRIDE
void OnCharmed(bool apply) OVERRIDE
void sQuestReward(Player *player, Quest const *quest, uint32 opt) OVERRIDE
void KilledUnit(Unit *victim) OVERRIDE
uint32 mInvincibilityHpLevel
void DamageTaken(Unit *doneBy, uint32 &damage) OVERRIDE
void sGossipSelectCode(Player *player, uint32 sender, uint32 action, const char *code) OVERRIDE
uint64 GetGUID(int32 id=0) const OVERRIDE
bool sOnDummyEffect(Unit *caster, uint32 spellId, SpellEffIndex effIndex) OVERRIDE
void SetFly(bool fly=true)
void ReturnToLastOOCPos()
void EnterEvadeMode() OVERRIDE
void JustSummoned(Creature *creature) OVERRIDE
void EnterCombat(Unit *enemy) OVERRIDE
bool HasEscortState(uint32 uiEscortState) const
void AddEscortState(uint32 uiEscortState)
uint32 mFollowArrivedEntry
void SummonedCreatureDespawn(Creature *unit) OVERRIDE
void SetGossipReturn(bool value)
void DoAction(int32 param=0) OVERRIDE
void SpellHit(Unit *unit, const SpellInfo *spellInfo) OVERRIDE
void SetCombatMove(bool on)
void SetScript9(SmartScriptHolder &e, uint32 entry, Unit *invoker)
SmartScript * GetScript()
void ReceiveEmote(Player *player, uint32 textEmote) OVERRIDE
void SetInvincibilityHpLevel(uint32 level)
void SetRun(bool run=true)
void UpdateDespawn(const uint32 diff)
void JustDied(Unit *killer) OVERRIDE
void HealReceived(Unit *doneBy, uint32 &addhealth) OVERRIDE
bool IsEscortInvokerInRange()
void sOnGameEvent(bool start, uint16 eventId) OVERRIDE
void SetGossipReturn(bool value)
SmartGameObjectAI(GameObject *g)
bool GossipHello(Player *player) OVERRIDE
bool GossipSelect(Player *player, uint32 sender, uint32 action) OVERRIDE
bool QuestAccept(Player *player, Quest const *quest) OVERRIDE
void SetScript9(SmartScriptHolder &e, uint32 entry, Unit *invoker)
void OnStateChanged(uint32 state, Unit *unit) OVERRIDE
void EventInform(uint32 eventId) OVERRIDE
SmartScript * GetScript()
void UpdateAI(uint32 diff) OVERRIDE
uint32 GetDialogStatus(Player *) OVERRIDE
static int Permissible(const GameObject *g)
void OnGameEvent(bool start, uint16 eventId) OVERRIDE
void InitializeAI() OVERRIDE
void Destroyed(Player *player, uint32 eventId) OVERRIDE
bool GossipSelectCode(Player *, uint32, uint32, const char *) OVERRIDE
bool QuestReward(Player *player, Quest const *quest, uint32 opt) OVERRIDE