Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
boss_the_lich_king::boss_the_lich_kingAI Struct Reference
Inheritance diagram for boss_the_lich_king::boss_the_lich_kingAI:
Collaboration diagram for boss_the_lich_king::boss_the_lich_kingAI:

Public Member Functions

 boss_the_lich_kingAI (Creature *creature)
bool CanAIAttack (Unit const *target) const OVERRIDE
void DamageTaken (Unit *, uint32 &) OVERRIDE
void DoAction (int32 action) OVERRIDE
void EnterCombat (Unit *target) OVERRIDE
void EnterEvadeMode () OVERRIDE
uint32 GetData (uint32 type) const OVERRIDE
void JustDied (Unit *) OVERRIDE
void JustReachedHome () OVERRIDE
void JustSummoned (Creature *summon) OVERRIDE
void KilledUnit (Unit *victim) OVERRIDE
void MovementInform (uint32 type, uint32 pointId) OVERRIDE
void Reset () OVERRIDE
void SetData (uint32 type, uint32 value) OVERRIDE
void SpellHit (Unit *, SpellInfo const *spell) OVERRIDE
void SpellHitTarget (Unit *, SpellInfo const *spell) OVERRIDE
void SummonedCreatureDies (Creature *summon, Unit *) OVERRIDE
void UpdateAI (uint32 diff) OVERRIDE
 == Triggered Actions Requested ==================
Public Member Functions inherited from BossAI
 BossAI (Creature *creature, uint32 bossId)
void EnterCombat (Unit *) OVERRIDE
void ExecuteEvent (uint32) OVERRIDE
BossBoundaryMap const * GetBoundary () const
void JustDied (Unit *) OVERRIDE
void JustReachedHome () OVERRIDE
void JustSummoned (Creature *summon) OVERRIDE
void Reset () OVERRIDE
void SummonedCreatureDespawn (Creature *summon) OVERRIDE
void UpdateAI (uint32 diff) OVERRIDE
 == Triggered Actions Requested ==================
virtual ~BossAI ()
Public Member Functions inherited from ScriptedAI
void AttackStart (Unit *) OVERRIDE
void AttackStartNoMove (Unit *target)
void DamageTaken (Unit *, uint32 &) OVERRIDE
void DoCastSpell (Unit *target, SpellInfo const *spellInfo, bool triggered=false)
std::list< Creature * > DoFindFriendlyCC (float range)
std::list< Creature * > DoFindFriendlyMissingBuff (float range, uint32 spellId)
float DoGetThreat (Unit *unit)
void DoModifyThreatPercent (Unit *unit, int32 pct)
void DoPlaySoundToSet (WorldObject *source, uint32 soundId)
void DoResetThreat ()
Unit * DoSelectLowestHpFriendly (float range, uint32 minHPDiff=1)
Creature * DoSpawnCreature (uint32 entry, float offsetX, float offsetY, float offsetZ, float angle, TempSummonType type, uint32 despawntime)
void DoStartMovement (Unit *target, float distance=0.0f, float angle=0.0f)
void DoStartNoMovement (Unit *target)
void DoStopAttack ()
void DoTeleportAll (float x, float y, float z, float o)
void DoTeleportPlayer (Unit *unit, float x, float y, float z, float o)
void DoTeleportTo (float const pos[4])
void DoTeleportTo (float x, float y, float z, uint32 time=0)
template<class T>
const T & DUNGEON_MODE (const T &normal5, const T &heroic5) const
void EnterCombat (Unit *) OVERRIDE
bool EnterEvadeIfOutOfCombatArea (uint32 const diff)
void ExecuteEvent (uint32) OVERRIDE
DifficultyID GetDifficulty () const
Player * GetPlayerAtMinimumRange (float minRange)
bool HealthAbovePct (uint32 pct) const
bool HealthBelowPct (uint32 pct) const
bool Is25ManRaid () const
bool IsCombatMovementAllowed () const
bool IsHeroic () const
void JustDied (Unit *) OVERRIDE
void JustSummoned (Creature *) OVERRIDE
void KilledUnit (Unit *) OVERRIDE
void MovementInform (uint32, uint32) OVERRIDE
void OnPossess (bool)
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 &flex, const T &lfr) const
template<class T>
const T & RAID_MODE (const T &normal10, const T &normal25, const T &heroic10, const T &heroic25, const T &flex, const T &lfr) const
void Reset () OVERRIDE
 ScriptedAI (Creature *creature)
