216 if (!damageInfo || !damageInfo->
GetDamage())
#define RegisterCreatureAI(ai_name)
#define RegisterSpellScript(spell_script)
@ SPELL_AURA_PERIODIC_MANA_LEECH
#define AuraEffectProcFn(F, I, N)
#define AuraEffectCalcAmountFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
T CalculatePct(T base, U pct)
@ SPELL_MARK_OF_KAZZAK_DAMAGE
@ SPELL_TWISTED_REFLECTION
@ SPELL_TWISTED_REFLECTION_HEAL
void AddSC_boss_doomlordkazzak()
@ EVENT_TWISTED_REFLECTION
void PreventDefaultAction()
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectCalcAmountHandler > DoEffectCalcAmount
void SetDuration(int32 duration, bool withMods=false)
HookList< EffectProcHandler > OnEffectProc
Unit * GetUnitOwner() const
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
Unit * GetActionTarget() const
DamageInfo * GetDamageInfo() const
void DoMeleeAttackIfReady()
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)
bool HasUnitState(const uint32 f) const
uint32 GetPower(Powers power) const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
void OnPeriodic(AuraEffect const *aurEff)
void CalculateAmount(AuraEffect const *, int32 &amount, bool &)
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_mark_of_kazzak)
void HandleProc(AuraEffect const *aurEff, ProcEventInfo &eventInfo)
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_twisted_reflection)
void JustDied(Unit *) override
boss_doomlord_kazzak(Creature *creature)
void UpdateAI(uint32 diff) override
void JustAppeared() override
void KilledUnit(Unit *victim) override
void JustEngagedWith(Unit *) override