refactor(Scripts/Karazhan): Spell Scripts registry macros (#19184)

* instance_karazhan aura:spell_karazhan_brittle_bones_aura

* instance_karazhan aura:spell_karazhan_overload_aura

* instance_karazhan spell:spell_karazhan_blink
This commit is contained in:
Jelle Meeus
2024-06-26 22:26:19 +02:00
committed by GitHub
parent 40b63666ad
commit b259ec6df7
2 changed files with 56 additions and 71 deletions
@@ -0,0 +1,3 @@
--
UPDATE `spell_script_names` SET `ScriptName`='spell_karazhan_brittle_bones_aura' WHERE `spell_id`=32441;
UPDATE `spell_script_names` SET `ScriptName`='spell_karazhan_overload_aura' WHERE `spell_id`=29768;
@@ -528,14 +528,14 @@ public:
}; };
}; };
class spell_karazhan_brittle_bones : public SpellScriptLoader class spell_karazhan_brittle_bones_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_karazhan_brittle_bones_aura);
spell_karazhan_brittle_bones() : SpellScriptLoader("spell_karazhan_brittle_bones") { }
class spell_karazhan_brittle_bones_AuraScript : public AuraScript bool Validate(SpellInfo const* /*spellInfo*/) override
{ {
PrepareAuraScript(spell_karazhan_brittle_bones_AuraScript); return ValidateSpellInfo({ SPELL_RATTLED });
}
void CalcPeriodic(AuraEffect const* /*effect*/, bool& isPeriodic, int32& amplitude) void CalcPeriodic(AuraEffect const* /*effect*/, bool& isPeriodic, int32& amplitude)
{ {
@@ -552,25 +552,19 @@ public:
void Register() override void Register() override
{ {
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_karazhan_brittle_bones_AuraScript::CalcPeriodic, EFFECT_0, SPELL_AURA_DUMMY); DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_karazhan_brittle_bones_aura::CalcPeriodic, EFFECT_0, SPELL_AURA_DUMMY);
OnEffectPeriodic += AuraEffectPeriodicFn(spell_karazhan_brittle_bones_AuraScript::Update, EFFECT_0, SPELL_AURA_DUMMY); OnEffectPeriodic += AuraEffectPeriodicFn(spell_karazhan_brittle_bones_aura::Update, EFFECT_0, SPELL_AURA_DUMMY);
}
};
AuraScript* GetAuraScript() const override
{
return new spell_karazhan_brittle_bones_AuraScript();
} }
}; };
class spell_karazhan_overload : public SpellScriptLoader class spell_karazhan_overload_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_karazhan_overload_aura);
spell_karazhan_overload() : SpellScriptLoader("spell_karazhan_overload") { }
class spell_karazhan_overload_AuraScript : public AuraScript bool Validate(SpellInfo const* /*spellInfo*/) override
{ {
PrepareAuraScript(spell_karazhan_overload_AuraScript); return ValidateSpellInfo({ SPELL_OVERLOAD });
}
void PeriodicTick(AuraEffect const* auraEffect) void PeriodicTick(AuraEffect const* auraEffect)
{ {
@@ -581,24 +575,18 @@ public:
void Register() override void Register() override
{ {
OnEffectPeriodic += AuraEffectPeriodicFn(spell_karazhan_overload_AuraScript::PeriodicTick, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL); OnEffectPeriodic += AuraEffectPeriodicFn(spell_karazhan_overload_aura::PeriodicTick, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL);
}
};
AuraScript* GetAuraScript() const override
{
return new spell_karazhan_overload_AuraScript();
} }
}; };
class spell_karazhan_blink : public SpellScriptLoader class spell_karazhan_blink : public SpellScript
{ {
public: PrepareSpellScript(spell_karazhan_blink);
spell_karazhan_blink() : SpellScriptLoader("spell_karazhan_blink") { }
class spell_karazhan_blink_SpellScript : public SpellScript bool Validate(SpellInfo const* /*spellInfo*/) override
{ {
PrepareSpellScript(spell_karazhan_blink_SpellScript); return ValidateSpellInfo({ SPELL_BLINK });
}
void HandleDummy(SpellEffIndex effIndex) void HandleDummy(SpellEffIndex effIndex)
{ {
@@ -610,21 +598,15 @@ public:
void Register() override void Register() override
{ {
OnEffectHitTarget += SpellEffectFn(spell_karazhan_blink_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); OnEffectHitTarget += SpellEffectFn(spell_karazhan_blink::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_karazhan_blink_SpellScript();
} }
}; };
void AddSC_instance_karazhan() void AddSC_instance_karazhan()
{ {
new instance_karazhan(); new instance_karazhan();
new spell_karazhan_brittle_bones(); RegisterSpellScript(spell_karazhan_brittle_bones_aura);
new spell_karazhan_overload(); RegisterSpellScript(spell_karazhan_overload_aura);
new spell_karazhan_blink(); RegisterSpellScript(spell_karazhan_blink);
} }