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

Public Member Functions

 boss_kaelthasAI (Creature *creature)
void EnterCombat (Unit *) OVERRIDE
void JustDied (Unit *) OVERRIDE
void JustSummoned (Creature *summoned) OVERRIDE
void KilledUnit (Unit *) OVERRIDE
void MoveInLineOfSight (Unit *who) OVERRIDE
void PrepareAdvisors ()
void Reset () OVERRIDE
void StartEvent ()
void SummonedCreatureDespawn (Creature *summon) OVERRIDE
void UpdateAI (uint32 diff) OVERRIDE
 == Triggered Actions Requested ==================
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 ()
UnitDoSelectLowestHpFriendly (float range, uint32 minHPDiff=1)
CreatureDoSpawnCreature (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
PlayerGetPlayerAtMinimumRange (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 void EnterEvadeMode ()
virtual bool IsEscorted ()
virtual void IsSummonedBy (Unit *)
virtual void JustReachedHome ()
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)
virtual void SummonedCreatureDies (Creature *, Unit *)
void Talk (uint8 id, WorldObject const *whisperTarget=NULL)
virtual ~CreatureAI ()
Public Member Functions inherited from UnitAI
void AttackStartCaster (Unit *victim, float dist)
virtual bool CanAIAttack (Unit const *) const
virtual void DamageDealt (Unit *, uint32 &, DamageEffectType)
virtual void DoAction (int32)
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 uint32 GetData (uint32) const
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>
UnitSelectTarget (SelectAggroTarget targetType, uint32 position, PREDICATE const &predicate)
UnitSelectTarget (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 SetData (uint32, uint32)
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 ()

Public Attributes

uint32 ArcaneDisruption_Timer
bool ChainPyros
uint32 Fireball_Timer
uint32 FlameStrike_Timer
uint32 GravityLapse_Phase
uint32 GravityLapse_Timer
bool InGravityLapse
InstanceScriptinstance
bool IsCastingFireball
uint64 m_auiAdvisorGuid [MAX_ADVISORS]
uint32 MindControl_Timer
uint32 NetherBeam_Timer
uint32 NetherVapor_Timer
uint32 Phase
uint32 Phase_Timer
uint32 PhaseSubphase
uint32 Phoenix_Timer
uint32 PyrosCasted
uint32 ShockBarrier_Timer
SummonList summons
Public Attributes inherited from ScriptedAI
bool IsFleeing
Creatureme

Additional Inherited Members

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 _EnterEvadeMode ()
CreatureDoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
CreatureDoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
CreatureDoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
void SetGazeOn (Unit *target)
bool UpdateVictim ()
bool UpdateVictimWithGaze ()
Protected Attributes inherited from CreatureAI
Creature *const me
Protected Attributes inherited from UnitAI
Unit *const me

Detailed Description

Definition at line 274 of file boss_kaelthas.cpp.

Constructor & Destructor Documentation

◆ boss_kaelthasAI()

boss_kaelthas::boss_kaelthasAI::boss_kaelthasAI ( Creature * creature)
inline

Member Function Documentation

◆ EnterCombat()

void boss_kaelthas::boss_kaelthasAI::EnterCombat ( Unit * )
inlinevirtual

Reimplemented from CreatureAI.

Definition at line 420 of file boss_kaelthas.cpp.

References DATA_KAELTHASEVENT, instance, OVERRIDE, Phase, and StartEvent().

◆ JustDied()

void boss_kaelthas::boss_kaelthasAI::JustDied ( Unit * )
inlinevirtual

◆ JustSummoned()

void boss_kaelthas::boss_kaelthasAI::JustSummoned ( Creature * summoned)
inlinevirtual

Reimplemented from CreatureAI.

Definition at line 431 of file boss_kaelthas.cpp.

References NPC_PHOENIX, OVERRIDE, SELECT_TARGET_RANDOM, UnitAI::SelectTarget(), and summons.

◆ KilledUnit()

void boss_kaelthas::boss_kaelthasAI::KilledUnit ( Unit * )
inlinevirtual

Reimplemented from CreatureAI.

Definition at line 426 of file boss_kaelthas.cpp.

References OVERRIDE, SAY_SLAY, and CreatureAI::Talk().

◆ MoveInLineOfSight()

void boss_kaelthas::boss_kaelthasAI::MoveInLineOfSight ( Unit * who)
inlinevirtual

◆ PrepareAdvisors()

void boss_kaelthas::boss_kaelthasAI::PrepareAdvisors ( )
inline

◆ Reset()

◆ StartEvent()

◆ SummonedCreatureDespawn()

void boss_kaelthas::boss_kaelthasAI::SummonedCreatureDespawn ( Creature * summon)
inlinevirtual

Reimplemented from CreatureAI.

Definition at line 443 of file boss_kaelthas.cpp.

References OVERRIDE, and summons.

◆ UpdateAI()

void boss_kaelthas::boss_kaelthasAI::UpdateAI ( uint32 diff)
inlinevirtual

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

Reimplemented from CreatureAI.

Definition at line 467 of file boss_kaelthas.cpp.

References afGravityPos, Creature::AI(), ByteBuffer::append(), ArcaneDisruption_Timer, ScriptedAI::AttackStart(), UnitAI::AttackStart(), CAST_AI, ChainPyros, DATA_KAELTHASEVENT, UnitAI::DoCast(), UnitAI::DoCastVictim(), UnitAI::DoMeleeAttackIfReady(), ScriptedAI::DoResetThreat(), ScriptedAI::DoTeleportPlayer(), Fireball_Timer, FlameStrike_Timer, Unit::GetCreature(), Position::GetOrientation(), Unit::getStandState(), Object::GetTypeId(), Unit::GetUnit(), GravityLapse_Phase, GravityLapse_Timer, ScriptedAI::HealthBelowPct(), IMMUNITY_EFFECT, InGravityLapse, instance, IsCastingFireball, m_auiAdvisorGuid, m_auiSpellSummonWeapon, MAX_ADVISORS, ScriptedAI::me, MindControl_Timer, NetherBeam_Timer, OVERRIDE, Phase, Phase_Timer, PhaseSubphase, Phoenix_Timer, PyrosCasted, Object::RemoveFlag(), SAY_GRAVITYLAPSE, SAY_INTRO_CAPERNIAN, SAY_INTRO_SANGUINAR, SAY_INTRO_TELONICUS, SAY_INTRO_THALADRED, SAY_PHASE2_WEAPON, SAY_PHASE3_ADVANCE, SAY_PHASE4_INTRO2, SAY_PHASE5_NUTS, SAY_SUMMON_PHOENIX, SELECT_TARGET_RANDOM, UnitAI::SelectTarget(), Unit::setFaction(), SF_LOG_DEBUG, SF_LOG_ERROR, ShockBarrier_Timer, SMSG_MOVE_SET_CAN_FLY, SMSG_MOVE_UNSET_CAN_FLY, SPELL_ARCANE_DISRUPTION, SPELL_EFFECT_INTERRUPT_CAST, SPELL_EXPLODE, SPELL_FIREBALL, SPELL_FLAME_STRIKE, SPELL_FULLPOWER, SPELL_GRAVITY_LAPSE, SPELL_GRAVITY_LAPSE_AURA, SPELL_KNOCKBACK, SPELL_NETHER_BEAM, SPELL_NETHER_VAPOR, SPELL_PHOENIX_ANIMATION, SPELL_PYROBLAST, SPELL_SHOCK_BARRIER, SPELL_SUMMON_WEAPONS, CreatureAI::Talk(), TIME_PHASE_2_3, TIME_PHASE_3_4, TYPEID_PLAYER, UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE, UNIT_FLAG_NOT_SELECTABLE, UNIT_STAND_STATE_DEAD, and CreatureAI::UpdateVictim().

Member Data Documentation

◆ ArcaneDisruption_Timer

uint32 boss_kaelthas::boss_kaelthasAI::ArcaneDisruption_Timer

Definition at line 285 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ ChainPyros

bool boss_kaelthas::boss_kaelthasAI::ChainPyros

Definition at line 301 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ Fireball_Timer

uint32 boss_kaelthas::boss_kaelthasAI::Fireball_Timer

Definition at line 284 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ FlameStrike_Timer

uint32 boss_kaelthas::boss_kaelthasAI::FlameStrike_Timer

Definition at line 292 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ GravityLapse_Phase

uint32 boss_kaelthas::boss_kaelthasAI::GravityLapse_Phase

Definition at line 289 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ GravityLapse_Timer

uint32 boss_kaelthas::boss_kaelthasAI::GravityLapse_Timer

Definition at line 288 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ InGravityLapse

bool boss_kaelthas::boss_kaelthasAI::InGravityLapse

Definition at line 299 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ instance

InstanceScript* boss_kaelthas::boss_kaelthasAI::instance

◆ IsCastingFireball

bool boss_kaelthas::boss_kaelthasAI::IsCastingFireball

Definition at line 300 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ m_auiAdvisorGuid

uint64 boss_kaelthas::boss_kaelthasAI::m_auiAdvisorGuid[MAX_ADVISORS]

Definition at line 305 of file boss_kaelthas.cpp.

Referenced by boss_kaelthasAI(), JustDied(), PrepareAdvisors(), StartEvent(), and UpdateAI().

◆ MindControl_Timer

uint32 boss_kaelthas::boss_kaelthasAI::MindControl_Timer

Definition at line 293 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ NetherBeam_Timer

uint32 boss_kaelthas::boss_kaelthasAI::NetherBeam_Timer

Definition at line 290 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ NetherVapor_Timer

uint32 boss_kaelthas::boss_kaelthasAI::NetherVapor_Timer

Definition at line 291 of file boss_kaelthas.cpp.

Referenced by Reset().

◆ Phase

uint32 boss_kaelthas::boss_kaelthasAI::Phase

Definition at line 294 of file boss_kaelthas.cpp.

Referenced by EnterCombat(), MoveInLineOfSight(), Reset(), StartEvent(), and UpdateAI().

◆ Phase_Timer

uint32 boss_kaelthas::boss_kaelthasAI::Phase_Timer

Definition at line 296 of file boss_kaelthas.cpp.

Referenced by StartEvent(), and UpdateAI().

◆ PhaseSubphase

uint32 boss_kaelthas::boss_kaelthasAI::PhaseSubphase

Definition at line 295 of file boss_kaelthas.cpp.

Referenced by StartEvent(), and UpdateAI().

◆ Phoenix_Timer

uint32 boss_kaelthas::boss_kaelthasAI::Phoenix_Timer

Definition at line 286 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ PyrosCasted

uint32 boss_kaelthas::boss_kaelthasAI::PyrosCasted

Definition at line 297 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ ShockBarrier_Timer

uint32 boss_kaelthas::boss_kaelthasAI::ShockBarrier_Timer

Definition at line 287 of file boss_kaelthas.cpp.

Referenced by Reset(), and UpdateAI().

◆ summons

SummonList boss_kaelthas::boss_kaelthasAI::summons

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