91#define SEER_OLUM 22820
93#define OLUM_Y -542.76f
94#define OLUM_Z -7.54773f
95#define OLUM_O 0.401581f
97#define SAY_MISC "Alana be'lendor!"
135 if (!RAdvisors[i].IsEmpty())
138 if (advisor && !advisor->
IsAlive())
260 bool continueTriggering =
false;
265 if (advisor && advisor->
IsAlive())
267 continueTriggering =
true;
271 if (continueTriggering)
491 SpitfireTotem->ToCreature()->AI()->AttackStart(
me->
GetVictim());
603 Cyclone->SetObjectScale(3.0f);
607 Cyclone->AI()->AttackStart(target);
617 Unit* unit =
nullptr;
619 while (unit ==
nullptr || !unit->
IsAlive())
631 Unit* unit =
nullptr;
@ TEMPSUMMON_TIMED_DESPAWN
@ TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT
uint32 urand(uint32 min, uint32 max)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
#define SpellEffectFn(F, I, N)
@ CREATURE_EARTHBIND_TOTEM
@ SPELL_POWER_OF_SHARKKIS
@ SPELL_EARTHBIND_TOTEM_EFFECT
@ SPELL_POWER_OF_CARIBDIS
@ SPELL_WATER_BOLT_VOLLEY
@ SPELL_SUMMON_FATHOM_SPOREBAT
@ CREATURE_FATHOM_SPOREBAT
@ SPELL_POWER_OF_TIDALVESS
@ SPELL_TIDAL_SURGE_EFFECT
@ SPELL_BLESSING_OF_THE_TIDES
@ CREATURE_POISON_CLEANSING_TOTEM
@ CREATURE_SPITFIRE_TOTEM
@ SPELL_POISON_CLEANSING_TOTEM
@ SPELL_SUMMON_FATHOM_LURKER
void AddSC_boss_fathomlord_karathress()
InstanceScript *const instance
void _JustEngagedWith(Unit *who)
virtual void EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
void AttackStart(Unit *victim) override
== Triggered Actions Requested ==================
void Respawn(bool force=false)
virtual bool SetBossState(uint32 id, EncounterState state)
virtual ObjectGuid GetGuidData(uint32 type) const override
EncounterState GetBossState(uint32 id) const
static ObjectGuid GetGUID(Object const *o)
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCastVictim(uint32 spellId, CastSpellExtraArgs const &args={})
Unit * SelectTarget(SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
SpellCastResult DoCast(uint32 spellId)
MotionMaster * GetMotionMaster()
uint32 GetFaction() const override
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
void KillSelf(bool durabilityLoss=true, bool skipSettingDeathState=false)
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
TempSummon * SummonCreature(uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
Creature * FindNearestCreature(uint32 entry, float range, bool alive=true) const
virtual void SetData(uint32, uint32)
virtual void SetGuidData(uint32, ObjectGuid)
void HandleScript(SpellEffIndex)
bool Validate(SpellInfo const *) override
TC_GAME_API Unit * GetUnit(WorldObject const &, ObjectGuid const &guid)
TC_GAME_API Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
@ DATA_KARATHRESSEVENT_STARTER
@ DATA_FATHOMLORDKARATHRESSEVENT
@ BOSS_FATHOM_LORD_KARATHRESS
#define RegisterSerpentshrineCavernCreatureAI(ai_name)
constexpr float GetPositionX() const
constexpr float GetPositionY() const
constexpr float GetPositionZ() const
void AttackStart(Unit *) override
== Triggered Actions Requested ==================
bool HealthAbovePct(uint32 pct) const
Creature * DoSpawnCreature(uint32 entry, float offsetX, float offsetY, float offsetZ, float angle, uint32 type, Milliseconds despawntime)
uint32 WaterBoltVolley_Timer
void JustEngagedWith(Unit *who) override
boss_fathomguard_caribdis(Creature *creature)
void JustDied(Unit *) override
InstanceScript * instance
void UpdateAI(uint32 diff) override
Unit * selectAdvisorUnit()
void JustDied(Unit *) override
void JustEngagedWith(Unit *who) override
InstanceScript * instance
void UpdateAI(uint32 diff) override
uint32 TheBeastWithin_Timer
uint32 LeechingThrow_Timer
boss_fathomguard_sharkkis(Creature *creature)
InstanceScript * instance
void JustDied(Unit *) override
uint32 PoisonCleansing_Timer
boss_fathomguard_tidalvess(Creature *creature)
void JustEngagedWith(Unit *who) override
void UpdateAI(uint32 diff) override
void KilledUnit(Unit *) override
boss_fathomlord_karathress(Creature *creature)
void UpdateAI(uint32 diff) override
void EventCaribdisDeath()
void StartEvent(Unit *who)
void EventTidalvessDeath()
void JustEngagedWith(Unit *who) override
uint32 CataclysmicBolt_Timer
void EventSharkkisDeath()
void JustDied(Unit *) override