AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
npc_hor_leader_second::npc_hor_leader_secondAI Struct Reference
Inheritance diagram for npc_hor_leader_second::npc_hor_leader_secondAI:
NullCreatureAI CreatureAI UnitAI

Public Member Functions

 npc_hor_leader_secondAI (Creature *creature)
 
void Reset () override
 
void DoAction (int32 actionId) override
 
void DamageTaken (Unit *, uint32 &dmg, DamageEffectType, SpellSchoolMask) override
 
void MoveToNextStopPoint ()
 
void MovementInform (uint32 type, uint32) override
 
void UpdateAI (uint32 diff) override
 
- Public Member Functions inherited from NullCreatureAI
 NullCreatureAI (Creature *c)
 
void MoveInLineOfSight (Unit *) override
 
void AttackStart (Unit *) override
 
void UpdateAI (uint32) override
 
void EnterEvadeMode (EvadeReason) override
 
void OnCharmed (bool) override
 
- Public Member Functions inherited from CreatureAI
void Talk (uint8 id, WorldObject const *whisperTarget=nullptr, Milliseconds delay=0s)
 Causes the creature to talk/say the text assigned to their entry in the creature_text database table.
 
void Talk (uint8 id, Milliseconds delay)
 
 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 EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER)
 
virtual void JustEngagedWith (Unit *)
 Called for reaction when initially engaged.
 
virtual void JustDied (Unit *)
 
virtual void KilledUnit (Unit *)
 
virtual void JustSummoned (Creature *)
 
virtual void IsSummonedBy (WorldObject *)
 
virtual void SummonedCreatureDespawn (Creature *)
 
virtual void SummonedCreatureDies (Creature *, Unit *)
 
virtual void SummonedCreatureDespawnAll ()
 
virtual void SpellHit (Unit *, SpellInfo const *)
 
virtual void SpellHitTarget (Unit *, SpellInfo const *)
 
virtual void AttackedBy (Unit *)
 
virtual bool IsEscorted ()
 
virtual void JustRespawned ()
 
virtual void MovementInform (uint32, uint32)
 
virtual void PathEndReached (uint32)
 
void OnCharmed (bool apply) override
 
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 ()
 
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 *)
 
- Public Member Functions inherited from UnitAI
 UnitAI (Unit *unit)
 
virtual ~UnitAI ()
 
virtual bool CanAIAttack (Unit const *) const
 
virtual void AttackStart (Unit *)
 
virtual void UpdateAI (uint32)=0
 
virtual void InitializeAI ()
 
virtual void Reset ()
 
virtual void OnCharmed (bool apply)=0
 
virtual void DoAction (int32)
 
virtual uint32 GetData (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void SetGUID (ObjectGuid, int32=0)
 
virtual ObjectGuid GetGUID (int32=0) const
 
UnitSelectTarget (SelectTargetMethod targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
 
template<class PREDICATE >
UnitSelectTarget (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)
 
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 (NOTE: Creature engage logic should NOT be here, but in JustEngagedWith, which happens once threat is established!)
 
virtual void JustExitedCombat ()
 Called when the unit leaves combat.
 
virtual void DamageDealt (Unit *, uint32 &, DamageEffectType)
 
virtual void DamageTaken (Unit *, uint32 &, DamageEffectType, SpellSchoolMask)
 
virtual void HealReceived (Unit *, uint32 &)
 
virtual void OnPowerUpdate (Powers, int32, int32, uint32)
 
virtual void HealDone (Unit *, uint32 &)
 
virtual void OnCalculateMeleeDamageReceived (uint32 &, Unit *)
 
virtual void OnCalculateSpellDamageReceived (int32 &, Unit *)
 
virtual void OnCalculatePeriodicTickReceived (uint32 &, Unit *)
 
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)
 
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)
 
SpellCastResult DoCastMaxThreat (uint32 spellId, uint32 threatTablePosition=0, float dist=0.0f, bool playerOnly=true, bool triggered=false)
 Cast spell on the max threat target, which may not always 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)
 
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
 

Public Attributes

InstanceScriptpInstance
 
EventMap events
 
uint8 currentStopPoint
 

Additional Inherited Members

