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

Public Member Functions

 cthunAI (Creature *creature)
void DamageTaken (Unit *, uint32 &damage) OVERRIDE
void DoAction (int32 param) OVERRIDE
void EnterCombat (Unit *) OVERRIDE
void JustDied (Unit *) OVERRIDE
void Reset () OVERRIDE
UnitSelectRandomNotStomach ()
void SpawnEyeTentacle (float x, float y)
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)
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 EyeTentacleTimer
uint8 FleshTentaclesKilled
uint32 GiantClawTentacleTimer
uint32 GiantEyeTentacleTimer
uint64 HoldPlayer
InstanceScriptinstance
uint32 PhaseTimer
UNORDERED_MAP< uint64, bool > Stomach_Map
uint32 StomachAcidTimer
uint64 StomachEnterTarget
uint32 StomachEnterTimer
uint32 StomachEnterVisTimer
uint32 WisperTimer
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)
virtual void MoveInLineOfSight (Unit *)
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 451 of file boss_cthun.cpp.

Constructor & Destructor Documentation

◆ cthunAI()

boss_cthun::cthunAI::cthunAI ( Creature * creature)
inline

Member Function Documentation

◆ DamageTaken()

void boss_cthun::cthunAI::DamageTaken ( Unit * ,
uint32 & damage )
inlinevirtual

Reimplemented from UnitAI.

Definition at line 854 of file boss_cthun.cpp.

References DATA_CTHUN_PHASE, instance, ScriptedAI::me, OVERRIDE, PHASE_CTHUN_STOMACH, and PHASE_CTHUN_WEAK.

◆ DoAction()

void boss_cthun::cthunAI::DoAction ( int32 param)
inlinevirtual

Reimplemented from UnitAI.

Definition at line 884 of file boss_cthun.cpp.

References ACTION_FLESH_TENTACLE_KILLED, FleshTentaclesKilled, and OVERRIDE.

◆ EnterCombat()

void boss_cthun::cthunAI::EnterCombat ( Unit * )
inlinevirtual

Reimplemented from CreatureAI.

Definition at line 521 of file boss_cthun.cpp.

References CreatureAI::DoZoneInCombat(), and OVERRIDE.

◆ JustDied()

void boss_cthun::cthunAI::JustDied ( Unit * )
inlinevirtual

Reimplemented from CreatureAI.

Definition at line 848 of file boss_cthun.cpp.

References DATA_CTHUN_PHASE, instance, OVERRIDE, and PHASE_CTHUN_DONE.

◆ Reset()

◆ SelectRandomNotStomach()

Unit * boss_cthun::cthunAI::SelectRandomNotStomach ( )
inline

Definition at line 535 of file boss_cthun.cpp.

References Unit::GetUnit(), ScriptedAI::me, Stomach_Map, and UNORDERED_MAP.

Referenced by SpawnEyeTentacle(), and UpdateAI().

◆ SpawnEyeTentacle()

void boss_cthun::cthunAI::SpawnEyeTentacle ( float x,
float y )
inline

◆ UpdateAI()

Member Data Documentation

◆ EyeTentacleTimer

uint32 boss_cthun::cthunAI::EyeTentacleTimer

Definition at line 476 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ FleshTentaclesKilled

uint8 boss_cthun::cthunAI::FleshTentaclesKilled

Definition at line 477 of file boss_cthun.cpp.

Referenced by DoAction(), Reset(), and UpdateAI().

◆ GiantClawTentacleTimer

uint32 boss_cthun::cthunAI::GiantClawTentacleTimer

Definition at line 478 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ GiantEyeTentacleTimer

uint32 boss_cthun::cthunAI::GiantEyeTentacleTimer

Definition at line 479 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ HoldPlayer

uint64 boss_cthun::cthunAI::HoldPlayer

Definition at line 473 of file boss_cthun.cpp.

Referenced by Reset().

◆ instance

InstanceScript* boss_cthun::cthunAI::instance

Definition at line 462 of file boss_cthun.cpp.

Referenced by cthunAI(), DamageTaken(), JustDied(), Reset(), and UpdateAI().

◆ PhaseTimer

uint32 boss_cthun::cthunAI::PhaseTimer

Definition at line 468 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ Stomach_Map

UNORDERED_MAP<uint64, bool> boss_cthun::cthunAI::Stomach_Map

Definition at line 486 of file boss_cthun.cpp.

Referenced by Reset(), SelectRandomNotStomach(), and UpdateAI().

◆ StomachAcidTimer

uint32 boss_cthun::cthunAI::StomachAcidTimer

Definition at line 480 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ StomachEnterTarget

uint64 boss_cthun::cthunAI::StomachEnterTarget

Definition at line 483 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ StomachEnterTimer

uint32 boss_cthun::cthunAI::StomachEnterTimer

Definition at line 481 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ StomachEnterVisTimer

uint32 boss_cthun::cthunAI::StomachEnterVisTimer

Definition at line 482 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().

◆ WisperTimer

uint32 boss_cthun::cthunAI::WisperTimer

Definition at line 465 of file boss_cthun.cpp.

Referenced by Reset(), and UpdateAI().


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