SpellInfo const * SelectSpell (Unit *target, uint32 school, uint32 mechanic, SelectTargetType targets, uint32 powerCostMin, uint32 powerCostMax, float rangeMin, float rangeMax, SelectEffect effect)
void SetCombatMovement (bool allowMovement)
void SetEquipmentSlots (bool loadDefault, int32 mainHand=EQUIP_NO_CHANGE, int32 offHand=EQUIP_NO_CHANGE, int32 ranged=EQUIP_NO_CHANGE)
void SpellHit (Unit *, SpellInfo const *) OVERRIDE
void SpellHitTarget (Unit *, SpellInfo const *) OVERRIDE
void SummonedCreatureDespawn (Creature *) OVERRIDE
void UpdateAI (uint32 diff) OVERRIDE
 == Triggered Actions Requested ==================
virtual ~ScriptedAI ()
Public Member Functions inherited from CreatureAI
virtual void AttackedBy (Unit *)
virtual bool CanRespawn ()
virtual bool CanSeeAlways (WorldObject const *)
bool CanSeeEvenInPassiveMode () const
virtual void CorpseRemoved (uint32 &)
 == State checks =================================
 CreatureAI (Creature *creature)
void DoZoneInCombat (Creature *creature=NULL, float maxRangeToNearestTarget=50.0f)
virtual bool IsEscorted ()
virtual void IsSummonedBy (Unit *)
virtual void JustRespawned ()
void MoveInLineOfSight_Safe (Unit *who)
 == Reactions At =================================
void OnCharmed (bool apply)
virtual void OnSpellClick (Unit *, bool &)
virtual void OwnerAttacked (Unit *)
virtual void OwnerAttackedBy (Unit *)
virtual void PassengerBoarded (Unit *, int8, bool)
 == Fields =======================================
virtual void ReceiveEmote (Player *, uint32)
void SetCanSeeEvenInPassiveMode (bool canSeeEvenInPassiveMode)
void Talk (uint8 id, WorldObject const *whisperTarget=NULL)
virtual ~CreatureAI ()
Public Member Functions inherited from UnitAI
void AttackStartCaster (Unit *victim, float dist)
virtual void DamageDealt (Unit *, uint32 &, DamageEffectType)
void DoAddAuraToAllHostilePlayers (uint32 spellid)
void DoCast (uint32 spellId)
void DoCast (Unit *victim, uint32 spellId, bool triggered=false)
void DoCastAOE (uint32 spellId, bool triggered=false)
void DoCastToAllHostilePlayers (uint32 spellid, bool triggered=false)
void DoCastVictim (uint32 spellId, bool triggered=false)
float DoGetSpellMaxRange (uint32 spellId, bool positive=false)
void DoMeleeAttackIfReady ()
bool DoSpellAttackIfReady (uint32 spell)
virtual uint64 GetGUID (int32=0) const
virtual void HealDone (Unit *, uint32 &)
virtual void HealReceived (Unit *, uint32 &)
virtual void InitializeAI ()
virtual bool OnGossipHello (Player *player)
template<class PREDICATE>
Unit * SelectTarget (SelectAggroTarget targetType, uint32 position, PREDICATE const &predicate)
Unit * SelectTarget (SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
template<class PREDICATE>
void SelectTargetList (std::list< Unit * > &targetList, PREDICATE const &predicate, uint32 maxTargets, SelectAggroTarget targetType)
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectAggroTarget targetType, float dist=0.0f, bool playerOnly=false, int32 aura=0)
virtual void SetGUID (uint64, int32=0)
virtual void sGossipHello (Player *)
virtual void sGossipSelect (Player *, uint32, uint32)
virtual void sGossipSelectCode (Player *, uint32, uint32, char const *)
virtual bool sOnDummyEffect (Unit *, uint32, SpellEffIndex)
virtual void sOnGameEvent (bool, uint16)
virtual void SpellInterrupted (uint32, uint32)
virtual void sQuestAccept (Player *, Quest const *)
virtual void sQuestComplete (Player *, Quest const *)
virtual void sQuestReward (Player *, Quest const *, uint32)
virtual void sQuestSelect (Player *, Quest const *)
 UnitAI (Unit *unit)