- 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 NullCreatureAI
static int32 Permissible (Creature const *creature)
 
- 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 ()
 
- Static Public Attributes inherited from UnitAI
static AISpellInfoTypeAISpellInfo
 
- Protected Member Functions inherited from CreatureAI
bool UpdateVictim ()
 
bool UpdateVictimWithGaze ()
 
void SetGazeOn (Unit *target)
 
CreatureDoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
CreatureDoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
CreatureDoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
virtual void MoveInLineOfSight (Unit *)
 
bool _EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER)
 
- 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
 

Detailed Description

Constructor & Destructor Documentation

◆ npc_hor_leader_secondAI()

npc_hor_leader_second::npc_hor_leader_secondAI::npc_hor_leader_secondAI ( Creature creature)
inline
1931 : NullCreatureAI(creature)
1932 {
1934 if (!pInstance)
1935 me->IsAIEnabled = false;
1936
1937 }
Definition: PassiveAI.h:53
Creature *const me
Definition: CreatureAI.h:73
InstanceScript * GetInstanceScript() const
Definition: Object.cpp:1192
bool IsAIEnabled
Definition: Unit.h:2364
InstanceScript * pInstance
Definition: halls_of_reflection.cpp:1939

References WorldObject::GetInstanceScript(), Unit::IsAIEnabled, CreatureAI::me, and pInstance.

Member Function Documentation

◆ DamageTaken()

void npc_hor_leader_second::npc_hor_leader_secondAI::DamageTaken ( Unit ,
uint32 dmg,
DamageEffectType  ,
SpellSchoolMask   
)
inlineoverridevirtual

Reimplemented from UnitAI.

1971 {
1972 if (dmg >= me->GetHealth())
1973 dmg = me->GetHealth() - 1;
1974 }
uint32 GetHealth() const
Definition: Unit.h:1454

References Unit::GetHealth(), and CreatureAI::me.

◆ DoAction()

void npc_hor_leader_second::npc_hor_leader_secondAI::DoAction ( int32  actionId)
inlineoverridevirtual

Reimplemented from UnitAI.

1950 {
1951 switch(actionId)
1952 {
1953 case ACTION_START_INTRO:
1954 events.ScheduleEvent(EVENT_LK_SAY_AGGRO, 0ms);
1955 events.ScheduleEvent(EVENT_LK_BATTLE_1, 2s +500ms);
1956 events.ScheduleEvent(EVENT_LK_BATTLE_2, 3s);
1958 break;
1960 events.ScheduleEvent(EVENT_START_RUN, 0ms);
1961 break;
1964 if (currentStopPoint == 5)
1965 events.ScheduleEvent(EVENT_SAY_OPENING, 3s);
1966 break;
1967 }
1968 }
events
Definition: boss_sartura.cpp:43
@ ACTION_START_INTRO
Definition: boss_twinemperors.cpp:51
@ NPC_JAINA_PART2
Definition: forge_of_souls.h:43
@ EVENT_SYLVANAS_IMMOBILIZE_JUMP
Definition: halls_of_reflection.cpp:1625
@ EVENT_SAY_OPENING
Definition: halls_of_reflection.cpp:1640
@ EVENT_LK_BATTLE_2
Definition: halls_of_reflection.cpp:1621
@ EVENT_START_RUN
Definition: halls_of_reflection.cpp:1629
@ EVENT_JAINA_IMMOBILIZE_LK
Definition: halls_of_reflection.cpp:1624
@ EVENT_LK_SAY_AGGRO
Definition: halls_of_reflection.cpp:1619
@ EVENT_LK_BATTLE_1
Definition: halls_of_reflection.cpp:1620
@ ACTION_INFORM_WALL_DESTROYED
Definition: halls_of_reflection.h:255
@ ACTION_START_LK_FIGHT_REAL
Definition: halls_of_reflection.h:252
uint32 GetEntry() const
Definition: Object.h:109
void MoveToNextStopPoint()
Definition: halls_of_reflection.cpp:1976
uint8 currentStopPoint
Definition: halls_of_reflection.cpp:1941

