![]() |
AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "ScriptedEscortAI.h"
Public Member Functions | |
| npc_escortAI (Creature *creature) | |
| ~npc_escortAI () override | |
| void | AttackStart (Unit *who) override |
| void | MoveInLineOfSight (Unit *who) override |
| void | JustDied (Unit *) override |
| void | JustRespawned () override |
| void | ReturnToLastPoint () |
| void | EnterEvadeMode (EvadeReason=EVADE_REASON_OTHER) override |
| void | UpdateAI (uint32 diff) override |
| Use to start attacking a target. Called just before JustEngagedWith() | |
| virtual void | UpdateEscortAI (uint32 diff) |
| void | MovementInform (uint32, uint32) override |
| void | AddWaypoint (uint32 id, float x, float y, float z, uint32 waitTime=0) |
| bool | SetNextWaypoint (uint32 pointId, float x, float y, float z, float orientation) |
| bool | SetNextWaypoint (uint32 pointId, bool setPosition=true) |
| bool | GetWaypointPosition (uint32 pointId, float &x, float &y, float &z) |
| void | GenerateWaypointArray (Movement::PointsArray *points) |
| virtual void | WaypointReached (uint32 pointId)=0 |
| virtual void | WaypointStart (uint32) |
| void | Start (bool isActiveAttacker=true, ObjectGuid playerGUID=ObjectGuid::Empty, Quest const *quest=nullptr, bool instantRespawn=false, bool canLoopPath=false, bool resetWaypoints=true) |
| void | SetEscortPaused (bool on) |
| bool | HasEscortState (uint32 escortState) |
| bool | IsEscorted () override |
| void | SetMaxPlayerDistance (float newMax) |
| float | GetMaxPlayerDistance () |
| void | SetDespawnAtEnd (bool despawn) |
| void | SetDespawnAtFar (bool despawn) |
| bool | GetAttack () |
| void | SetCanAttack (bool attack) |
| ObjectGuid | GetEventStarterGUID () |
| void | AddEscortState (uint32 escortState) |
| void | RemoveEscortState (uint32 escortState) |
Public Member Functions inherited from ScriptedAI | |
| ScriptedAI (Creature *creature) | |
| ~ScriptedAI () override | |
| void | AttackStartNoMove (Unit *target) |
| void | DamageTaken (Unit *, uint32 &, DamageEffectType, SpellSchoolMask) override |
| Called at any Damage from any attacker (before damage apply) | |
| void | UpdateAI (uint32 diff) override |
| Use to start attacking a target. Called just before JustEngagedWith() | |
| void | JustDied (Unit *) override |
| void | KilledUnit (Unit *) override |
| void | JustSummoned (Creature *) override |
| void | SummonedCreatureDespawn (Creature *) override |
| void | SpellHit (Unit *, SpellInfo const *) override |
| void | SpellHitTarget (Unit *, SpellInfo const *) override |
| void | MovementInform (uint32, uint32) override |
| void | OnPossess (bool) |
| bool | IsInRoom (const Position *pos, Axis axis, bool above) |
| void | Reset () override |
| void | JustEngagedWith (Unit *) override |
| Called for reaction when initially engaged. | |
| void | AttackStart (Unit *) override |
| void | DoStartMovement (Unit *target, float distance=0.0f, float angle=0.0f) |
| void | DoStartNoMovement (Unit *target) |
| void | DoStopAttack () |
| void | DoCastSpell (Unit *target, SpellInfo const *spellInfo, bool triggered=false) |
| void | DoPlaySoundToSet (WorldObject *source, uint32 soundId) |
| void | DoPlayMusic (uint32 soundId, bool zone) |
| void | DoAddThreat (Unit *unit, float amount) |
| void | DoModifyThreatByPercent (Unit *unit, int32 pct) |
| void | DoResetThreat (Unit *unit) |
| void | DoResetThreatList () |
| float | DoGetThreat (Unit *unit) |
| void | DoTeleportPlayer (Unit *unit, float x, float y, float z, float o) |
| void | DoTeleportPlayer (Unit *unit, Position pos) |
| void | DoTeleportAll (float x, float y, float z, float o) |
| Unit * | DoSelectLowestHpFriendly (float range, uint32 minHPDiff=1) |
| std::list< Creature * > | DoFindFriendlyCC (float range) |
| std::list< Creature * > | DoFindFriendlyMissingBuff (float range, uint32 spellId) |
| Player * | GetPlayerAtMinimumRange (float minRange) |
| Creature * | DoSpawnCreature (uint32 entry, float offsetX, float offsetY, float offsetZ, float angle, uint32 type, uint32 despawntime) |
| bool | IsUniqueTimedEventDone (uint32 id) const |
| void | SetUniqueTimedEventDone (uint32 id) |
| void | ResetUniqueTimedEvent (uint32 id) |
| void | ClearUniqueTimedEventsDone () |
| void | ScheduleTimedEvent (Milliseconds timerMin, Milliseconds timerMax, std::function< void()> exec, Milliseconds repeatMin, Milliseconds repeatMax=0ms, uint32 uniqueId=0) |
| void | ScheduleTimedEvent (Milliseconds timerMax, std::function< void()> exec, Milliseconds repeatMin, Milliseconds repeatMax=0ms, uint32 uniqueId=0) |
| void | ScheduleUniqueTimedEvent (Milliseconds timer, std::function< void()> exec, uint32 uniqueId) |
| bool | HealthBelowPct (uint32 pct) const |
| bool | HealthAbovePct (uint32 pct) const |
| SpellInfo const * | SelectSpell (Unit *target, uint32 school, uint32 mechanic, SelectTargetType targets, uint32 powerCostMin, uint32 powerCostMax, float rangeMin, float rangeMax, SelectEffect effect) |
| void | SetEquipmentSlots (bool loadDefault, int32 mainHand=EQUIP_NO_CHANGE, int32 offHand=EQUIP_NO_CHANGE, int32 ranged=EQUIP_NO_CHANGE) |
| virtual bool | CheckEvadeIfOutOfCombatArea () const |
| bool | IsHeroic () const |
| Difficulty | GetDifficulty () const |
| bool | Is25ManRaid () const |
| template<class T > | |
| const T & | DUNGEON_MODE (const T &normal5, const T &heroic10) const |
| template<class T > | |
| const T & | RAID_MODE (const T &normal10, const T &normal25) const |
| template<class T > | |
| const T & | RAID_MODE (const T &normal10, const T &normal25, const T &heroic10, const T &heroic25) const |
| Player * | SelectTargetFromPlayerList (float maxdist, uint32 excludeAura=0, bool mustBeInLOS=false) const |
| void | SetInvincibility (bool apply) |
| bool | IsInvincible () const |
| void | SetAutoAttackAllowed (bool allow) |
| bool | IsAutoAttackAllowed () const |
Public Member Functions inherited from CreatureAI | |
| void | Talk (uint8 id, WorldObject const *whisperTarget=nullptr, Milliseconds delay=0ms) |
Causes the creature to talk/say the text assigned to their entry in the creature_text database table. | |
| void | Talk (uint8 id, Milliseconds delay) |
| WorldObject * | GetSummoner () const |
| Returns the summoner creature/object, if the creature is a temporary summon. | |
| CreatureAI (Creature *creature) | |
| ~CreatureAI () override | |
| void | MoveCircleChecks () |
| void | MoveBackwardsChecks () |
| void | MoveInLineOfSight_Safe (Unit *who) |
| == Reactions At ================================= | |
| void | TriggerAlert (Unit const *who) const |
| virtual bool | CanRespawn () |
| virtual void | IsSummonedBy (WorldObject *) |
| virtual void | SummonedCreatureDies (Creature *, Unit *) |
| virtual void | SummonedCreatureDespawnAll () |
| virtual void | SummonedCreatureEvade (Creature *) |
| virtual void | OnSpellCastFinished (SpellInfo const *, SpellFinishReason) |
| virtual void | AttackedBy (Unit *) |
| virtual void | PathEndReached (uint32) |
| void | OnCharmed (bool apply) override |
| Called when unit is charmed. | |
| virtual void | JustReachedHome () |
| void | DoZoneInCombat (Creature *creature=nullptr, float maxRangeToNearestTarget=250.0f) |
| virtual void | ReceiveEmote (Player *, uint32) |
| virtual void | OwnerAttackedBy (Unit *) |
| virtual void | OwnerAttacked (Unit *) |
| virtual void | CorpseRemoved (uint32 &) |
| == Triggered Actions Requested ================== | |
| virtual void | PassengerBoarded (Unit *, int8, bool) |
| == Fields ======================================= | |
| virtual bool | BeforeSpellClick (Unit *) |
| virtual void | OnSpellClick (Unit *, bool &) |
| virtual bool | CanSeeAlways (WorldObject const *) |
| virtual bool | CanBeSeen (Player const *) |
| virtual bool | CanAlwaysBeDetectable (WorldObject const *) |
| virtual void | PetStopAttack () |
| int32 | VisualizeBoundary (uint32 duration, Unit *owner=nullptr, bool fill=false, bool checkZ=false) const |
| virtual bool | CheckInRoom () |
| CreatureBoundary const * | GetBoundary () const |
| void | SetBoundary (CreatureBoundary const *boundary, bool negativeBoundaries=false) |
| bool | IsInBoundary (Position const *who=nullptr) const |
| virtual void | CalculateThreat (Unit *, float &, SpellInfo const *) |
| virtual bool | OnTeleportUnreacheablePlayer (Player *) |
| virtual void | OnAuraRemove (AuraApplication *, AuraRemoveMode) |
| virtual void | DistancingStarted () |
| virtual void | DistancingEnded () |
Public Member Functions inherited from UnitAI | |
| UnitAI (Unit *unit) | |
| virtual | ~UnitAI () |
| virtual bool | CanAIAttack (Unit const *) const |
| virtual void | InitializeAI () |
| virtual void | DoAction (int32) |
| virtual uint32 | GetData (uint32) const |
| virtual void | SetData (uint32, uint32) |
| virtual void | SetGUID (ObjectGuid const &, int32=0) |
| virtual ObjectGuid | GetGUID (int32=0) const |
| Unit * | SelectTarget (SelectTargetMethod targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0) |
| template<class PREDICATE > | |
| Unit * | SelectTarget (SelectTargetMethod targetType, uint32 position, PREDICATE const &predicate) |
| void | SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0) |
| Select the best (up to) <num> targets (in <targetType> order) from the threat list that fulfill the following: | |
| template<class PREDICATE > | |
| void | SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 position, PREDICATE const &predicate) |
| virtual void | JustEnteredCombat (Unit *) |
| Called when the unit enters combat. | |
| virtual void | JustExitedCombat () |
| Called when the unit leaves combat. | |
| virtual void | DamageDealt (Unit *, uint32 &, DamageEffectType, SpellSchoolMask) |
| Called at any Damage to any victim (before damage apply) | |
| virtual void | HealReceived (Unit *, uint32 &) |
| Called when the creature receives heal. | |
| virtual void | OnPowerUpdate (Powers, int32, int32, uint32) |
| Called when the creature power updates. | |
| virtual void | HealDone (Unit *, uint32 &) |
| Called when the unit heals. | |
| virtual void | OnCalculateMeleeDamageReceived (uint32 &, Unit *) |
| Called during damage calculations. | |
| virtual void | OnCalculateSpellDamageReceived (int32 &, Unit *) |
| virtual void | OnCalculatePeriodicTickReceived (uint32 &, Unit *) |
| Called during calculation when receiving periodic healing or damage (DoT or HoT) | |
| void | AttackStartCaster (Unit *victim, float dist) |
| SpellCastResult | DoAddAuraToAllHostilePlayers (uint32 spellid) |
| SpellCastResult | DoCast (uint32 spellId) |
| SpellCastResult | DoCast (Unit *victim, uint32 spellId, bool triggered=false) |
| SpellCastResult | DoCastSelf (uint32 spellId, bool triggered=false) |
| SpellCastResult | DoCastToAllHostilePlayers (uint32 spellid, bool triggered=false) |
| To specify the caster as target if the spell is self-cast. | |
| SpellCastResult | DoCastVictim (uint32 spellId, bool triggered=false) |
| SpellCastResult | DoCastAOE (uint32 spellId, bool triggered=false) |
| SpellCastResult | DoCastRandomTarget (uint32 spellId, uint32 threatTablePosition=0, float dist=0.0f, bool playerOnly=true, bool triggered=false, bool withTank=true) |
| Cast the spell on a random unit from the threat list. | |
| SpellCastResult | DoCastMaxThreat (uint32 spellId, uint32 threatTablePosition=0, float dist=0.0f, bool playerOnly=true, bool triggered=false) |
| Cast spell on the top threat target, which may not be the current victim. | |
| float | DoGetSpellMaxRange (uint32 spellId, bool positive=false) |
| void | DoMeleeAttackIfReady () |
| bool | DoSpellAttackIfReady (uint32 spell) |
| void | DoSpellAttackToRandomTargetIfReady (uint32 spell, uint32 threatTablePosition=0, float dist=0.f, bool playerOnly=true) |
| virtual void | SummonMovementInform (Creature *, uint32, uint32) |
| Called when a summon reaches a waypoint or point movement finished. | |
| virtual void | sGossipHello (Player *) |
| virtual void | sGossipSelect (Player *, uint32, uint32) |
| virtual void | sGossipSelectCode (Player *, uint32, uint32, char const *) |
| virtual void | sQuestAccept (Player *, Quest const *) |
| virtual void | sQuestSelect (Player *, Quest const *) |
| virtual void | sQuestComplete (Player *, Quest const *) |
| virtual void | sQuestReward (Player *, Quest const *, uint32) |
| virtual void | sOnGameEvent (bool, uint16) |
| virtual std::string | GetDebugInfo () const |
Protected Member Functions | |
| Player * | GetPlayerForEscort () |
Protected Member Functions inherited from CreatureAI | |
| bool | UpdateVictim () |
| bool | UpdateVictimWithGaze () |
| void | SetGazeOn (Unit *target) |
| Creature * | DoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
| Creature * | DoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
| Creature * | DoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
| bool | _EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER) |
Private Member Functions | |
| bool | AssistPlayerInCombatAgainst (Unit *who) |
| bool | IsPlayerOrGroupInRange () |
| void | FillPointMovementListForCreature () |
Private Attributes | |
| ObjectGuid | m_uiPlayerGUID |
| uint32 | m_uiWPWaitTimer |
| uint32 | m_uiPlayerCheckTimer |
| uint32 | m_uiEscortState |
| float | MaxPlayerDistance |
| Quest const * | m_pQuestForEscort |
| std::list< Escort_Waypoint > | WaypointList |
| std::list< Escort_Waypoint >::iterator | CurrentWP |
| bool | m_bIsActiveAttacker |
| bool | m_bCanInstantRespawn |
| bool | m_bCanReturnToStart |
| bool | DespawnAtEnd |
| bool | DespawnAtFar |
| bool | ScriptWP |
| bool | HasImmuneToNPCFlags |
Additional Inherited Members | |
Public Types inherited from ScriptedAI | |
| enum class | Axis { AXIS_X , AXIS_Y } |
Public Types inherited from CreatureAI | |
| enum | EvadeReason { EVADE_REASON_NO_HOSTILES , EVADE_REASON_BOUNDARY , EVADE_REASON_SEQUENCE_BREAK , EVADE_REASON_NO_PATH , EVADE_REASON_OTHER } |
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 () |
Public Attributes inherited from ScriptedAI | |
| Creature * | me |
Static Public Attributes inherited from UnitAI | |
| static AISpellInfoType * | AISpellInfo |
Protected Attributes inherited from CreatureAI | |
| Creature *const | me |
| EventMap | events |
| TaskScheduler | scheduler |
| CreatureBoundary const * | _boundary |
| bool | _negateBoundary |
Protected Attributes inherited from UnitAI | |
| Unit *const | me |
|
explicit |
|
inlineoverride |
|
inline |
References m_uiEscortState.
Referenced by npc_varian_wrynn::npc_varian_wrynnAI::EnterEvadeMode(), npc_thrall_bfu::npc_thrall_bfuAI::EnterEvadeMode(), violet_hold_trashAI::EnterEvadeMode(), EnterEvadeMode(), SetEscortPaused(), and Start().
References ScriptWP, and WaypointList.
Referenced by npc_onyx_flamecaller::npc_onyx_flamecallerAI::AddWaypoints(), boss_bjarngrim::InitializeWaypoints(), boss_thorim_lightning_orb::boss_thorim_lightning_orbAI::InitWaypoint(), boss_thorim_sif_blizzard::boss_thorim_sif_blizzardAI::InitWaypoint(), boss_yoggsaron_cloud::boss_yoggsaron_cloudAI::InitWaypoint(), boss_grand_champion::boss_grand_championAI::SetData(), npc_argent_soldier::npc_argent_soldierAI::SetData(), npc_clintar_spirit::npc_clintar_spiritAI::StartEvent(), violet_hold_trashAI::UpdateAI(), and npc_azure_saboteur::npc_azure_saboteurAI::UpdateAI().
|
private |
References AttackStart(), UnitAI::CanAIAttack(), CREATURE_TYPE_FLAG_CAN_ASSIST, Unit::GetCharmerOrOwnerPlayerOrPlayerItself(), Creature::GetCreatureTemplate(), GetMaxPlayerDistance(), Unit::GetVictim(), Creature::HasReactState(), Object::IsCreature(), Unit::isInAccessiblePlaceFor(), Creature::IsInEvadeMode(), Unit::IsValidAttackTarget(), WorldObject::IsWithinDistInMap(), WorldObject::IsWithinLOSInMap(), ScriptedAI::me, REACT_PASSIVE, Object::ToCreature(), and CreatureTemplate::type_flags.
Referenced by MoveInLineOfSight().
|
overridevirtual |
Reimplemented from UnitAI.
Reimplemented in npc_taretha::npc_tarethaAI, npc_mimirons_inferno::npc_mimirons_infernoAI, npc_frosthound, npc_icefang::npc_icefangAI, and violet_hold_trashAI.
References Unit::Attack(), ESCORT_MOTION_TYPE, Unit::GetMotionMaster(), MotionMaster::GetMotionSlotType(), Creature::IsCombatMovementAllowed(), ScriptedAI::me, MOTION_SLOT_ACTIVE, MotionMaster::MoveChase(), MotionMaster::MovementExpired(), POINT_MOTION_TYPE, and Unit::StopMoving().
Referenced by AssistPlayerInCombatAgainst(), npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI::AttackedBy(), npc_clintar_spirit::npc_clintar_spiritAI::EnterEvadeMode(), MoveInLineOfSight(), npc_general_andorov::MoveInLineOfSight(), npc_captain_saeed::npc_captain_saeedAI::MoveInLineOfSight(), boss_grand_champion::boss_grand_championAI::MovementInform(), npc_arthas::npc_arthasAI::UpdateAI(), npc_clintar_spirit::npc_clintar_spiritAI::UpdateAI(), boss_grand_champion::boss_grand_championAI::UpdateAI(), npc_captain_saeed::npc_captain_saeedAI::UpdateAI(), npc_ranger_lilatha::WaypointReached(), and npc_cork_gizelton::npc_cork_gizeltonAI::WaypointReached().
|
overridevirtual |
Reimplemented from CreatureAI.
Reimplemented in npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI, npc_varian_wrynn::npc_varian_wrynnAI, npc_thrall_bfu::npc_thrall_bfuAI, npc_onyx_flamecaller::npc_onyx_flamecallerAI, violet_hold_trashAI, npc_frosthound, and npc_icefang::npc_icefangAI.
References AddEscortState(), ThreatMgr::ClearAllThreat(), Unit::CombatStop(), Unit::GetMotionMaster(), Unit::GetThreatMgr(), HasEscortState(), HasImmuneToNPCFlags, LOG_DEBUG, ScriptedAI::me, MotionMaster::MoveTargetedHome(), ScriptedAI::Reset(), ReturnToLastPoint(), Unit::SetImmuneToNPC(), Creature::SetLootRecipient(), STATE_ESCORT_ESCORTING, and STATE_ESCORT_RETURNING.
Referenced by npc_arthas::npc_arthasAI::DoAction(), npc_cork_gizelton::npc_cork_gizeltonAI::EnterEvadeMode(), npc_clintar_spirit::npc_clintar_spiritAI::EnterEvadeMode(), and npc_captain_saeed::npc_captain_saeedAI::EnterEvadeMode().
|
private |
References Object::GetEntry(), ScriptedAI::me, sScriptSystemMgr, and WaypointList.
Referenced by SetNextWaypoint(), and Start().
| void npc_escortAI::GenerateWaypointArray | ( | Movement::PointsArray * | points | ) |
References CurrentWP, Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), MovementInfo::HasMovementFlag(), WorldObject::m_movementInfo, ScriptedAI::me, MOVEMENTFLAG_CAN_FLY, MOVEMENTFLAG_DISABLE_GRAVITY, and WaypointList.
Referenced by UpdateAI().
|
inline |
|
inline |
References m_uiPlayerGUID.
|
inline |
References MaxPlayerDistance.
Referenced by AssistPlayerInCombatAgainst(), and IsPlayerOrGroupInRange().
|
inlineprotected |
References ObjectAccessor::GetPlayer(), m_uiPlayerGUID, and ScriptedAI::me.
Referenced by npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI::DamageTaken(), IsPlayerOrGroupInRange(), npc_ranshalla::npc_ranshallaAI::JustDidDialogueStep(), JustDied(), npc_muglash::npc_muglashAI::JustDied(), npc_ame::npc_ameAI::JustDied(), npc_mootoo_the_younger::npc_mootoo_the_youngerAI::JustDied(), npc_bonker_togglevolt::npc_bonker_togglevoltAI::JustDied(), npc_apothecary_hanes::npc_Apothecary_HanesAI::JustDied(), npc_engineer_helice::npc_engineer_heliceAI::JustDied(), npc_maghar_captive::npc_maghar_captiveAI::JustDied(), npc_kurenai_captive::npc_kurenai_captiveAI::JustDied(), npc_captain_saeed::npc_captain_saeedAI::JustDied(), npc_bessy::npc_bessyAI::JustDied(), npc_maxx_a_million_escort::npc_maxx_a_million_escortAI::JustDied(), npc_isla_starmane::npc_isla_starmaneAI::JustDied(), npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI::JustEngagedWith(), npc_muglash::npc_muglashAI::JustEngagedWith(), npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI::JustSummoned(), npc_captain_saeed::npc_captain_saeedAI::MoveInLineOfSight(), npc_daphne_stilwell::npc_daphne_stilwellAI::SummonedCreatureDies(), npc_varian_wrynn::npc_varian_wrynnAI::UpdateAI(), npc_lurgglbr::npc_lurgglbrAI::UpdateAI(), npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI::UpdateAI(), npc_tyrion_spybot::npc_tyrion_spybotAI::UpdateAI(), npc_rinji::npc_rinjiAI::UpdateEscortAI(), npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI::UpdateEscortAI(), npc_captain_saeed::npc_captain_saeedAI::WaypointReached(), npc_professor_phizzlethorpe::npc_professor_phizzlethorpeAI::WaypointReached(), npc_ranger_lilatha::WaypointReached(), npc_rinji::npc_rinjiAI::WaypointReached(), npc_corporal_keeshan::npc_corporal_keeshanAI::WaypointReached(), npc_deathstalker_erland::npc_deathstalker_erlandAI::WaypointReached(), npc_varian_wrynn::npc_varian_wrynnAI::WaypointReached(), npc_daphne_stilwell::npc_daphne_stilwellAI::WaypointReached(), npc_muglash::npc_muglashAI::WaypointReached(), npc_magwin::npc_magwinAI::WaypointReached(), npc_prospector_remtravel::npc_prospector_remtravelAI::WaypointReached(), npc_kaya_flathoof::npc_kaya_flathoofAI::WaypointReached(), npc_custodian_of_time::npc_custodian_of_timeAI::WaypointReached(), npc_gilthares::npc_giltharesAI::WaypointReached(), npc_lakota_windsong::npc_lakota_windsongAI::WaypointReached(), npc_paoka_swiftmountain::npc_paoka_swiftmountainAI::WaypointReached(), npc_ame::npc_ameAI::WaypointReached(), npc_mootoo_the_younger::npc_mootoo_the_youngerAI::WaypointReached(), npc_bonker_togglevolt::npc_bonker_togglevoltAI::WaypointReached(), npc_emily::npc_emilyAI::WaypointReached(), npc_apothecary_hanes::npc_Apothecary_HanesAI::WaypointReached(), npc_engineer_helice::npc_engineer_heliceAI::WaypointReached(), npc_frosthound::WaypointReached(), npc_wounded_blood_elf::npc_wounded_blood_elfAI::WaypointReached(), npc_maghar_captive::npc_maghar_captiveAI::WaypointReached(), npc_kurenai_captive::npc_kurenai_captiveAI::WaypointReached(), npc_bessy::npc_bessyAI::WaypointReached(), npc_maxx_a_million_escort::npc_maxx_a_million_escortAI::WaypointReached(), npc_kservant::npc_kservantAI::WaypointReached(), npc_isla_starmane::npc_isla_starmaneAI::WaypointReached(), and npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI::WaypointStart().
| bool npc_escortAI::GetWaypointPosition | ( | uint32 | pointId, |
| float & | x, | ||
| float & | y, | ||
| float & | z | ||
| ) |
References Object::GetEntry(), ScriptedAI::me, and sScriptSystemMgr.
|
inline |
References m_uiEscortState.
Referenced by npc_varian_wrynn::npc_varian_wrynnAI::EnterEvadeMode(), npc_thrall_bfu::npc_thrall_bfuAI::EnterEvadeMode(), violet_hold_trashAI::EnterEvadeMode(), EnterEvadeMode(), JustDied(), npc_muglash::npc_muglashAI::JustDied(), npc_engineer_helice::npc_engineer_heliceAI::JustDied(), npc_maghar_captive::npc_maghar_captiveAI::JustDied(), npc_kurenai_captive::npc_kurenai_captiveAI::JustDied(), npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI::JustEngagedWith(), npc_muglash::npc_muglashAI::JustEngagedWith(), npc_wounded_blood_elf::npc_wounded_blood_elfAI::JustEngagedWith(), npc_rinji::npc_rinjiAI::JustEngagedWith(), MoveInLineOfSight(), npc_custodian_of_time::npc_custodian_of_timeAI::MoveInLineOfSight(), MovementInform(), npc_rocknot::npc_rocknotAI::Reset(), npc_varian_wrynn::npc_varian_wrynnAI::Reset(), npc_thrall_bfu::npc_thrall_bfuAI::Reset(), npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI::Reset(), npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI::Reset(), npc_lurgglbr::npc_lurgglbrAI::Reset(), SetEscortPaused(), Start(), UpdateAI(), npc_barnes::npc_barnesAI::UpdateAI(), npc_corporal_keeshan::npc_corporal_keeshanAI::UpdateAI(), npc_muglash::npc_muglashAI::UpdateAI(), npc_engineer_helice::npc_engineer_heliceAI::UpdateAI(), and npc_rinji::npc_rinjiAI::UpdateEscortAI().
|
inlineoverridevirtual |
|
private |
References GetMaxPlayerDistance(), GetPlayerForEscort(), WorldObject::IsWithinDistInMap(), and ScriptedAI::me.
Referenced by UpdateAI().
|
overridevirtual |
Reimplemented from CreatureAI.
Reimplemented in npc_muglash::npc_muglashAI, violet_hold_trashAI, npc_mootoo_the_younger::npc_mootoo_the_youngerAI, npc_frosthound, npc_icefang::npc_icefangAI, npc_maghar_captive::npc_maghar_captiveAI, npc_kurenai_captive::npc_kurenai_captiveAI, npc_maxx_a_million_escort::npc_maxx_a_million_escortAI, npc_isla_starmane::npc_isla_starmaneAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, and npc_general_andorov.
References GetPlayerForEscort(), Quest::GetQuestId(), HasEscortState(), m_pQuestForEscort, m_uiPlayerGUID, QUEST_STATUS_INCOMPLETE, and STATE_ESCORT_ESCORTING.
Referenced by npc_cork_gizelton::npc_cork_gizeltonAI::JustDied().
|
overridevirtual |
Reimplemented from CreatureAI.
Reimplemented in npc_rinji::npc_rinjiAI, and npc_isla_starmane::npc_isla_starmaneAI.
References CreatureTemplate::faction, Creature::GetCreatureTemplate(), Unit::GetFaction(), Creature::IsCombatMovementAllowed(), m_uiWPWaitTimer, ScriptedAI::me, RemoveEscortState(), ScriptedAI::Reset(), Unit::RestoreFaction(), Creature::SetCombatMovement(), STATE_ESCORT_ESCORTING, STATE_ESCORT_PAUSED, and STATE_ESCORT_RETURNING.
Referenced by npc_rinji::npc_rinjiAI::JustRespawned(), npc_cork_gizelton::npc_cork_gizeltonAI::JustRespawned(), and npc_isla_starmane::npc_isla_starmaneAI::JustRespawned().
|
overridevirtual |
Reimplemented from CreatureAI.
Reimplemented in npc_taretha::npc_tarethaAI, npc_mimirons_inferno::npc_mimirons_infernoAI, npc_general_andorov, and violet_hold_trashAI.
References AssistPlayerInCombatAgainst(), AttackStart(), Creature::CanStartAttack(), MotionMaster::Clear(), Unit::ClearUnitState(), Unit::GetMotionMaster(), Unit::GetVictim(), HasEscortState(), Creature::HasReactState(), Unit::HasUnitState(), Unit::isInAccessiblePlaceFor(), Unit::isTargetableForAttack(), ScriptedAI::me, REACT_AGGRESSIVE, STATE_ESCORT_ESCORTING, UNIT_STATE_DISTRACTED, and UNIT_STATE_STUNNED.
Referenced by boss_grand_champion::boss_grand_championAI::MoveInLineOfSight(), npc_ancestral_wolf::npc_ancestral_wolfAI::MoveInLineOfSight(), and npc_captain_saeed::npc_captain_saeedAI::MoveInLineOfSight().
Reimplemented from CreatureAI.
Reimplemented in npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI.
References CurrentWP, ESCORT_MOTION_TYPE, Unit::GetMotionMaster(), MotionMaster::GetMotionSlotType(), Position::GetOrientation(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), HasEscortState(), LOG_DEBUG, m_uiWPWaitTimer, ScriptedAI::me, MOTION_SLOT_ACTIVE, MotionMaster::MoveIdle(), MotionMaster::MovementExpired(), POINT_HOME, POINT_LAST_POINT, POINT_MOTION_TYPE, RemoveEscortState(), Creature::SetHomePosition(), Creature::SetPosition(), STATE_ESCORT_ESCORTING, STATE_ESCORT_PAUSED, STATE_ESCORT_RETURNING, Unit::StopMovingOnCurrentPos(), WaypointList, and WaypointReached().
Referenced by boss_grand_champion::boss_grand_championAI::MovementInform(), and npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::MovementInform().
|
inline |
References m_uiEscortState.
Referenced by violet_hold_trashAI::CreatureStartAttackDoor(), npc_arthas::npc_arthasAI::JustDied(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::JustDied(), JustRespawned(), MovementInform(), brann_bronzebeard::brann_bronzebeardAI::Reset(), SetEscortPaused(), and UpdateAI().
| void npc_escortAI::ReturnToLastPoint | ( | ) |
References FORCED_MOVEMENT_RUN, Creature::GetHomePosition(), Unit::GetMotionMaster(), ScriptedAI::me, MotionMaster::MovePoint(), and POINT_LAST_POINT.
Referenced by npc_varian_wrynn::npc_varian_wrynnAI::EnterEvadeMode(), npc_thrall_bfu::npc_thrall_bfuAI::EnterEvadeMode(), violet_hold_trashAI::EnterEvadeMode(), and EnterEvadeMode().
|
inline |
References m_bIsActiveAttacker.
|
inline |
References DespawnAtEnd.
Referenced by boss_grand_champion::boss_grand_championAI::boss_grand_championAI(), boss_thorim_sif_blizzard::boss_thorim_sif_blizzardAI::boss_thorim_sif_blizzardAI(), npc_argent_soldier::npc_argent_soldierAI::npc_argent_soldierAI(), npc_crok_scourgebane::npc_crok_scourgebaneAI::npc_crok_scourgebaneAI(), npc_general_andorov::npc_general_andorov(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::npc_onyx_flamecallerAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::ReorderInstance(), npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI::Reset(), brann_bronzebeard::brann_bronzebeardAI::Reset(), npc_arthas::npc_arthasAI::UpdateAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::UpdateAI(), violet_hold_trashAI::UpdateAI(), npc_azure_saboteur::npc_azure_saboteurAI::UpdateAI(), and npc_cork_gizelton::npc_cork_gizeltonAI::UpdateEscortAI().
|
inline |
References DespawnAtFar.
Referenced by npc_crok_scourgebane::npc_crok_scourgebaneAI::npc_crok_scourgebaneAI(), npc_general_andorov::npc_general_andorov(), brann_bronzebeard::brann_bronzebeardAI::Reset(), npc_mootoo_the_younger::npc_mootoo_the_youngerAI::Reset(), npc_bonker_togglevolt::npc_bonker_togglevoltAI::Reset(), npc_apothecary_hanes::npc_Apothecary_HanesAI::Reset(), and npc_arthas::npc_arthasAI::UpdateAI().
| void npc_escortAI::SetEscortPaused | ( | bool | on | ) |
References AddEscortState(), HasEscortState(), RemoveEscortState(), STATE_ESCORT_ESCORTING, and STATE_ESCORT_PAUSED.
Referenced by brann_bronzebeard::brann_bronzebeardAI::DoAction(), npc_arthas::npc_arthasAI::DoAction(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::DoAction(), npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI::DoAction(), npc_ranshalla::npc_ranshallaAI::DoChannelTorchSpell(), npc_muglash::npc_muglashAI::DoWaveSummon(), npc_captain_saeed::npc_captain_saeedAI::EnterEvadeMode(), npc_ranshalla::npc_ranshallaAI::JustDidDialogueStep(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::ReorderInstance(), npc_crok_scourgebane::npc_crok_scourgebaneAI::SetGUID(), npc_cork_gizelton::npc_cork_gizeltonAI::SetGUID(), npc_captain_saeed::npc_captain_saeedAI::SetGUID(), npc_varian_wrynn::npc_varian_wrynnAI::SetHoldState(), npc_thrall_bfu::npc_thrall_bfuAI::SetHoldState(), npc_general_andorov::sGossipSelect(), npc_thrall_bfu::npc_thrall_bfuAI::SummonedCreatureDies(), npc_barnes::npc_barnesAI::UpdateAI(), npc_corporal_keeshan::npc_corporal_keeshanAI::UpdateAI(), npc_varian_wrynn::npc_varian_wrynnAI::UpdateAI(), npc_thrall_bfu::npc_thrall_bfuAI::UpdateAI(), npc_arthas::npc_arthasAI::UpdateAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::UpdateAI(), npc_captain_saeed::npc_captain_saeedAI::UpdateAI(), npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI::UpdateAI(), npc_tyrion_spybot::npc_tyrion_spybotAI::UpdateAI(), npc_maxx_a_million_escort::npc_maxx_a_million_escortAI::UpdateAI(), npc_grimstone::npc_grimstoneAI::UpdateEscortAI(), npc_cork_gizelton::npc_cork_gizeltonAI::UpdateEscortAI(), npc_ranshalla::npc_ranshallaAI::UpdateEscortAI(), brann_bronzebeard::brann_bronzebeardAI::UpdateEscortAI(), npc_tirions_gambit_tirion::npc_tirions_gambit_tirionAI::UpdateEscortAI(), npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI::WaypointReached(), npc_captain_saeed::npc_captain_saeedAI::WaypointReached(), npc_ranshalla::npc_ranshallaAI::WaypointReached(), npc_tirions_gambit_tirion::npc_tirions_gambit_tirionAI::WaypointReached(), npc_arthas::npc_arthasAI::WaypointReached(), npc_grimstone::npc_grimstoneAI::WaypointReached(), npc_barnes::npc_barnesAI::WaypointReached(), npc_corporal_keeshan::npc_corporal_keeshanAI::WaypointReached(), npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI::WaypointReached(), npc_tyrion_spybot::npc_tyrion_spybotAI::WaypointReached(), npc_daphne_stilwell::npc_daphne_stilwellAI::WaypointReached(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::WaypointReached(), npc_general_andorov::WaypointReached(), npc_muglash::npc_muglashAI::WaypointReached(), npc_cork_gizelton::npc_cork_gizeltonAI::WaypointReached(), npc_crok_scourgebane::npc_crok_scourgebaneAI::WaypointReached(), and npc_maxx_a_million_escort::npc_maxx_a_million_escortAI::WaypointReached().
|
inline |
References MaxPlayerDistance.
| bool npc_escortAI::SetNextWaypoint | ( | uint32 | pointId, |
| bool | setPosition = true |
||
| ) |
References CurrentWP, FillPointMovementListForCreature(), Position::GetOrientation(), ScriptedAI::me, Unit::UpdatePosition(), and WaypointList.
| bool npc_escortAI::SetNextWaypoint | ( | uint32 | pointId, |
| float | x, | ||
| float | y, | ||
| float | z, | ||
| float | orientation | ||
| ) |
References ScriptedAI::me, SetNextWaypoint(), and Unit::UpdatePosition().
Referenced by brann_bronzebeard::brann_bronzebeardAI::DoAction(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::ReorderInstance(), npc_time_lost_proto_drake::npc_time_lost_proto_drakeAI::RollPath(), and SetNextWaypoint().
| void npc_escortAI::Start | ( | bool | isActiveAttacker = true, |
| ObjectGuid | playerGUID = ObjectGuid::Empty, |
||
| Quest const * | quest = nullptr, |
||
| bool | instantRespawn = false, |
||
| bool | canLoopPath = false, |
||
| bool | resetWaypoints = true |
||
| ) |
References AddEscortState(), CurrentWP, Unit::DisableSpline(), ESCORT_MOTION_TYPE, FillPointMovementListForCreature(), MotionMaster::GetCurrentMovementGeneratorType(), Object::GetEntry(), Unit::GetMotionMaster(), MotionMaster::GetMotionSlotType(), Quest::GetQuestId(), Creature::GetScriptName(), Unit::GetVictim(), HasEscortState(), HasImmuneToNPCFlags, Unit::IsImmuneToNPC(), LOG_DEBUG, LOG_ERROR, m_bCanInstantRespawn, m_bCanReturnToStart, m_bIsActiveAttacker, m_pQuestForEscort, m_uiPlayerGUID, ScriptedAI::me, MOTION_SLOT_ACTIVE, MotionMaster::MoveIdle(), MotionMaster::MovementExpired(), Unit::ReplaceAllNpcFlags(), ScriptWP, Unit::SetImmuneToNPC(), STATE_ESCORT_ESCORTING, ObjectGuid::ToString(), UNIT_NPC_FLAG_NONE, WAYPOINT_MOTION_TYPE, and WaypointList.
Referenced by boss_bjarngrim::boss_bjarngrim(), boss_thorim_lightning_orb::boss_thorim_lightning_orbAI::boss_thorim_lightning_orbAI(), boss_thorim_sif_blizzard::boss_thorim_sif_blizzardAI::boss_thorim_sif_blizzardAI(), boss_yoggsaron_cloud::boss_yoggsaron_cloudAI::boss_yoggsaron_cloudAI(), brann_bronzebeard::brann_bronzebeardAI::DoAction(), npc_tirions_gambit_tirion::npc_tirions_gambit_tirionAI::DoAction(), npc_taretha::npc_tarethaAI::DoAction(), npc_general_andorov::InitializeAI(), npc_kservant::npc_kservantAI::IsSummonedBy(), npc_custodian_of_time::npc_custodian_of_timeAI::MoveInLineOfSight(), npc_ancestral_wolf::npc_ancestral_wolfAI::npc_ancestral_wolfAI(), npc_frosthound::PassengerBoarded(), npc_icefang::npc_icefangAI::PassengerBoarded(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::ReorderInstance(), npc_onyx_flamecaller::npc_onyx_flamecallerAI::Reset(), npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI::Reset(), npc_plaguehound_tracker::npc_plaguehound_trackerAI::Reset(), npc_time_lost_proto_drake::npc_time_lost_proto_drakeAI::RollPath(), boss_grand_champion::boss_grand_championAI::SetData(), npc_argent_soldier::npc_argent_soldierAI::SetData(), npc_kurenai_captive::npc_kurenai_captiveAI::SetGUID(), npc_captain_saeed::npc_captain_saeedAI::SetGUID(), npc_professor_phizzlethorpe::npc_professor_phizzlethorpeAI::sQuestAccept(), npc_ranger_lilatha::sQuestAccept(), npc_rinji::npc_rinjiAI::sQuestAccept(), npc_corporal_keeshan::npc_corporal_keeshanAI::sQuestAccept(), npc_muglash::npc_muglashAI::sQuestAccept(), npc_wounded_blood_elf::npc_wounded_blood_elfAI::sQuestAccept(), npc_barnes::npc_barnesAI::StartEvent(), npc_clintar_spirit::npc_clintar_spiritAI::StartEvent(), npc_arthas::npc_arthasAI::UpdateAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::UpdateAI(), npc_crok_scourgebane::npc_crok_scourgebaneAI::UpdateAI(), violet_hold_trashAI::UpdateAI(), npc_azure_saboteur::npc_azure_saboteurAI::UpdateAI(), npc_grimstone::npc_grimstoneAI::UpdateEscortAI(), npc_magwin::npc_magwinAI::UpdateEscortAI(), and npc_cork_gizelton::npc_cork_gizeltonAI::UpdateEscortAI().
|
overridevirtual |
Use to start attacking a target. Called just before JustEngagedWith()
Implements UnitAI.
Reimplemented in npc_rocknot::npc_rocknotAI, npc_professor_phizzlethorpe::npc_professor_phizzlethorpeAI, npc_varian_wrynn::npc_varian_wrynnAI, npc_thrall_bfu::npc_thrall_bfuAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, npc_muglash::npc_muglashAI, npc_mimirons_inferno::npc_mimirons_infernoAI, violet_hold_trashAI, npc_lurgglbr::npc_lurgglbrAI, npc_frosthound, npc_icefang::npc_icefangAI, npc_maghar_captive::npc_maghar_captiveAI, npc_garments_of_quests::npc_garments_of_questsAI, npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI, npc_tyrion_spybot::npc_tyrion_spybotAI, and npc_maxx_a_million_escort::npc_maxx_a_million_escortAI.
References CurrentWP, DespawnAtEnd, DespawnAtFar, Creature::DespawnOrUnsummon(), Movement::MoveSpline::Finalized(), GenerateWaypointArray(), Unit::GetMotionMaster(), Creature::GetRespawnPosition(), Unit::GetVictim(), HasEscortState(), IsPlayerOrGroupInRange(), JustDied, m_bCanInstantRespawn, m_bCanReturnToStart, m_uiPlayerCheckTimer, m_uiPlayerGUID, m_uiWPWaitTimer, ScriptedAI::me, MotionMaster::MovePoint(), Unit::movespline, MotionMaster::MoveSplinePath(), POINT_HOME, RemoveEscortState(), Creature::Respawn(), Creature::setDeathState(), STATE_ESCORT_ESCORTING, STATE_ESCORT_PAUSED, STATE_ESCORT_RETURNING, UpdateEscortAI(), WaypointList, and WaypointStart().
Referenced by npc_daphne_stilwell::npc_daphne_stilwellAI::Update(), npc_rocknot::npc_rocknotAI::UpdateAI(), npc_barnes::npc_barnesAI::UpdateAI(), npc_professor_phizzlethorpe::npc_professor_phizzlethorpeAI::UpdateAI(), npc_corporal_keeshan::npc_corporal_keeshanAI::UpdateAI(), npc_varian_wrynn::npc_varian_wrynnAI::UpdateAI(), npc_thrall_bfu::npc_thrall_bfuAI::UpdateAI(), npc_arthas::npc_arthasAI::UpdateAI(), npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI::UpdateAI(), npc_muglash::npc_muglashAI::UpdateAI(), npc_clintar_spirit::npc_clintar_spiritAI::UpdateAI(), npc_custodian_of_time::npc_custodian_of_timeAI::UpdateAI(), npc_ame::npc_ameAI::UpdateAI(), npc_argent_soldier::npc_argent_soldierAI::UpdateAI(), boss_grand_champion::boss_grand_championAI::UpdateAI(), npc_crok_scourgebane::npc_crok_scourgebaneAI::UpdateAI(), npc_mimirons_inferno::npc_mimirons_infernoAI::UpdateAI(), violet_hold_trashAI::UpdateAI(), npc_azure_saboteur::npc_azure_saboteurAI::UpdateAI(), npc_lurgglbr::npc_lurgglbrAI::UpdateAI(), npc_frosthound::UpdateAI(), npc_icefang::npc_icefangAI::UpdateAI(), npc_maghar_captive::npc_maghar_captiveAI::UpdateAI(), npc_captain_saeed::npc_captain_saeedAI::UpdateAI(), npc_garments_of_quests::npc_garments_of_questsAI::UpdateAI(), npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI::UpdateAI(), npc_tyrion_spybot::npc_tyrion_spybotAI::UpdateAI(), npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI::UpdateAI(), npc_engineer_helice::npc_engineer_heliceAI::UpdateAI(), and npc_maxx_a_million_escort::npc_maxx_a_million_escortAI::UpdateAI().
|
virtual |
Reimplemented in npc_grimstone::npc_grimstoneAI, npc_rinji::npc_rinjiAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, npc_general_andorov, npc_magwin::npc_magwinAI, npc_cork_gizelton::npc_cork_gizeltonAI, npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI, npc_ranshalla::npc_ranshallaAI, npc_onyx_flamecaller::npc_onyx_flamecallerAI, boss_bjarngrim, brann_bronzebeard::brann_bronzebeardAI, boss_yoggsaron_cloud::boss_yoggsaron_cloudAI, npc_apothecary_hanes::npc_Apothecary_HanesAI, npc_tirions_gambit_tirion::npc_tirions_gambit_tirionAI, npc_time_lost_proto_drake::npc_time_lost_proto_drakeAI, npc_kurenai_captive::npc_kurenai_captiveAI, npc_isla_starmane::npc_isla_starmaneAI, npc_crok_scourgebane::npc_crok_scourgebaneAI, and npc_bonker_togglevolt::npc_bonker_togglevoltAI.
References UnitAI::DoMeleeAttackIfReady(), and CreatureAI::UpdateVictim().
Referenced by UpdateAI(), npc_magwin::npc_magwinAI::UpdateEscortAI(), npc_ranshalla::npc_ranshallaAI::UpdateEscortAI(), and brann_bronzebeard::brann_bronzebeardAI::UpdateEscortAI().
|
pure virtual |
Implemented in npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI, boss_grand_champion::boss_grand_championAI, npc_captain_saeed::npc_captain_saeedAI, brann_bronzebeard::brann_bronzebeardAI, violet_hold_trashAI, boss_bjarngrim, npc_ranshalla::npc_ranshallaAI, npc_tirions_gambit_tirion::npc_tirions_gambit_tirionAI, npc_argent_soldier::npc_argent_soldierAI, npc_arthas::npc_arthasAI, npc_azure_saboteur::npc_azure_saboteurAI, npc_grimstone::npc_grimstoneAI, npc_rocknot::npc_rocknotAI, npc_barnes::npc_barnesAI, npc_professor_phizzlethorpe::npc_professor_phizzlethorpeAI, npc_ranger_lilatha, npc_rinji::npc_rinjiAI, npc_corporal_keeshan::npc_corporal_keeshanAI, npc_deathstalker_erland::npc_deathstalker_erlandAI, npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI, npc_tyrion_spybot::npc_tyrion_spybotAI, npc_varian_wrynn::npc_varian_wrynnAI, npc_thrall_bfu::npc_thrall_bfuAI, npc_daphne_stilwell::npc_daphne_stilwellAI, npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, npc_taretha::npc_tarethaAI, npc_general_andorov, npc_muglash::npc_muglashAI, npc_magwin::npc_magwinAI, npc_prospector_remtravel::npc_prospector_remtravelAI, npc_cork_gizelton::npc_cork_gizeltonAI, npc_clintar_spirit::npc_clintar_spiritAI, npc_kaya_flathoof::npc_kaya_flathoofAI, npc_custodian_of_time::npc_custodian_of_timeAI, npc_gilthares::npc_giltharesAI, npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI, npc_lakota_windsong::npc_lakota_windsongAI, npc_paoka_swiftmountain::npc_paoka_swiftmountainAI, npc_ame::npc_ameAI, npc_onyx_flamecaller::npc_onyx_flamecallerAI, npc_crok_scourgebane::npc_crok_scourgebaneAI, npc_lurgglbr::npc_lurgglbrAI, npc_mootoo_the_younger::npc_mootoo_the_youngerAI, npc_bonker_togglevolt::npc_bonker_togglevoltAI, npc_emily::npc_emilyAI, npc_apothecary_hanes::npc_Apothecary_HanesAI, npc_plaguehound_tracker::npc_plaguehound_trackerAI, npc_engineer_helice::npc_engineer_heliceAI, npc_frosthound, npc_ancestral_wolf::npc_ancestral_wolfAI, npc_wounded_blood_elf::npc_wounded_blood_elfAI, npc_maghar_captive::npc_maghar_captiveAI, npc_kurenai_captive::npc_kurenai_captiveAI, npc_bessy::npc_bessyAI, npc_maxx_a_million_escort::npc_maxx_a_million_escortAI, npc_kservant::npc_kservantAI, npc_isla_starmane::npc_isla_starmaneAI, npc_mimirons_inferno::npc_mimirons_infernoAI, boss_thorim_lightning_orb::boss_thorim_lightning_orbAI, boss_thorim_sif_blizzard::boss_thorim_sif_blizzardAI, boss_yoggsaron_cloud::boss_yoggsaron_cloudAI, npc_time_lost_proto_drake::npc_time_lost_proto_drakeAI, npc_icefang::npc_icefangAI, and npc_garments_of_quests::npc_garments_of_questsAI.
Referenced by MovementInform().
|
inlinevirtual |
Reimplemented in npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, and npc_crok_scourgebane::npc_crok_scourgebaneAI.
Referenced by UpdateAI().
|
private |
Referenced by GenerateWaypointArray(), MovementInform(), SetNextWaypoint(), Start(), and UpdateAI().
|
private |
Referenced by SetDespawnAtEnd(), and UpdateAI().
|
private |
Referenced by SetDespawnAtFar(), and UpdateAI().
|
private |
Referenced by EnterEvadeMode(), and Start().
|
private |
Referenced by Start(), and UpdateAI().
|
private |
Referenced by Start(), and UpdateAI().
|
private |
Referenced by GetAttack(), SetCanAttack(), and Start().
|
private |
Referenced by JustDied(), and Start().
|
private |
Referenced by AddEscortState(), HasEscortState(), IsEscorted(), and RemoveEscortState().
|
private |
Referenced by UpdateAI().
|
private |
Referenced by GetEventStarterGUID(), GetPlayerForEscort(), JustDied(), Start(), and UpdateAI().
|
private |
Referenced by JustRespawned(), MovementInform(), and UpdateAI().
|
private |
Referenced by GetMaxPlayerDistance(), and SetMaxPlayerDistance().
|
private |
Referenced by AddWaypoint(), and Start().
|
private |
Referenced by AddWaypoint(), FillPointMovementListForCreature(), GenerateWaypointArray(), MovementInform(), SetNextWaypoint(), Start(), and UpdateAI().