virtual ~UnitAI ()

Private Member Functions

void SendLightOverride (uint32 overrideId, uint32 fadeInTime) const
void SendMusicToPlayers (uint32) const
void SendPacketToPlayers (WorldPacket const *data) const
void SendWeather (WeatherState weather) const

Private Attributes

uint32 _necroticPlagueStack
uint32 _vileSpiritExplosions

Additional Inherited Members

Static Public Member Functions inherited from UnitAI
static void FillAISpellInfo ()
Public Attributes inherited from BossAI
InstanceScript *const instance
Public Attributes inherited from ScriptedAI
bool IsFleeing
Creature * me
Static Public Attributes inherited from UnitAI
static AISpellInfoType * AISpellInfo
Protected Member Functions inherited from BossAI
void _DespawnAtEvade ()
void _EnterCombat ()
void _JustDied ()
void _JustReachedHome ()
void _Reset ()
bool CheckBoundary (Unit *who)
bool CheckInRoom ()
void TeleportCheaters ()
Protected Member Functions inherited from CreatureAI
bool _EnterEvadeMode ()
Creature * DoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
Creature * DoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
Creature * DoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
virtual void MoveInLineOfSight (Unit *)
void SetGazeOn (Unit *target)
bool UpdateVictim ()
bool UpdateVictimWithGaze ()
Protected Attributes inherited from BossAI
EventMap events
SummonList summons
Protected Attributes inherited from CreatureAI
Creature *const me
Protected Attributes inherited from UnitAI
Unit *const me

Detailed Description

Definition at line 470 of file boss_the_lich_king.cpp.

Constructor & Destructor Documentation

◆ boss_the_lich_kingAI()

boss_the_lich_king::boss_the_lich_kingAI::boss_the_lich_kingAI ( Creature * creature)
inline

Definition at line 472 of file boss_the_lich_king.cpp.

References BossAI::BossAI(), and DATA_THE_LICH_KING.

Member Function Documentation

◆ CanAIAttack()

bool boss_the_lich_king::boss_the_lich_kingAI::CanAIAttack ( Unit const * target) const
inlinevirtual

Reimplemented from UnitAI.

Definition at line 533 of file boss_the_lich_king.cpp.

References OVERRIDE, and SPELL_IN_FROSTMOURNE_ROOM.

◆ DamageTaken()

◆ DoAction()

◆ EnterCombat()

◆ EnterEvadeMode()

◆ GetData()

uint32 boss_the_lich_king::boss_the_lich_kingAI::GetData ( uint32 type) const
inlinevirtual

Reimplemented from UnitAI.

Definition at line 600 of file boss_the_lich_king.cpp.

References _necroticPlagueStack, _vileSpiritExplosions, DATA_PLAGUE_STACK, DATA_VILE, and OVERRIDE.

◆ JustDied()

void boss_the_lich_king::boss_the_lich_kingAI::JustDied ( Unit * )
inlinevirtual

◆ JustReachedHome()

void boss_the_lich_king::boss_the_lich_kingAI::JustReachedHome ( )
inlinevirtual

◆ JustSummoned()

◆ KilledUnit()

void boss_the_lich_king::boss_the_lich_kingAI::KilledUnit ( Unit * victim)
inlinevirtual

◆ MovementInform()

◆ Reset()

void boss_the_lich_king::boss_the_lich_kingAI::Reset ( )
inlinevirtual

◆ SendLightOverride()

void boss_the_lich_king::boss_the_lich_kingAI::SendLightOverride ( uint32 overrideId,
uint32 fadeInTime ) const
inlineprivate

◆ SendMusicToPlayers()

void boss_the_lich_king::boss_the_lich_kingAI::SendMusicToPlayers ( uint32 ) const
inlineprivate

@TODO: Wrong Packet, Send correct one.

Definition at line 1084 of file boss_the_lich_king.cpp.

Referenced by DamageTaken(), DoAction(), MovementInform(), and UpdateAI().