References ACTION_INFORM_WALL_DESTROYED, ACTION_START_INTRO, ACTION_START_LK_FIGHT_REAL, currentStopPoint, EVENT_JAINA_IMMOBILIZE_LK, EVENT_LK_BATTLE_1, EVENT_LK_BATTLE_2, EVENT_LK_SAY_AGGRO, EVENT_SAY_OPENING, EVENT_START_RUN, EVENT_SYLVANAS_IMMOBILIZE_JUMP, Object::GetEntry(), CreatureAI::me, MoveToNextStopPoint(), and NPC_JAINA_PART2.

◆ MovementInform()

void npc_hor_leader_second::npc_hor_leader_secondAI::MovementInform ( uint32  type,
uint32   
)
inlineoverridevirtual

Reimplemented from CreatureAI.

1991 {
1992 if (type == ESCORT_MOTION_TYPE && me->movespline->Finalized())
1993 events.ScheduleEvent(EVENT_SAY_LEADER_STOP_TEXT, 1s);
1994 }
@ ESCORT_MOTION_TYPE
Definition: MotionMaster.h:55
@ EVENT_SAY_LEADER_STOP_TEXT
Definition: halls_of_reflection.cpp:1631
Movement::MoveSpline * movespline
Definition: Unit.h:2454
bool Finalized() const
Definition: MoveSpline.h:116

References ESCORT_MOTION_TYPE, EVENT_SAY_LEADER_STOP_TEXT, Movement::MoveSpline::Finalized(), CreatureAI::me, and Unit::movespline.

◆ MoveToNextStopPoint()

void npc_hor_leader_second::npc_hor_leader_secondAI::MoveToNextStopPoint ( )
inline
1977 {
1982 me->SetWalk(false);
1984 path.push_back(G3D::Vector3(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()));
1985 for (uint8 i = WP_STOP[currentStopPoint - 1] + (currentStopPoint == 1 ? 0 : 1); i <= WP_STOP[currentStopPoint]; ++i)
1986 path.push_back(G3D::Vector3(PathWaypoints[i].GetPositionX(), PathWaypoints[i].GetPositionY(), PathWaypoints[i].GetPositionZ()));
1988 }
std::uint8_t uint8
Definition: Define.h:110
@ SHEATH_STATE_MELEE
Definition: Unit.h:127
@ MOVE_RUN
Definition: Unit.h:379
const Position PathWaypoints[PATH_WP_COUNT]
Definition: halls_of_reflection.h:349
const uint8 WP_STOP[6]
Definition: halls_of_reflection.h:347
std::vector< Vector3 > PointsArray
Definition: MoveSplineInitArgs.h:28
CreatureTemplate const * GetCreatureTemplate() const
Definition: Creature.h:199
bool SetWalk(bool enable) override
Definition: Creature.cpp:3098
float speed_run
Definition: CreatureData.h:194
float GetPositionZ() const
Definition: Position.h:119
float GetPositionX() const
Definition: Position.h:117
float GetPositionY() const
Definition: Position.h:118
void InterruptNonMeleeSpells(bool withDelayed, uint32 spellid=0, bool withInstant=true, bool bySelf=false)
Definition: Unit.cpp:4081
MotionMaster * GetMotionMaster()
Definition: Unit.h:2276
virtual void SetSheath(SheathState sheathed)
Definition: Unit.h:1506
void SetSpeed(UnitMoveType mtype, float rate, bool forced=false)
Definition: Unit.cpp:14414
void MoveSplinePath(Movement::PointsArray *path)
Definition: MotionMaster.cpp:436

References currentStopPoint, Creature::GetCreatureTemplate(), Unit::GetMotionMaster(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), Unit::InterruptNonMeleeSpells(), CreatureAI::me, MOVE_RUN, MotionMaster::MoveSplinePath(), PathWaypoints, Unit::SetSheath(), Unit::SetSpeed(), Creature::SetWalk(), SHEATH_STATE_MELEE, CreatureTemplate::speed_run, and WP_STOP.

Referenced by DoAction(), and UpdateAI().

◆ Reset()

void npc_hor_leader_second::npc_hor_leader_secondAI::Reset ( )
inlineoverridevirtual

Reimplemented from UnitAI.

