refactor(Scripts/EasternKingdoms): spell scripts use registry macros (#20399)

This commit is contained in:
Jelle Meeus
2024-11-01 20:54:41 +01:00
committed by GitHub
parent bbbcaac77c
commit 7410175a08
9 changed files with 308 additions and 433 deletions
@@ -0,0 +1,8 @@
--
UPDATE `spell_script_names` SET `ScriptName`='spell_shadowfang_keep_haunting_spirits_aura' WHERE `spell_id`=7057 AND `ScriptName`='spell_shadowfang_keep_haunting_spirits';
UPDATE `spell_script_names` SET `ScriptName`='spell_shadowfang_keep_forsaken_skills_aura' WHERE `spell_id`=7054 AND `ScriptName`='spell_shadowfang_keep_forsaken_skills';
UPDATE `spell_script_names` SET `ScriptName`='spell_scholomance_fixate_aura' WHERE `spell_id`=12021 AND `ScriptName`='spell_scholomance_fixate';
UPDATE `spell_script_names` SET `ScriptName`='spell_scholomance_boon_of_life_aura' WHERE `spell_id`=17179 AND `ScriptName`='spell_scholomance_boon_of_life';
UPDATE `spell_script_names` SET `ScriptName`='spell_threatening_gaze_aura' WHERE `spell_id`=24314 AND `ScriptName`='spell_threatening_gaze';
UPDATE `spell_script_names` SET `ScriptName`='spell_temple_of_atal_hakkar_hex_of_jammal_an_aura' WHERE `spell_id`=12479 AND `ScriptName`='spell_temple_of_atal_hakkar_hex_of_jammal_an';
UPDATE `spell_script_names` SET `ScriptName`='spell_uldaman_stoned_aura' WHERE `spell_id`=10255 AND `ScriptName`='spell_uldaman_stoned';
@@ -153,14 +153,9 @@ public:
}; };
}; };
class spell_gnomeregan_radiation_bolt : public SpellScriptLoader class spell_gnomeregan_radiation_bolt : public SpellScript
{ {
public: PrepareSpellScript(spell_gnomeregan_radiation_bolt);
spell_gnomeregan_radiation_bolt() : SpellScriptLoader("spell_gnomeregan_radiation_bolt") { }
class spell_gnomeregan_radiation_bolt_SpellScript : public SpellScript
{
PrepareSpellScript(spell_gnomeregan_radiation_bolt_SpellScript);
void HandleTriggerSpell(SpellEffIndex effIndex) void HandleTriggerSpell(SpellEffIndex effIndex)
{ {
@@ -170,13 +165,7 @@ public:
void Register() override void Register() override
{ {
OnEffectHit += SpellEffectFn(spell_gnomeregan_radiation_bolt_SpellScript::HandleTriggerSpell, EFFECT_1, SPELL_EFFECT_TRIGGER_SPELL); OnEffectHit += SpellEffectFn(spell_gnomeregan_radiation_bolt::HandleTriggerSpell, EFFECT_1, SPELL_EFFECT_TRIGGER_SPELL);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_gnomeregan_radiation_bolt_SpellScript;
} }
}; };
@@ -184,5 +173,5 @@ void AddSC_instance_gnomeregan()
{ {
new instance_gnomeregan(); new instance_gnomeregan();
new npc_kernobee(); new npc_kernobee();
new spell_gnomeregan_radiation_bolt(); RegisterSpellScript(spell_gnomeregan_radiation_bolt);
} }
@@ -157,31 +157,30 @@ private:
EventMap _events; EventMap _events;
}; };
class spell_q12641_death_comes_from_on_high_summon_ghouls : public SpellScriptLoader enum DeathComesFromOnHigh
{ {
public: SUMMON_GHOULS_ON_SCARLET_CRUSADE = 54522
spell_q12641_death_comes_from_on_high_summon_ghouls() : SpellScriptLoader("spell_q12641_death_comes_from_on_high_summon_ghouls") { } };
class spell_q12641_death_comes_from_on_high_summon_ghouls_SpellScript : public SpellScript class spell_q12641_death_comes_from_on_high_summon_ghouls : public SpellScript
{ {
PrepareSpellScript(spell_q12641_death_comes_from_on_high_summon_ghouls_SpellScript); PrepareSpellScript(spell_q12641_death_comes_from_on_high_summon_ghouls);
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({ SUMMON_GHOULS_ON_SCARLET_CRUSADE });
}
void HandleScriptEffect(SpellEffIndex effIndex) void HandleScriptEffect(SpellEffIndex effIndex)
{ {
PreventHitEffect(effIndex); PreventHitEffect(effIndex);
if (Unit* target = GetHitUnit()) if (Unit* target = GetHitUnit())
GetCaster()->CastSpell(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 54522, true); GetCaster()->CastSpell(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), SUMMON_GHOULS_ON_SCARLET_CRUSADE, true);
} }
void Register() override void Register() override
{ {
OnEffectHitTarget += SpellEffectFn(spell_q12641_death_comes_from_on_high_summon_ghouls_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); OnEffectHitTarget += SpellEffectFn(spell_q12641_death_comes_from_on_high_summon_ghouls::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_q12641_death_comes_from_on_high_summon_ghouls_SpellScript();
} }
}; };
@@ -406,14 +405,9 @@ enum GiftOfTheHarvester
SAY_GOTHIK_PIT = 0 SAY_GOTHIK_PIT = 0
}; };
class spell_item_gift_of_the_harvester : public SpellScriptLoader class spell_item_gift_of_the_harvester : public SpellScript
{ {
public: PrepareSpellScript(spell_item_gift_of_the_harvester);
spell_item_gift_of_the_harvester() : SpellScriptLoader("spell_item_gift_of_the_harvester") { }
class spell_item_gift_of_the_harvester_SpellScript : public SpellScript
{
PrepareSpellScript(spell_item_gift_of_the_harvester_SpellScript);
SpellCastResult CheckRequirement() SpellCastResult CheckRequirement()
{ {
@@ -430,24 +424,18 @@ public:
void Register() override void Register() override
{ {
OnCheckCast += SpellCheckCastFn(spell_item_gift_of_the_harvester_SpellScript::CheckRequirement); OnCheckCast += SpellCheckCastFn(spell_item_gift_of_the_harvester::CheckRequirement);
} }
}; };
SpellScript* GetSpellScript() const override class spell_q12698_the_gift_that_keeps_on_giving : public SpellScript
{ {
return new spell_item_gift_of_the_harvester_SpellScript(); PrepareSpellScript(spell_q12698_the_gift_that_keeps_on_giving);
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({ SPELL_SUMMON_SCARLET_GHOST });
} }
};
class spell_q12698_the_gift_that_keeps_on_giving : public SpellScriptLoader
{
public:
spell_q12698_the_gift_that_keeps_on_giving() : SpellScriptLoader("spell_q12698_the_gift_that_keeps_on_giving") { }
class spell_q12698_the_gift_that_keeps_on_giving_SpellScript : public SpellScript
{
PrepareSpellScript(spell_q12698_the_gift_that_keeps_on_giving_SpellScript);
void HandleScriptEffect(SpellEffIndex /*effIndex*/) void HandleScriptEffect(SpellEffIndex /*effIndex*/)
{ {
@@ -457,13 +445,7 @@ public:
void Register() override void Register() override
{ {
OnEffectHitTarget += SpellEffectFn(spell_q12698_the_gift_that_keeps_on_giving_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); OnEffectHitTarget += SpellEffectFn(spell_q12698_the_gift_that_keeps_on_giving::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_q12698_the_gift_that_keeps_on_giving_SpellScript();
} }
}; };
@@ -1237,10 +1219,10 @@ void AddSC_the_scarlet_enclave_c1()
{ {
// Ours // Ours
RegisterCreatureAI(npc_eye_of_acherus); RegisterCreatureAI(npc_eye_of_acherus);
new spell_q12641_death_comes_from_on_high_summon_ghouls(); RegisterSpellScript(spell_q12641_death_comes_from_on_high_summon_ghouls);
new npc_death_knight_initiate(); new npc_death_knight_initiate();
new spell_item_gift_of_the_harvester(); RegisterSpellScript(spell_item_gift_of_the_harvester);
new spell_q12698_the_gift_that_keeps_on_giving(); RegisterSpellScript(spell_q12698_the_gift_that_keeps_on_giving);
new npc_scarlet_ghoul(); new npc_scarlet_ghoul();
new npc_dkc1_gothik(); new npc_dkc1_gothik();
new npc_scarlet_cannon(); new npc_scarlet_cannon();
@@ -1177,14 +1177,9 @@ public:
}; };
}; };
class spell_chapter5_light_of_dawn_aura : public SpellScriptLoader class spell_chapter5_light_of_dawn_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_chapter5_light_of_dawn_aura);
spell_chapter5_light_of_dawn_aura() : SpellScriptLoader("spell_chapter5_light_of_dawn_aura") { }
class spell_chapter5_light_of_dawn_aura_AuraScript : public AuraScript
{
PrepareAuraScript(spell_chapter5_light_of_dawn_aura_AuraScript);
void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{ {
@@ -1204,25 +1199,14 @@ public:
void Register() override void Register() override
{ {
OnEffectApply += AuraEffectApplyFn(spell_chapter5_light_of_dawn_aura_AuraScript::OnApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectApply += AuraEffectApplyFn(spell_chapter5_light_of_dawn_aura::OnApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
OnEffectRemove += AuraEffectRemoveFn(spell_chapter5_light_of_dawn_aura_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectRemove += AuraEffectRemoveFn(spell_chapter5_light_of_dawn_aura::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
} }
}; };
AuraScript* GetAuraScript() const override class spell_chapter5_rebuke : public SpellScript
{ {
return new spell_chapter5_light_of_dawn_aura_AuraScript(); PrepareSpellScript(spell_chapter5_rebuke);
}
};
class spell_chapter5_rebuke : public SpellScriptLoader
{
public:
spell_chapter5_rebuke() : SpellScriptLoader("spell_chapter5_rebuke") { }
class spell_chapter5_rebuke_SpellScript : public SpellScript
{
PrepareSpellScript(spell_chapter5_rebuke_SpellScript);
void HandleLeapBack(SpellEffIndex effIndex) void HandleLeapBack(SpellEffIndex effIndex)
{ {
@@ -1233,19 +1217,13 @@ public:
void Register() override void Register() override
{ {
OnEffectLaunchTarget += SpellEffectFn(spell_chapter5_rebuke_SpellScript::HandleLeapBack, EFFECT_0, SPELL_EFFECT_LEAP_BACK); OnEffectLaunchTarget += SpellEffectFn(spell_chapter5_rebuke::HandleLeapBack, EFFECT_0, SPELL_EFFECT_LEAP_BACK);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_chapter5_rebuke_SpellScript();
} }
}; };
void AddSC_the_scarlet_enclave_c5() void AddSC_the_scarlet_enclave_c5()
{ {
new npc_highlord_darion_mograine(); new npc_highlord_darion_mograine();
new spell_chapter5_light_of_dawn_aura(); RegisterSpellScript(spell_chapter5_light_of_dawn_aura);
new spell_chapter5_rebuke(); RegisterSpellScript(spell_chapter5_rebuke);
} }
@@ -246,14 +246,9 @@ public:
}; };
}; };
class spell_scholomance_fixate : public SpellScriptLoader class spell_scholomance_fixate_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_scholomance_fixate_aura);
spell_scholomance_fixate() : SpellScriptLoader("spell_scholomance_fixate") { }
class spell_scholomance_fixate_AuraScript : public AuraScript
{
PrepareAuraScript(spell_scholomance_fixate_AuraScript);
void HandleEffectApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) void HandleEffectApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{ {
@@ -271,25 +266,14 @@ public:
void Register() override void Register() override
{ {
OnEffectApply += AuraEffectApplyFn(spell_scholomance_fixate_AuraScript::HandleEffectApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectApply += AuraEffectApplyFn(spell_scholomance_fixate_aura::HandleEffectApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
OnEffectRemove += AuraEffectRemoveFn(spell_scholomance_fixate_AuraScript::HandleEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectRemove += AuraEffectRemoveFn(spell_scholomance_fixate_aura::HandleEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
} }
}; };
AuraScript* GetAuraScript() const override class spell_scholomance_boon_of_life_aura : public AuraScript
{ {
return new spell_scholomance_fixate_AuraScript(); PrepareAuraScript(spell_scholomance_boon_of_life_aura);
}
};
class spell_scholomance_boon_of_life : public SpellScriptLoader
{
public:
spell_scholomance_boon_of_life() : SpellScriptLoader("spell_scholomance_boon_of_life") { }
class spell_scholomance_boon_of_life_AuraScript : public AuraScript
{
PrepareAuraScript(spell_scholomance_boon_of_life_AuraScript);
void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{ {
@@ -318,14 +302,8 @@ public:
void Register() override void Register() override
{ {
OnEffectRemove += AuraEffectRemoveFn(spell_scholomance_boon_of_life_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL); OnEffectRemove += AuraEffectRemoveFn(spell_scholomance_boon_of_life_aura::OnRemove, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL);
AfterEffectApply += AuraEffectApplyFn(spell_scholomance_boon_of_life_AuraScript::OnApply, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL); AfterEffectApply += AuraEffectApplyFn(spell_scholomance_boon_of_life_aura::OnApply, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL, AURA_EFFECT_HANDLE_REAL);
}
};
AuraScript* GetAuraScript() const override
{
return new spell_scholomance_boon_of_life_AuraScript();
} }
}; };
@@ -460,7 +438,7 @@ public:
void AddSC_instance_scholomance() void AddSC_instance_scholomance()
{ {
new instance_scholomance(); new instance_scholomance();
new spell_scholomance_fixate(); RegisterSpellScript(spell_scholomance_fixate_aura);
new spell_scholomance_boon_of_life(); RegisterSpellScript(spell_scholomance_boon_of_life_aura);
new npc_scholomance_occultist(); new npc_scholomance_occultist();
} }
@@ -137,14 +137,9 @@ public:
}; };
}; };
class spell_shadowfang_keep_haunting_spirits : public SpellScriptLoader class spell_shadowfang_keep_haunting_spirits_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_shadowfang_keep_haunting_spirits_aura);
spell_shadowfang_keep_haunting_spirits() : SpellScriptLoader("spell_shadowfang_keep_haunting_spirits") { }
class spell_shadowfang_keep_haunting_spirits_AuraScript : public AuraScript
{
PrepareAuraScript(spell_shadowfang_keep_haunting_spirits_AuraScript);
void CalcPeriodic(AuraEffect const* /*aurEff*/, bool& isPeriodic, int32& amplitude) void CalcPeriodic(AuraEffect const* /*aurEff*/, bool& isPeriodic, int32& amplitude)
{ {
@@ -164,15 +159,9 @@ public:
void Register() override void Register() override
{ {
DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_shadowfang_keep_haunting_spirits_AuraScript::CalcPeriodic, EFFECT_0, SPELL_AURA_DUMMY); DoEffectCalcPeriodic += AuraEffectCalcPeriodicFn(spell_shadowfang_keep_haunting_spirits_aura::CalcPeriodic, EFFECT_0, SPELL_AURA_DUMMY);
OnEffectPeriodic += AuraEffectPeriodicFn(spell_shadowfang_keep_haunting_spirits_AuraScript::HandleDummyTick, EFFECT_0, SPELL_AURA_DUMMY); OnEffectPeriodic += AuraEffectPeriodicFn(spell_shadowfang_keep_haunting_spirits_aura::HandleDummyTick, EFFECT_0, SPELL_AURA_DUMMY);
OnEffectUpdatePeriodic += AuraEffectUpdatePeriodicFn(spell_shadowfang_keep_haunting_spirits_AuraScript::HandleUpdatePeriodic, EFFECT_0, SPELL_AURA_DUMMY); OnEffectUpdatePeriodic += AuraEffectUpdatePeriodicFn(spell_shadowfang_keep_haunting_spirits_aura::HandleUpdatePeriodic, EFFECT_0, SPELL_AURA_DUMMY);
}
};
AuraScript* GetAuraScript() const override
{
return new spell_shadowfang_keep_haunting_spirits_AuraScript();
} }
}; };
@@ -182,14 +171,32 @@ enum ForsakenSpells
SPELL_FORSAKEN_SKILL_SHADOW = 7053 SPELL_FORSAKEN_SKILL_SHADOW = 7053
}; };
class spell_shadowfang_keep_forsaken_skills : public SpellScriptLoader class spell_shadowfang_keep_forsaken_skills_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_shadowfang_keep_forsaken_skills_aura);
spell_shadowfang_keep_forsaken_skills() : SpellScriptLoader("spell_shadowfang_keep_forsaken_skills") { }
class spell_shadowfang_keep_forsaken_skills_AuraScript : public AuraScript bool Validate(SpellInfo const* /*spellInfo*/) override
{ {
PrepareAuraScript(spell_shadowfang_keep_forsaken_skills_AuraScript); return ValidateSpellInfo(
{
SPELL_FORSAKEN_SKILL_SWORD,
SPELL_FORSAKEN_SKILL_SWORD+1,
SPELL_FORSAKEN_SKILL_SWORD+2,
SPELL_FORSAKEN_SKILL_SWORD+3,
SPELL_FORSAKEN_SKILL_SWORD+4,
SPELL_FORSAKEN_SKILL_SWORD+5,
SPELL_FORSAKEN_SKILL_SWORD+6,
SPELL_FORSAKEN_SKILL_SWORD+7,
SPELL_FORSAKEN_SKILL_SWORD+8,
SPELL_FORSAKEN_SKILL_SWORD+9,
SPELL_FORSAKEN_SKILL_SWORD+10,
SPELL_FORSAKEN_SKILL_SWORD+11,
SPELL_FORSAKEN_SKILL_SWORD+12,
SPELL_FORSAKEN_SKILL_SWORD+13,
// SPELL_FORSAKEN_SKILL_SHADOW-1, // not used
SPELL_FORSAKEN_SKILL_SHADOW,
});
}
bool Load() override bool Load() override
{ {
@@ -217,23 +224,17 @@ public:
void Register() override void Register() override
{ {
OnEffectApply += AuraEffectApplyFn(spell_shadowfang_keep_forsaken_skills_AuraScript::OnApply, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectApply += AuraEffectApplyFn(spell_shadowfang_keep_forsaken_skills_aura::OnApply, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY, AURA_EFFECT_HANDLE_REAL);
OnEffectPeriodic += AuraEffectPeriodicFn(spell_shadowfang_keep_forsaken_skills_AuraScript::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY); OnEffectPeriodic += AuraEffectPeriodicFn(spell_shadowfang_keep_forsaken_skills_aura::HandleDummyTick, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
} }
private: private:
uint32 _forsakenSpell; uint32 _forsakenSpell;
}; };
AuraScript* GetAuraScript() const override
{
return new spell_shadowfang_keep_forsaken_skills_AuraScript();
}
};
void AddSC_instance_shadowfang_keep() void AddSC_instance_shadowfang_keep()
{ {
new instance_shadowfang_keep(); new instance_shadowfang_keep();
new spell_shadowfang_keep_haunting_spirits(); RegisterSpellScript(spell_shadowfang_keep_haunting_spirits_aura);
new spell_shadowfang_keep_forsaken_skills(); RegisterSpellScript(spell_shadowfang_keep_forsaken_skills_aura);
} }
@@ -227,14 +227,14 @@ public:
} }
}; };
class spell_temple_of_atal_hakkar_hex_of_jammal_an : public SpellScriptLoader class spell_temple_of_atal_hakkar_hex_of_jammal_an_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_temple_of_atal_hakkar_hex_of_jammal_an_aura);
spell_temple_of_atal_hakkar_hex_of_jammal_an() : SpellScriptLoader("spell_temple_of_atal_hakkar_hex_of_jammal_an") { }
class spell_temple_of_atal_hakkar_hex_of_jammal_an_AuraScript : public AuraScript bool Validate(SpellInfo const* /*spellInfo*/) override
{ {
PrepareAuraScript(spell_temple_of_atal_hakkar_hex_of_jammal_an_AuraScript); return ValidateSpellInfo({ HEX_OF_JAMMAL_AN, HEX_OF_JAMMAL_AN_CHARM });
}
void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{ {
@@ -248,24 +248,13 @@ public:
void Register() override void Register() override
{ {
OnEffectRemove += AuraEffectRemoveFn(spell_temple_of_atal_hakkar_hex_of_jammal_an_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectRemove += AuraEffectRemoveFn(spell_temple_of_atal_hakkar_hex_of_jammal_an_aura::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
} }
}; };
AuraScript* GetAuraScript() const override class spell_temple_of_atal_hakkar_awaken_the_soulflayer : public SpellScript
{ {
return new spell_temple_of_atal_hakkar_hex_of_jammal_an_AuraScript(); PrepareSpellScript(spell_temple_of_atal_hakkar_awaken_the_soulflayer);
}
};
class spell_temple_of_atal_hakkar_awaken_the_soulflayer : public SpellScriptLoader
{
public:
spell_temple_of_atal_hakkar_awaken_the_soulflayer() : SpellScriptLoader("spell_temple_of_atal_hakkar_awaken_the_soulflayer") { }
class spell_temple_of_atal_hakkar_awaken_the_soulflayer_SpellScript : public SpellScript
{
PrepareSpellScript(spell_temple_of_atal_hakkar_awaken_the_soulflayer_SpellScript);
void HandleSendEvent(SpellEffIndex effIndex) void HandleSendEvent(SpellEffIndex effIndex)
{ {
@@ -285,13 +274,7 @@ public:
void Register() override void Register() override
{ {
OnEffectHit += SpellEffectFn(spell_temple_of_atal_hakkar_awaken_the_soulflayer_SpellScript::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT); OnEffectHit += SpellEffectFn(spell_temple_of_atal_hakkar_awaken_the_soulflayer::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_temple_of_atal_hakkar_awaken_the_soulflayer_SpellScript();
} }
}; };
@@ -299,6 +282,6 @@ void AddSC_instance_sunken_temple()
{ {
new instance_sunken_temple(); new instance_sunken_temple();
new at_malfurion_stormrage(); new at_malfurion_stormrage();
new spell_temple_of_atal_hakkar_hex_of_jammal_an(); RegisterSpellScript(spell_temple_of_atal_hakkar_hex_of_jammal_an_aura);
new spell_temple_of_atal_hakkar_awaken_the_soulflayer(); RegisterSpellScript(spell_temple_of_atal_hakkar_awaken_the_soulflayer);
} }
@@ -140,14 +140,9 @@ public:
} }
}; };
class spell_uldaman_sub_boss_agro_keepers : public SpellScriptLoader class spell_uldaman_sub_boss_agro_keepers : public SpellScript
{ {
public: PrepareSpellScript(spell_uldaman_sub_boss_agro_keepers);
spell_uldaman_sub_boss_agro_keepers() : SpellScriptLoader("spell_uldaman_sub_boss_agro_keepers") { }
class spell_uldaman_sub_boss_agro_keepers_SpellScript : public SpellScript
{
PrepareSpellScript(spell_uldaman_sub_boss_agro_keepers_SpellScript);
void HandleSendEvent(SpellEffIndex /*effIndex*/) void HandleSendEvent(SpellEffIndex /*effIndex*/)
{ {
@@ -157,13 +152,7 @@ public:
void Register() override void Register() override
{ {
OnEffectLaunch += SpellEffectFn(spell_uldaman_sub_boss_agro_keepers_SpellScript::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT); OnEffectLaunch += SpellEffectFn(spell_uldaman_sub_boss_agro_keepers::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_uldaman_sub_boss_agro_keepers_SpellScript();
} }
}; };
@@ -172,14 +161,9 @@ enum UldamanStonedEnum
MAP_ULDAMAN = 70 MAP_ULDAMAN = 70
}; };
class spell_uldaman_stoned : public SpellScriptLoader class spell_uldaman_stoned_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_uldaman_stoned_aura);
spell_uldaman_stoned() : SpellScriptLoader("spell_uldaman_stoned") { }
class spell_uldaman_stoned_AuraScript : public AuraScript
{
PrepareAuraScript(spell_uldaman_stoned_AuraScript);
bool Load() override bool Load() override
{ {
@@ -202,25 +186,14 @@ public:
void Register() override void Register() override
{ {
OnEffectApply += AuraEffectApplyFn(spell_uldaman_stoned_AuraScript::HandleEffectApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectApply += AuraEffectApplyFn(spell_uldaman_stoned_aura::HandleEffectApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
OnEffectRemove += AuraEffectRemoveFn(spell_uldaman_stoned_AuraScript::HandleEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectRemove += AuraEffectRemoveFn(spell_uldaman_stoned_aura::HandleEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
} }
}; };
AuraScript* GetAuraScript() const override class spell_uldaman_boss_agro_archaedas : public SpellScript
{ {
return new spell_uldaman_stoned_AuraScript(); PrepareSpellScript(spell_uldaman_boss_agro_archaedas);
}
};
class spell_uldaman_boss_agro_archaedas : public SpellScriptLoader
{
public:
spell_uldaman_boss_agro_archaedas() : SpellScriptLoader("spell_uldaman_boss_agro_archaedas") { }
class spell_uldaman_boss_agro_archaedas_SpellScript : public SpellScript
{
PrepareSpellScript(spell_uldaman_boss_agro_archaedas_SpellScript);
void HandleSendEvent(SpellEffIndex /*effIndex*/) void HandleSendEvent(SpellEffIndex /*effIndex*/)
{ {
@@ -236,20 +209,14 @@ public:
void Register() override void Register() override
{ {
OnEffectLaunch += SpellEffectFn(spell_uldaman_boss_agro_archaedas_SpellScript::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT); OnEffectLaunch += SpellEffectFn(spell_uldaman_boss_agro_archaedas::HandleSendEvent, EFFECT_0, SPELL_EFFECT_SEND_EVENT);
}
};
SpellScript* GetSpellScript() const override
{
return new spell_uldaman_boss_agro_archaedas_SpellScript();
} }
}; };
void AddSC_instance_uldaman() void AddSC_instance_uldaman()
{ {
new instance_uldaman(); new instance_uldaman();
new spell_uldaman_sub_boss_agro_keepers(); RegisterSpellScript(spell_uldaman_sub_boss_agro_keepers);
new spell_uldaman_stoned(); RegisterSpellScript(spell_uldaman_stoned_aura);
new spell_uldaman_boss_agro_archaedas(); RegisterSpellScript(spell_uldaman_boss_agro_archaedas);
} }
@@ -710,14 +710,9 @@ private:
InstanceScript* instance; InstanceScript* instance;
}; };
class spell_threatening_gaze : public SpellScriptLoader class spell_threatening_gaze_aura : public AuraScript
{ {
public: PrepareAuraScript(spell_threatening_gaze_aura);
spell_threatening_gaze() : SpellScriptLoader("spell_threatening_gaze") { }
class spell_threatening_gaze_AuraScript : public AuraScript
{
PrepareAuraScript(spell_threatening_gaze_AuraScript);
void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
{ {
@@ -741,13 +736,7 @@ public:
void Register() override void Register() override
{ {
OnEffectRemove += AuraEffectRemoveFn(spell_threatening_gaze_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); OnEffectRemove += AuraEffectRemoveFn(spell_threatening_gaze_aura::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
}
};
AuraScript* GetAuraScript() const override
{
return new spell_threatening_gaze_AuraScript();
} }
}; };
@@ -798,7 +787,7 @@ void AddSC_boss_mandokir()
new npc_ohgan(); new npc_ohgan();
RegisterZulGurubCreatureAI(npc_chained_spirit); RegisterZulGurubCreatureAI(npc_chained_spirit);
RegisterZulGurubCreatureAI(npc_vilebranch_speaker); RegisterZulGurubCreatureAI(npc_vilebranch_speaker);
new spell_threatening_gaze(); RegisterSpellScript(spell_threatening_gaze_aura);
RegisterSpellScript(spell_mandokir_charge); RegisterSpellScript(spell_mandokir_charge);
RegisterSpellScript(spell_threatening_gaze_charge); RegisterSpellScript(spell_threatening_gaze_charge);
} }