![]() |
TrinityCore
|
#include <hyjalAI.h>
Inheritance diagram for hyjalAI:Classes | |
| struct | Spell |
Public Member Functions | |
| hyjalAI (Creature *creature) | |
| void | Initialize () |
| void | Reset () override |
| void | EnterEvadeMode (EvadeReason why) override |
| void | JustEngagedWith (Unit *who) override |
| void | UpdateAI (uint32 diff) override |
| void | JustDied (Unit *killer) override |
| void | SetFaction (uint32 _faction) |
| void | Retreat () |
| void | SpawnVeins () |
| void | DeSpawnVeins () |
| void | JustSummoned (Creature *summoned) override |
| void | SummonedCreatureDespawn (Creature *summoned) override |
| void | HideNearPos (float x, float y) |
| void | RespawnNearPos (float x, float y) |
| void | WaypointReached (uint32 waypointId, uint32) override |
| void | DoOverrun (uint32 faction, const uint32 diff) |
| void | MoveInLineOfSight (Unit *who) override |
| void | SummonCreature (uint32 entry, float Base[4][3]) |
| void | SummonNextWave (const Wave wave[18], uint32 Count, float Base[4][3]) |
| void | StartEvent (Player *player) |
| uint32 | GetInstanceData (uint32 Event) |
Public Member Functions inherited from EscortAI | |
| EscortAI (Creature *creature) noexcept | |
| ~EscortAI () | |
| void | InitializeAI () override |
| void | ReturnToLastPoint () |
| void | MovementInform (uint32, uint32) override |
| virtual void | UpdateEscortAI (uint32 diff) |
| void | AddWaypoint (uint32 id, float x, float y, float z, bool run) |
| void | AddWaypoint (uint32 id, float x, float y, float z, float orientation=0.f, Optional< Milliseconds > waitTime={}, bool run=false) |
| void | ResetPath () |
| void | LoadPath (uint32 pathId) |
| void | Start (bool isActiveAttacker=true, ObjectGuid playerGUID=ObjectGuid::Empty, Quest const *quest=nullptr, bool instantRespawn=false, bool canLoopPath=false) |
| void | SetEscortPaused (bool on) |
| void | SetPauseTimer (Milliseconds timer) |
| bool | HasEscortState (uint32 escortState) |
| bool | IsEscorted () const override |
| void | SetMaxPlayerDistance (float newMax) |
| float | GetMaxPlayerDistance () const |
| void | SetDespawnAtEnd (bool despawn) |
| void | SetDespawnAtFar (bool despawn) |
| bool | IsActiveAttacker () const |
| void | SetActiveAttacker (bool enable) |
| ObjectGuid | GetEventStarterGUID () const |
Public Member Functions inherited from ScriptedAI | |
| ScriptedAI (Creature *creature, uint32 scriptId=0) noexcept | |
| virtual | ~ScriptedAI () |
| void | AttackStartNoMove (Unit *target) |
| void | AttackStart (Unit *) override |
| == Triggered Actions Requested ================== | |
| 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 | AddThreat (Unit *victim, float amount, Unit *who=nullptr) |
| void | ModifyThreatByPercent (Unit *victim, int32 pct, Unit *who=nullptr) |
| void | ResetThreat (Unit *victim, Unit *who=nullptr) |
| void | ResetThreatList (Unit *who=nullptr) |
| float | GetThreat (Unit const *victim, Unit const *who=nullptr) |
| void | ForceCombatStop (Creature *who, bool reset=true) |
| void | ForceCombatStopForCreatureEntry (uint32 entry, float maxSearchRange=250.0f, bool samePhase=true, bool reset=true) |
| void | ForceCombatStopForCreatureEntry (std::vector< uint32 > creatureEntries, float maxSearchRange=250.0f, bool samePhase=true, bool reset=true) |
| void | DoTeleportTo (float x, float y, float z, uint32 time=0) |
| void | DoTeleportTo (float const pos[4]) |
| void | DoTeleportPlayer (Unit *unit, float x, float y, float z, float o) |
| void | DoTeleportAll (float x, float y, float z, float o) |
| Unit * | DoSelectLowestHpFriendly (float range, uint32 minHPDiff=1) |
| Unit * | DoSelectBelowHpPctFriendlyWithEntry (uint32 entry, float range, uint8 hpPct=1, bool excludeSelf=true) |
| 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, Milliseconds despawntime) |
| bool | HealthBelowPct (uint32 pct) const |
| bool | HealthAbovePct (uint32 pct) const |
| SpellInfo const * | SelectSpell (Unit *target, uint32 school, uint32 mechanic, SelectTargetType targets, 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) |
| void | SetCombatMovement (bool allowMovement) |
| bool | IsCombatMovementAllowed () const |
| bool | IsLFR () const |
| bool | IsNormal () const |
| bool | IsHeroic () const |
| bool | IsMythic () const |
| bool | IsMythicPlus () const |
| bool | IsHeroicOrHigher () const |
| bool | IsTimewalking () const |
| Difficulty | GetDifficulty () const |
| bool | Is25ManRaid () const |
| void | SetAggressiveStateAfter (Milliseconds timer, Creature *who=nullptr, bool startCombat=true, Creature *summoner=nullptr, StartCombatArgs const &combatArgs={ }) |
| void | DoAddEvent (Milliseconds timer, BasicEvent *event, WorldObject *who=nullptr) |
| template<class T > | |
| T const & | DUNGEON_MODE (T const &normal5, T const &heroic10) const |
| template<class T > | |
| T const & | RAID_MODE (T const &normal10, T const &normal25) const |
| template<class T > | |
| T const & | RAID_MODE (T const &normal10, T const &normal25, T const &heroic10, T const &heroic25) const |
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 | KilledUnit (Unit *) |
| virtual void | IsSummonedBy (WorldObject *) |
| virtual void | SummonedCreatureDies (Creature *, Unit *) |
| 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 | SpellHit (WorldObject *, SpellInfo const *) |
| virtual void | SpellHitTarget (WorldObject *, SpellInfo const *) |
| virtual void | OnSpellCast (SpellInfo const *) |
| virtual void | OnSpellFailed (SpellInfo const *) |
| virtual void | OnSpellStart (SpellInfo const *) |
| virtual void | OnChannelFinished (SpellInfo const *) |
| virtual void | OnAuraApplied (AuraApplication const *) |
| virtual void | OnAuraRemoved (AuraApplication const *) |
| virtual void | JustAppeared () |
| void | OnCharmed (bool isNew) override |
| virtual void | JustReachedHome () |
| void | DoZoneInCombat () |
| virtual void | ReceiveEmote (Player *, uint32) |
| virtual void | OwnerAttackedBy (Unit *attacker) |
| virtual void | OwnerAttacked (Unit *target) |
| virtual void | CorpseRemoved (uint32 &) |
| == State checks ================================= | |
| virtual Optional< QuestGiverStatus > | GetDialogStatus (Player const *player) |
| == Gossip system ================================ | |
| virtual bool | OnGossipHello (Player *) |
| virtual bool | OnGossipSelect (Player *, uint32, uint32) |
| virtual bool | OnGossipSelectCode (Player *, uint32, uint32, char const *) |
| virtual void | OnQuestAccept (Player *, Quest const *) |
| virtual void | OnQuestReward (Player *, Quest const *, LootItemType, uint32) |
| virtual void | WaypointStarted (uint32, uint32) |
| == Waypoints system ============================= | |
| virtual void | WaypointPathEnded (uint32, uint32) |
| virtual void | PassengerBoarded (Unit *, int8, bool) |
| == Fields ======================================= | |
| virtual void | OnSpellClick (Unit *, bool) |
| 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 | DoAction (int32 param) |
| virtual uint32 | GetData (uint32 id) const |
| virtual void | SetData (uint32 id, uint32 value) |
| virtual void | SetGUID (ObjectGuid const &guid, int32 id) |
| virtual ObjectGuid | GetGUID (int32 id) const |
| 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 | OnDespawn () |
| virtual void | DamageDealt (Unit *, uint32 &, DamageEffectType) |
| virtual void | DamageTaken (Unit *, uint32 &, DamageEffectType, SpellInfo const *) |
| virtual void | HealReceived (Unit *, uint32 &) |
| 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 void | OnGameEvent (bool, uint16) |
| virtual std::string | GetDebugInfo () const |
Public Attributes | |
| InstanceScript * | instance |
| ObjectGuid | PlayerGUID |
| ObjectGuid | BossGUID [2] |
| ObjectGuid | VeinGUID [14] |
| uint32 | NextWaveTimer |
| uint32 | WaveCount |
| uint32 | CheckTimer |
| uint32 | Faction |
| uint32 | EnemyCount |
| uint32 | RetreatTimer |
| bool | EventBegun |
| bool | FirstBossDead |
| bool | SecondBossDead |
| bool | Summon |
| bool | bRetreat |
| bool | Debug |
| bool | VeinsSpawned [2] |
| uint8 | InfernalCount |
| SummonList | Summons |
| bool | Overrun |
| bool | Teleported |
| bool | WaitForTeleport |
| uint32 | TeleportTimer |
| uint32 | OverrunCounter |
| uint32 | OverrunCounter2 |
| uint32 | InfernalPoint |
| uint32 | RespawnTimer |
| bool | DoRespawn |
| bool | DoHide |
| bool | IsDummy |
| uint32 | MassTeleportTimer |
| bool | DoMassTeleport |
| ObjectGuid | DummyGuid |
| struct hyjalAI::Spell | Spells [HYJAL_AI_MAX_SPELLS] |
Private Attributes | |
| uint32 | SpellTimer [3] |
Additional Inherited Members | |
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 () |
Static Public Attributes inherited from UnitAI | |
| static std::unordered_map< std::pair< uint32, Difficulty >, AISpellInfoType > | AISpellInfo |
Protected Member Functions inherited from EscortAI | |
| Player * | GetPlayerForEscort () |
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 |
| hyjalAI::hyjalAI | ( | Creature * | creature | ) |
Definition at line 320 of file hyjalAI.cpp.
References DoMassTeleport, DoRespawn, WorldObject::GetInstanceScript(), InfernalCount, Initialize(), instance, MassTeleportTimer, Overrun, OverrunCounter, OverrunCounter2, RespawnTimer, Teleported, TeleportTimer, VeinsSpawned, and WaitForTeleport.
| void hyjalAI::DeSpawnVeins | ( | ) |
Definition at line 675 of file hyjalAI.cpp.
References Creature::AI(), CAST_AI, DATA_JAINAPROUDMOORE, DATA_THRALL, Faction, ObjectAccessor::GetCreature(), Map::GetGameObject(), InstanceScript::GetGuidData(), InstanceScript::instance, instance, CreatureAI::me, and VeinGUID.
Referenced by npc_thrall::npc_thrallAI::OnGossipSelect(), and StartEvent().
Definition at line 973 of file hyjalAI.cpp.
References ABOMINATION, Creature::AI(), AllianceBase, AllianceFirePos, AllianceOverrunGargPos, bRetreat, UnitAI::DoCast(), ENSURE_AI, Faction, FACTION_FRIENDLY, GARGOYLE, WorldObject::GetGridActivationRange(), GHOUL, GIANT_INFERNAL, GO_ROARING_FLAME, HordeBase, HordeFirePos, InfernalSPWP, irand(), CreatureAI::me, Overrun, rand32(), RetreatTimer, WorldObject::setActive(), WorldObject::SetFarVisible(), Creature::SetHomePosition(), SPELL_TELEPORT_VISUAL, WorldObject::SummonCreature(), WorldObject::SummonGameObject(), Teleported, TeleportTimer, TEMPSUMMON_MANUAL_DESPAWN, UNIT_FLAG_NON_ATTACKABLE, EscortAI::UpdateAI(), Cell::VisitGridObjects(), and WaitForTeleport.
Referenced by UpdateAI().
|
overridevirtual |
Reimplemented from EscortAI.
Definition at line 424 of file hyjalAI.cpp.
References Unit::CombatStop(), CreatureAI::EngagementOver(), Object::GetEntry(), Unit::GetMotionMaster(), Unit::IsAlive(), JAINA, Creature::LoadCreaturesAddon(), CreatureAI::me, MotionMaster::MoveTargetedHome(), Unit::RemoveAllAuras(), and Creature::SetTappedBy().
Definition at line 611 of file hyjalAI.cpp.
References ZoneScript::GetData(), and instance.
Referenced by npc_thrall::npc_thrallAI::OnGossipHello().
| void hyjalAI::HideNearPos | ( | float | x, |
| float | y | ||
| ) |
Definition at line 901 of file hyjalAI.cpp.
References FACTION_FRIENDLY, WorldObject::GetGridActivationRange(), WorldObject::GetMap(), CreatureAI::me, and Cell::VisitGridObjects().
Referenced by UpdateAI().
| void hyjalAI::Initialize | ( | ) |
Definition at line 340 of file hyjalAI.cpp.
References BossGUID, bRetreat, CheckTimer, ObjectGuid::Clear(), Debug, DoHide, EnemyCount, EventBegun, Faction, FirstBossDead, HYJAL_AI_MAX_SPELLS, IsDummy, NextWaveTimer, PlayerGUID, RetreatTimer, SecondBossDead, Summon, and WaveCount.
|
overridevirtual |
Reimplemented from EscortAI.
Definition at line 889 of file hyjalAI.cpp.
References DATA_RESET_RAIDDAMAGE, DEATH, DoRespawn, instance, IsDummy, CreatureAI::me, Creature::Respawn(), RespawnTimer, ZoneScript::SetData(), and Unit::SetVisible().
|
overridevirtual |
Reimplemented from CreatureAI.
Definition at line 439 of file hyjalAI.cpp.
References ATTACKED, Cooldown, HYJAL_AI_MAX_SPELLS, IsDummy, and SpellTimer.
|
overridevirtual |
Reimplemented from CreatureAI.
Definition at line 375 of file hyjalAI.cpp.
|
overridevirtual |
Reimplemented from EscortAI.
Definition at line 449 of file hyjalAI.cpp.
References IsDummy, and EscortAI::MoveInLineOfSight().
|
overridevirtual |
Reimplemented from UnitAI.
Definition at line 385 of file hyjalAI.cpp.
References DATA_ALLIANCE_RETREAT, DATA_RESET_TRASH_COUNT, UnitAI::DoCastSelf(), InstanceScript::DoUpdateWorldState(), Faction, ZoneScript::GetData(), Object::GetEntry(), Initialize(), instance, JAINA, CreatureAI::me, WorldObject::setActive(), ZoneScript::SetData(), WorldObject::SetFarVisible(), Unit::SetNpcFlag(), SPELL_BRILLIANCE_AURA, SPELL_TRUESHOT_AURA, THRALL, TYRANDE, UNIT_NPC_FLAG_GOSSIP, WORLD_STATE_ENEMY, WORLD_STATE_ENEMYCOUNT, and WORLD_STATE_WAVES.
| void hyjalAI::RespawnNearPos | ( | float | x, |
| float | y | ||
| ) |
Definition at line 919 of file hyjalAI.cpp.
References WorldObject::GetGridActivationRange(), WorldObject::GetMap(), CreatureAI::me, and Cell::VisitGridObjects().
Referenced by UpdateAI().
| void hyjalAI::Retreat | ( | ) |
Definition at line 616 of file hyjalAI.cpp.
References EscortAI::AddWaypoint(), Creature::AI(), DATA_ALLIANCE_RETREAT, DATA_HORDE_RETREAT, DummyGuid, ENSURE_AI, Faction, BaseEntity::GetGUID(), instance, JAINA, JainaDummySpawn, JainaWPs, CreatureAI::me, Overrun, Unit::RemoveNpcFlag(), ZoneScript::SetData(), EscortAI::SetDespawnAtEnd(), SpawnVeins(), SPECIAL, EscortAI::Start(), WorldObject::SummonCreature(), TEMPSUMMON_TIMED_DESPAWN, TYPE_RETREAT, and UNIT_NPC_FLAG_GOSSIP.
Referenced by npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipSelect(), and npc_thrall::npc_thrallAI::OnGossipSelect().
|
inline |
| void hyjalAI::SpawnVeins | ( | ) |
Definition at line 647 of file hyjalAI.cpp.
References Faction, BaseEntity::GetGUID(), GO_ANCIENT_VEIN, CreatureAI::me, WorldObject::SummonGameObject(), VeinGUID, VeinPos, and VeinsSpawned.
Referenced by Retreat().
| void hyjalAI::StartEvent | ( | Player * | player | ) |
Definition at line 588 of file hyjalAI.cpp.
References BEGIN, CheckTimer, DeSpawnVeins(), InstanceScript::DoUpdateWorldState(), EventBegun, BaseEntity::GetGUID(), instance, IsDummy, CreatureAI::me, NextWaveTimer, PlayerGUID, Unit::RemoveNpcFlag(), Summon, UNIT_NPC_FLAG_GOSSIP, WORLD_STATE_ENEMY, WORLD_STATE_ENEMYCOUNT, and WORLD_STATE_WAVES.
Referenced by npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipSelect(), and npc_thrall::npc_thrallAI::OnGossipSelect().
| void hyjalAI::SummonCreature | ( | uint32 | entry, |
| float | Base[4][3] | ||
| ) |
Definition at line 457 of file hyjalAI.cpp.
References ABOMINATION, Creature::AI(), BANSHEE, Base, BossGUID, CheckTimer, CRYPT_FIEND, DATA_RAIDDAMAGE, EnemyCount, ENSURE_AI, FEL_STALKER, FirstBossDead, FROST_WYRM, GARGOYLE, ZoneScript::GetData(), BaseEntity::GetGUID(), GHOUL, GIANT_INFERNAL, InfernalCount, InfernalPos, instance, irand(), Creature::isWorldBoss(), CreatureAI::me, MINRAIDDAMAGE, NECROMANCER, rand32(), WorldObject::setActive(), Creature::SetDisableReputationGain(), WorldObject::SetFarVisible(), Unit::SetWalk(), SPAWN_GARG_GATE, SPAWN_NEAR_TOWER, SPAWN_WYRM_GATE, SpawnLoc, SpawnPointSpecial, WorldObject::SummonCreature(), TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, and WaveCount.
Referenced by SummonNextWave().
|
overridevirtual |
Reimplemented from CreatureAI.
Definition at line 380 of file hyjalAI.cpp.
Definition at line 538 of file hyjalAI.cpp.
References Base, CheckTimer, Count, DATA_TRASH, Debug, InstanceScript::DoUpdateWorldState(), EnemyCount, FirstBossDead, ZoneScript::GetData(), InfernalCount, instance, NextWaveTimer, RALLY, rand32(), ZoneScript::SetData(), Summon, SummonCreature(), TC_LOG_DEBUG, Wave::WaveTimer, WORLD_STATE_ENEMY, WORLD_STATE_ENEMYCOUNT, and WORLD_STATE_WAVES.
Referenced by UpdateAI().
|
overridevirtual |
Reimplemented from EscortAI.
Definition at line 705 of file hyjalAI.cpp.
References AllianceBase, AllianceFirePos, AllianceWaves, BossGUID, bRetreat, CheckTimer, ObjectGuid::Clear(), DATA_ALLIANCE_RETREAT, DATA_HORDE_RETREAT, DATA_TRASH, UnitAI::DoCast(), DoHide, DoMassTeleport, DoOverrun(), DoRespawn, InstanceScript::DoUpdateWorldState(), EnemyCount, EventBegun, Faction, FirstBossDead, ZoneScript::GetData(), Object::GetEntry(), Position::GetPositionX(), Position::GetPositionY(), ObjectAccessor::GetUnit(), Unit::GetVictim(), GO_ROARING_FLAME, HideNearPos(), HordeBase, HordeFirePos, HordeWaves, HYJAL_AI_MAX_SPELLS, INCOMING, instance, Unit::InterruptNonMeleeSpells(), Unit::IsAlive(), IsDummy, Unit::IsNonMeleeSpellCast(), JAINA, MassTeleportTimer, CreatureAI::me, NextWaveTimer, Overrun, Random, RespawnNearPos(), RespawnTimer, RetreatTimer, SecondBossDead, UnitAI::SelectTarget(), Unit::SetNpcFlag(), Unit::SetVisible(), SPELL_MASS_TELEPORT, SpellTimer, SUCCESS, Summon, WorldObject::SummonGameObject(), SummonNextWave(), TARGETTYPE_RANDOM, TARGETTYPE_SELF, TARGETTYPE_VICTIM, THRALL, UNIT_NPC_FLAG_GOSSIP, CreatureAI::UpdateVictim(), WaveCount, and WORLD_STATE_ENEMY.
Reimplemented from CreatureAI.
Definition at line 926 of file hyjalAI.cpp.
References UnitAI::DoCast(), DoMassTeleport, DummyGuid, ENSURE_AI, Position::GetAbsoluteAngle(), ObjectAccessor::GetCreature(), Object::GetEntry(), WorldObject::GetGridActivationRange(), WorldObject::GetNearPoint(), Position::GetPositionZ(), IDLE_MOTION_TYPE, irand(), ObjectGuid::IsEmpty(), JAINA, JAINA_RETREAT_HORDE_BASE, MassTeleportTimer, CreatureAI::me, SPELL_MASS_TELEPORT, CreatureAI::Talk(), TeleportTimer, THRALL, Cell::VisitGridObjects(), and WaitForTeleport.
| ObjectGuid hyjalAI::BossGUID[2] |
Definition at line 167 of file hyjalAI.h.
Referenced by Initialize(), SummonCreature(), and UpdateAI().
| bool hyjalAI::bRetreat |
Definition at line 181 of file hyjalAI.h.
Referenced by DoOverrun(), Initialize(), and UpdateAI().
| uint32 hyjalAI::CheckTimer |
Definition at line 172 of file hyjalAI.h.
Referenced by Initialize(), StartEvent(), SummonCreature(), SummonNextWave(), and UpdateAI().
| bool hyjalAI::Debug |
Definition at line 182 of file hyjalAI.h.
Referenced by Initialize(), npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipSelect(), npc_thrall::npc_thrallAI::OnGossipSelect(), and SummonNextWave().
| bool hyjalAI::DoHide |
Definition at line 195 of file hyjalAI.h.
Referenced by Initialize(), and UpdateAI().
| bool hyjalAI::DoMassTeleport |
Definition at line 198 of file hyjalAI.h.
Referenced by hyjalAI(), UpdateAI(), and WaypointReached().
| bool hyjalAI::DoRespawn |
Definition at line 194 of file hyjalAI.h.
Referenced by hyjalAI(), JustDied(), and UpdateAI().
| ObjectGuid hyjalAI::DummyGuid |
Definition at line 199 of file hyjalAI.h.
Referenced by Retreat(), and WaypointReached().
| uint32 hyjalAI::EnemyCount |
Definition at line 174 of file hyjalAI.h.
Referenced by Initialize(), SummonCreature(), SummonNextWave(), and UpdateAI().
| bool hyjalAI::EventBegun |
Definition at line 177 of file hyjalAI.h.
Referenced by Initialize(), npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipHello(), npc_thrall::npc_thrallAI::OnGossipHello(), StartEvent(), and UpdateAI().
| uint32 hyjalAI::Faction |
Definition at line 173 of file hyjalAI.h.
Referenced by DeSpawnVeins(), DoOverrun(), Initialize(), Reset(), Retreat(), SetFaction(), SpawnVeins(), and UpdateAI().
| bool hyjalAI::FirstBossDead |
Definition at line 178 of file hyjalAI.h.
Referenced by Initialize(), npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipSelect(), npc_thrall::npc_thrallAI::OnGossipSelect(), SummonCreature(), SummonNextWave(), and UpdateAI().
| uint8 hyjalAI::InfernalCount |
Definition at line 184 of file hyjalAI.h.
Referenced by hyjalAI(), SummonCreature(), and SummonNextWave().
| InstanceScript* hyjalAI::instance |
Definition at line 164 of file hyjalAI.h.
Referenced by DeSpawnVeins(), GetInstanceData(), hyjalAI(), JustDied(), npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipHello(), npc_thrall::npc_thrallAI::OnGossipHello(), npc_tyrande_whisperwind::npc_tyrande_whisperwindAI::OnGossipHello(), Reset(), Retreat(), StartEvent(), SummonCreature(), SummonNextWave(), and UpdateAI().
| bool hyjalAI::IsDummy |
Definition at line 196 of file hyjalAI.h.
Referenced by Initialize(), JustDied(), JustEngagedWith(), MoveInLineOfSight(), StartEvent(), and UpdateAI().
| uint32 hyjalAI::MassTeleportTimer |
Definition at line 197 of file hyjalAI.h.
Referenced by hyjalAI(), UpdateAI(), and WaypointReached().
| uint32 hyjalAI::NextWaveTimer |
Definition at line 170 of file hyjalAI.h.
Referenced by Initialize(), StartEvent(), SummonNextWave(), and UpdateAI().
| bool hyjalAI::Overrun |
Definition at line 186 of file hyjalAI.h.
Referenced by DoOverrun(), hyjalAI(), Retreat(), and UpdateAI().
| ObjectGuid hyjalAI::PlayerGUID |
Definition at line 166 of file hyjalAI.h.
Referenced by Initialize(), and StartEvent().
| uint32 hyjalAI::RespawnTimer |
Definition at line 193 of file hyjalAI.h.
Referenced by hyjalAI(), JustDied(), and UpdateAI().
| uint32 hyjalAI::RetreatTimer |
Definition at line 175 of file hyjalAI.h.
Referenced by DoOverrun(), Initialize(), and UpdateAI().
| bool hyjalAI::SecondBossDead |
Definition at line 179 of file hyjalAI.h.
Referenced by Initialize(), and UpdateAI().
| struct hyjalAI::Spell hyjalAI::Spells[HYJAL_AI_MAX_SPELLS] |
|
private |
Definition at line 209 of file hyjalAI.h.
Referenced by JustEngagedWith(), and UpdateAI().
| bool hyjalAI::Summon |
Definition at line 180 of file hyjalAI.h.
Referenced by Initialize(), StartEvent(), SummonNextWave(), and UpdateAI().
| SummonList hyjalAI::Summons |
| bool hyjalAI::Teleported |
Definition at line 187 of file hyjalAI.h.
Referenced by DoOverrun(), and hyjalAI().
| uint32 hyjalAI::TeleportTimer |
Definition at line 189 of file hyjalAI.h.
Referenced by DoOverrun(), hyjalAI(), and WaypointReached().
| ObjectGuid hyjalAI::VeinGUID[14] |
Definition at line 168 of file hyjalAI.h.
Referenced by DeSpawnVeins(), and SpawnVeins().
| bool hyjalAI::VeinsSpawned[2] |
Definition at line 183 of file hyjalAI.h.
Referenced by hyjalAI(), and SpawnVeins().
| bool hyjalAI::WaitForTeleport |
Definition at line 188 of file hyjalAI.h.
Referenced by DoOverrun(), hyjalAI(), and WaypointReached().
| uint32 hyjalAI::WaveCount |
Definition at line 171 of file hyjalAI.h.
Referenced by Initialize(), npc_jaina_proudmoore::npc_jaina_proudmooreAI::OnGossipSelect(), npc_thrall::npc_thrallAI::OnGossipSelect(), SummonCreature(), and UpdateAI().