1944 {
1945 currentStopPoint = 0;
1946 events.Reset();
1947 }

References currentStopPoint.

◆ UpdateAI()

void npc_hor_leader_second::npc_hor_leader_secondAI::UpdateAI ( uint32  diff)
inlineoverridevirtual

Reimplemented from NullCreatureAI.

1997 {
1998 events.Update(diff);
1999 switch(events.ExecuteEvent())
2000 {
2001 case EVENT_LK_SAY_AGGRO:
2003 {
2004 me->Attack(lkboss, true),
2005 lkboss->AI()->Talk(me->GetEntry() == NPC_JAINA_PART2 ? SAY_LK_AGGRO_ALLY : SAY_LK_AGGRO_HORDE);
2006 }
2007 break;
2008 case EVENT_LK_BATTLE_1:
2010 {
2011 lkboss->CastSpell(lkboss, SPELL_SOUL_REAPER, false);
2012 }
2013 break;
2014 case EVENT_LK_BATTLE_2:
2015 //horda
2017 {
2018 leader->CastSpell(leader, SPELL_EVASION, true);
2019 }
2021 {
2022 lkboss->SetFacingToObject(me);
2023 }
2025 {
2026 lkboss->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_ATTACK2HTIGHT);
2027 me->SetFacingToObject(lkboss);
2028 }
2029 break;
2032 {
2033 lkboss->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_READY_SPELL_OMNI);
2035 me->CastSpell(lkboss, SPELL_JAINA_ICE_PRISON, false);
2036 events.ScheduleEvent(EVENT_SAY_LEAVE, 5s);
2037 }
2038 break;
2041 {
2042 me->AttackStop();
2044 lkboss->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_READY_SPELL_OMNI);
2045 lkboss->CastSpell(me, SPELL_BLIDING_RETREAT, false);
2047 me->KnockbackFrom(lkboss->GetPositionX(), lkboss->GetPositionY(), 34.3f, 4.0f);
2048 events.ScheduleEvent(EVENT_SYLVANAS_DARK_BINDING, 2s +500ms);
2049 }
2050 break;
2053 me->CastSpell(lkboss, SPELL_SYLVANAS_DARK_BINDING, false);
2054 events.ScheduleEvent(EVENT_SAY_LEAVE, 2s);
2055 break;
2056 case EVENT_SAY_LEAVE:
2057 {
2059 for (Map::PlayerList::const_iterator itr = pl.begin(); itr != pl.end(); ++itr)
2060 if (Player* p = itr->GetSource())
2061 p->KilledMonsterCredit(me->GetEntry()); //for quest
2064 me->SetWalk(false);
2067 events.ScheduleEvent(EVENT_ADD_GOSSIP, 7s);
2068 }
2069 break;
2070 case EVENT_ADD_GOSSIP:
2074 break;
2075 case EVENT_START_RUN:
2076 {
2078 me->setActive(true);
2081 {
2082 lkboss->setActive(true);
2083 lkboss->SetInCombatWithZone();
2085 lkboss->AI()->DoAction(ACTION_START_LK_FIGHT_REAL);
2086 }
2087 }
2088 break;
2090 {
2091 int32 textId = 0;
2092 switch (currentStopPoint)
2093 {
2094 case 1:
2095 textId = SAY_SYLVANAS_IW_1;
2096 break;
2097 case 2:
2098 textId = SAY_SYLVANAS_IW_2;
2099 break;
2100 case 3:
2101 textId = SAY_SYLVANAS_IW_3;
2102 break;
2103 case 4:
2104 textId = SAY_SYLVANAS_IW_4;
2105 break;
2106 case 5:
2108 break;
2109 }
2110 Talk(textId);
2111 if (currentStopPoint <= 4)
2113 else
2114 {
2115 me->SetFacingTo(PathWaypoints[PATH_WP_COUNT - 1].GetOrientation());
2117 }
2118 }
2119 break;
2120 case EVENT_SAY_OPENING:
2122 break;
2123 }
2125 }
std::int32_t int32
Definition: Define.h:104
@ UNIT_NPC_EMOTESTATE
Definition: UpdateFields.h:140
@ UNIT_NPC_FLAG_GOSSIP
Definition: Unit.h:516
@ NPC_SYLVANAS_PART2
Definition: forge_of_souls.h:41
@ EVENT_ADD_GOSSIP
Definition: halls_of_reflection.cpp:1628
@ EVENT_SYLVANAS_DARK_BINDING
Definition: halls_of_reflection.cpp:1626
@ EVENT_SAY_LEAVE
Definition: halls_of_reflection.cpp:1627
@ NPC_LICH_KING_BOSS
Definition: halls_of_reflection.h:61
@ SPELL_EVASION
Definition: halls_of_reflection.h:275
@ SPELL_BLIDING_RETREAT
Definition: halls_of_reflection.h:273
@ SPELL_DESTROY_WALL_SYLVANAS
Definition: halls_of_reflection.h:294
@ SPELL_JAINA_ICE_PRISON
Definition: halls_of_reflection.h:289
@ SPELL_SYLVANAS_CLOAK_OF_DARKNESS
Definition: halls_of_reflection.h:288
@ SPELL_SOUL_REAPER
Definition: halls_of_reflection.h:274
@ SPELL_DESTROY_WALL_JAINA
Definition: halls_of_reflection.h:293
@ SPELL_SYLVANAS_DARK_BINDING
Definition: halls_of_reflection.h:290
@ SPELL_JAINA_ICE_BARRIER
Definition: halls_of_reflection.h:287
const Position LeaderEscapePos
Definition: halls_of_reflection.h:338
@ SAY_JAINA_ESCAPE_01
Definition: halls_of_reflection.h:222
@ SAY_LK_AGGRO_ALLY
Definition: halls_of_reflection.h:190
@ SAY_SYLVANA_AGGRO
Definition: halls_of_reflection.h:202
@ SAY_JAINA_TRAP
Definition: halls_of_reflection.h:223
@ SAY_SYLVANAS_IW_3
Definition: halls_of_reflection.h:205
@ SAY_SYLVANA_ESCAPE_01
Definition: halls_of_reflection.h:207
@ SAY_SYLVANAS_IW_2
Definition: halls_of_reflection.h:204
@ SAY_JAINA_AGGRO
Definition: halls_of_reflection.h:217
@ SAY_LK_AGGRO_HORDE
Definition: halls_of_reflection.h:191
@ SAY_SYLVANAS_IW_4
Definition: halls_of_reflection.h:206
@ SAY_SYLVANAS_IW_1
Definition: halls_of_reflection.h:203
@ SAY_SYLVANA_TRAP
Definition: halls_of_reflection.h:209
#define PATH_WP_COUNT
Definition: halls_of_reflection.h:346
@ ACTION_START_LK_FIGHT
Definition: halls_of_reflection.h:49
Talk
Definition: boss_fathomlord_karathress.cpp:25
@ EMOTE_STATE_READY_SPELL_OMNI
Definition: SharedDefines.h:2066
@ EMOTE_ONESHOT_ATTACK2HTIGHT
Definition: SharedDefines.h:1927
@ EMOTE_ONESHOT_READY1H
Definition: SharedDefines.h:1932
@ EMOTE_ONESHOT_NONE
Definition: SharedDefines.h:1894
Definition: LinkedList.h:139
void DoMeleeAttackIfReady()
Definition: UnitAI.cpp:39
Definition: Creature.h:46
void SetUInt32Value(uint16 index, uint32 value)
Definition: Object.cpp:650
void setActive(bool isActiveObject)
Definition: Object.cpp:1085
float GetOrientation() const
Definition: Position.h:120
Definition: Player.h:1056
Definition: Unit.h:1302
void SetFacingTo(float ori)
Definition: Unit.cpp:20884
void RemoveAura(AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
Definition: Unit.cpp:4722
void SetFacingToObject(WorldObject *object)
Definition: Unit.cpp:20894
bool Attack(Unit *victim, bool meleeAttack)
Definition: Unit.cpp:10280
void SetNpcFlag(NPCFlags flags)
Definition: Unit.h:1661
SpellCastResult CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition: Unit.cpp:1169
bool AttackStop()
Definition: Unit.cpp:10407
void KnockbackFrom(float x, float y, float speedXY, float speedZ)
Definition: Unit.cpp:19407
ObjectGuid GetGuidData(uint32 type) const override
Definition: InstanceScript.cpp:94
Map * instance
Definition: InstanceScript.h:147
Creature * GetCreature(ObjectGuid const guid)
Definition: Map.cpp:3307
PlayerList const & GetPlayers() const
Definition: Map.h:485
Definition: MapRefMgr.h:26
iterator begin()
Definition: MapRefMgr.h:36
iterator end()
Definition: MapRefMgr.h:37
virtual void SetData(uint32, uint32)
Definition: ZoneScript.h:53
void MovePoint(uint32 id, const Position &pos, bool generatePath=true, bool forceDestination=true)
Definition: MotionMaster.h:211

References ACTION_START_LK_FIGHT, ACTION_START_LK_FIGHT_REAL, Unit::Attack(), Unit::AttackStop(), MapRefMgr::begin(), Unit::CastSpell(), currentStopPoint, UnitAI::DoMeleeAttackIfReady(), EMOTE_ONESHOT_ATTACK2HTIGHT, EMOTE_ONESHOT_NONE, EMOTE_ONESHOT_READY1H, EMOTE_STATE_READY_SPELL_OMNI, MapRefMgr::end(), EVENT_ADD_GOSSIP, EVENT_JAINA_IMMOBILIZE_LK, EVENT_LK_BATTLE_1, EVENT_LK_BATTLE_2, EVENT_LK_SAY_AGGRO, EVENT_SAY_LEADER_STOP_TEXT, EVENT_SAY_LEAVE, EVENT_SAY_OPENING, EVENT_START_RUN, EVENT_SYLVANAS_DARK_BINDING, EVENT_SYLVANAS_IMMOBILIZE_JUMP, Map::GetCreature(), Creature::GetCreatureTemplate(), Object::GetEntry(), InstanceScript::GetGuidData(), Unit::GetMotionMaster(), Position::GetOrientation(), Map::GetPlayers(), InstanceScript::instance, Unit::KnockbackFrom(), LeaderEscapePos, CreatureAI::me, MOVE_RUN, MotionMaster::MovePoint(), MoveToNextStopPoint(), NPC_JAINA_PART2, NPC_LICH_KING_BOSS, NPC_SYLVANAS_PART2, PATH_WP_COUNT, PathWaypoints, pInstance, Unit::RemoveAura(), SAY_JAINA_AGGRO, SAY_JAINA_ESCAPE_01, SAY_JAINA_TRAP, SAY_LK_AGGRO_ALLY, SAY_LK_AGGRO_HORDE, SAY_SYLVANA_AGGRO, SAY_SYLVANA_ESCAPE_01, SAY_SYLVANA_TRAP, SAY_SYLVANAS_IW_1, SAY_SYLVANAS_IW_2, SAY_SYLVANAS_IW_3, SAY_SYLVANAS_IW_4, WorldObject::setActive(), ZoneScript::SetData(), Unit::SetFacingTo(), Unit::SetFacingToObject(), Unit::SetNpcFlag(), Unit::SetSheath(), Unit::SetSpeed(), Object::SetUInt32Value(), Creature::SetWalk(), SHEATH_STATE_MELEE, CreatureTemplate::speed_run, SPELL_BLIDING_RETREAT, SPELL_DESTROY_WALL_JAINA, SPELL_DESTROY_WALL_SYLVANAS, SPELL_EVASION, SPELL_JAINA_ICE_BARRIER, SPELL_JAINA_ICE_PRISON, SPELL_SOUL_REAPER, SPELL_SYLVANAS_CLOAK_OF_DARKNESS, SPELL_SYLVANAS_DARK_BINDING, UNIT_NPC_EMOTESTATE, and UNIT_NPC_FLAG_GOSSIP.

Member Data Documentation

◆ currentStopPoint

uint8 npc_hor_leader_second::npc_hor_leader_secondAI::currentStopPoint

◆ events

EventMap npc_hor_leader_second::npc_hor_leader_secondAI::events

◆ pInstance

InstanceScript* npc_hor_leader_second::npc_hor_leader_secondAI::pInstance