129 if (_phase < PHASE_HEALTH_66 && me->HealthBelowPctDamaged(66, damage))
134 if (_phase < PHASE_HEALTH_33 && me->HealthBelowPctDamaged(33, damage))
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
#define SpellEffectFn(F, I, N)
#define RegisterArcatrazCreatureAI(ai_name)
void AddSC_boss_harbinger_skyriss()
@ SPELL_SUMMON_33_ILLUSION
@ SPELL_MIND_REND_IMAGE_H
@ SPELL_SUMMON_66_ILLUSION
@ SPELL_MIND_REND_COSMETIC
void JustEngagedWith(Unit *who) override
void DoZoneInCombat(Creature *creature=nullptr)
void SetImmuneToAll(bool apply) override
void SetCorpseDelay(uint32 delay, bool ignoreCorpseDecayRatio=false)
void Repeat(Milliseconds time)
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
HookList< EffectHandler > OnEffectHit
int32 GetEffectValue() const
TaskContext & Repeat(std::chrono::duration< _Rep, _Period > const &duration)
TaskScheduler & CancelAll()
TaskScheduler & Update(success_t const &callback=EmptyCallback)
TaskScheduler & SetValidator(P &&predicate)
Sets a validator which is asked if tasks are allowed to be executed.
void DoMeleeAttackIfReady()
SpellCastResult DoCastSelf(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)
void SetHealth(uint32 val)
bool HasUnitState(const uint32 f) const
PrepareSpellScript(spell_harbinger_skyriss_health)
void HandleScript(SpellEffIndex)
void UpdateAI(uint32 diff) override
boss_harbinger_skyriss_illusion(Creature *creature)
void JustAppeared() override
boss_harbinger_skyriss(Creature *creature)
void JustDied(Unit *) override
void JustAppeared() override
void OnSpellCast(SpellInfo const *spell) override
void JustEngagedWith(Unit *who) override
void KilledUnit(Unit *) override
void UpdateAI(uint32 diff) override
void DamageTaken(Unit *, uint32 &damage, DamageEffectType, SpellInfo const *) override