◆ SendPacketToPlayers()

void boss_the_lich_king::boss_the_lich_kingAI::SendPacketToPlayers ( WorldPacket const * data) const
inlineprivate

◆ SendWeather()

void boss_the_lich_king::boss_the_lich_kingAI::SendWeather ( WeatherState weather) const
inlineprivate

◆ SetData()

void boss_the_lich_king::boss_the_lich_kingAI::SetData ( uint32 type,
uint32 value )
inlinevirtual

Reimplemented from UnitAI.

Definition at line 615 of file boss_the_lich_king.cpp.

References _necroticPlagueStack, _vileSpiritExplosions, DATA_PLAGUE_STACK, DATA_VILE, and OVERRIDE.

◆ SpellHit()

void boss_the_lich_king::boss_the_lich_kingAI::SpellHit ( Unit * ,
SpellInfo const * spell )
inlinevirtual

◆ SpellHitTarget()

void boss_the_lich_king::boss_the_lich_kingAI::SpellHitTarget ( Unit * ,
SpellInfo const * spell )
inlinevirtual

◆ SummonedCreatureDies()

void boss_the_lich_king::boss_the_lich_kingAI::SummonedCreatureDies ( Creature * summon,
Unit *  )
inlinevirtual

◆ UpdateAI()

void boss_the_lich_king::boss_the_lich_kingAI::UpdateAI ( uint32 diff)
inlinevirtual

== Triggered Actions Requested ==================

Reimplemented from CreatureAI.

Definition at line 833 of file boss_the_lich_king.cpp.

References ACTION_FROSTMOURNE_INTRO, ACTION_OUTRO, EventProcessor::AddEvent(), EventProcessor::CalculateTime(), Unit::CastSpell(), CenterPosition, CHAT_MSG_MONSTER_YELL, DATA_HIGHLORD_TIRION_FORDRING, UnitAI::DoCast(), UnitAI::DoCastAOE(), UnitAI::DoCastVictim(), UnitAI::DoMeleeAttackIfReady(), EMOTE_DEFILE_WARNING, EMOTE_NECROTIC_PLAGUE_WARNING, EMOTE_ONESHOT_POINT_NO_SHEATHE, EMOTE_ONESHOT_TALK_NO_SHEATHE, EQUIP_UNEQUIP, EVENT_BERSERK, EVENT_DEFILE, EVENT_EMOTE_CAST_SHOUT, EVENT_FINISH_INTRO, EVENT_FROSTMOURNE_HEROIC, EVENT_GROUP_VILE_SPIRITS, EVENT_HARVEST_SOUL, EVENT_HARVEST_SOULS, EVENT_INFEST, EVENT_INTRO_CAST_FREEZE, EVENT_INTRO_EMOTE_1, EVENT_INTRO_MOVE_1, EVENT_INTRO_MOVE_2, EVENT_INTRO_MOVE_3, EVENT_INTRO_TALK_1, EVENT_NECROTIC_PLAGUE, EVENT_OUTRO_EMOTE_TALK, EVENT_OUTRO_MOVE_CENTER, EVENT_OUTRO_RAISE_DEAD, EVENT_OUTRO_SOUL_BARRAGE, EVENT_OUTRO_TALK_1, EVENT_OUTRO_TALK_2, EVENT_OUTRO_TALK_3, EVENT_OUTRO_TALK_4, EVENT_OUTRO_TALK_5, EVENT_OUTRO_TALK_6, EVENT_OUTRO_TALK_7, EVENT_OUTRO_TALK_8, EVENT_PAIN_AND_SUFFERING, EVENT_QUAKE, EVENT_QUAKE_2, EVENT_SHADOW_TRAP, EVENT_SOUL_REAPER, EVENT_START_ATTACK, EVENT_SUMMON_DRUDGE_GHOUL, EVENT_SUMMON_ICE_SPHERE, EVENT_SUMMON_RAGING_SPIRIT, EVENT_SUMMON_SHAMBLING_HORROR, EVENT_SUMMON_VALKYR, EVENT_VILE_SPIRITS, BossAI::events, ObjectAccessor::GetCreature(), GetCreatureListWithEntryInGrid(), Object::GetEntry(), Unit::GetMotionMaster(), BossAI::instance, EventProcessor::KillAllEvents(), LichKingIntro, Unit::m_Events, ScriptedAI::me, MotionMaster::MoveRandom(), MUSIC_FINAL, MUSIC_SPECIAL, NECROTIC_PLAGUE_LK, NECROTIC_PLAGUE_PLR, NPC_TERENAS_MENETHIL_FROSTMOURNE_H, NPC_VILE_SPIRIT, NPC_WORLD_TRIGGER_INFINITE_AOI, OutroFlying, OVERRIDE, PHASE_FROSTMOURNE, PHASE_INTRO, PHASE_ONE, PHASE_OUTRO, PHASE_THREE, PHASE_TRANSITION, PHASE_TWO, PHASE_TWO_THREE, POINT_LK_INTRO_1, POINT_LK_INTRO_2, POINT_LK_INTRO_3, POINT_LK_OUTRO_1, POINT_LK_OUTRO_2, REACT_AGGRESSIVE, REACT_PASSIVE, SAY_LK_BERSERK, SAY_LK_HARVEST_SOUL, SAY_LK_INTRO_2, SAY_LK_INTRO_3, SAY_LK_OUTRO_1, SAY_LK_OUTRO_2, SAY_LK_OUTRO_3, SAY_LK_OUTRO_4, SAY_LK_OUTRO_5, SAY_LK_OUTRO_6, SAY_LK_OUTRO_7, SAY_LK_OUTRO_8, SAY_LK_QUAKE, SAY_LK_SUMMON_VALKYR, sCreatureTextMgr, SELECT_TARGET_RANDOM, UnitAI::SelectTarget(), SendMusicToPlayers(), ScriptedAI::SetEquipmentSlots(), Creature::SetReactState(), SHEATH_STATE_MELEE, SOUND_PAIN, SPELL_BERSERK2, SPELL_DEFILE, SPELL_EMOTE_QUESTION_NO_SHEATH, SPELL_EMOTE_SHOUT_NO_SHEATH, SPELL_EMOTE_SIT_NO_SHEATH, SPELL_FURY_OF_FROSTMOURNE_NO_REZ, SPELL_HARVEST_SOUL, SPELL_HARVEST_SOUL_VALKYR, SPELL_HARVEST_SOULS, SPELL_ICE_LOCK, SPELL_INFEST, SPELL_NECROTIC_PLAGUE, SPELL_PAIN_AND_SUFFERING, SPELL_QUAKE, SPELL_RAGING_SPIRIT, SPELL_RAISE_DEAD, SPELL_SHADOW_TRAP, SPELL_SOUL_BARRAGE, SPELL_SOUL_REAPER, SPELL_SUMMON_BROKEN_FROSTMOURNE_3, SPELL_SUMMON_DRUDGE_GHOULS, SPELL_SUMMON_ICE_SPHERE, SPELL_SUMMON_SHAMBLING_HORROR, SPELL_SUMMON_SPIRIT_BOMB_1, SPELL_SUMMON_SPIRIT_BOMB_2, SPELL_VILE_SPIRITS, SUMMON_VALKYR, BossAI::summons, CreatureAI::Talk(), TEAM_OTHER, TerenasSpawnHeroic, TEXT_RANGE_NORMAL, TRIGGERED_IGNORE_CAST_IN_PROGRESS, TRIGGERED_NONE, UNIT_BYTE1_FLAG_ALWAYS_STAND, UNIT_BYTE1_FLAG_HOVER, UNIT_FIELD_ANIM_TIER, UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC, UNIT_STATE_CASTING, and CreatureAI::UpdateVictim().

Member Data Documentation

◆ _necroticPlagueStack

uint32 boss_the_lich_king::boss_the_lich_kingAI::_necroticPlagueStack
private

Definition at line 1123 of file boss_the_lich_king.cpp.

Referenced by GetData(), Reset(), and SetData().

◆ _vileSpiritExplosions

uint32 boss_the_lich_king::boss_the_lich_kingAI::_vileSpiritExplosions
private

Definition at line 1124 of file boss_the_lich_king.cpp.

Referenced by GetData(), Reset(), and SetData().


The documentation for this struct was generated from the following file: