From b52e0ccbad718eb0b2d84f4a247c60f7934e8eb6 Mon Sep 17 00:00:00 2001 From: offl <11556157+offl@users.noreply.github.com> Date: Fri, 10 Jun 2022 00:15:20 +0300 Subject: Scripts/Quest: Migrate few quest spell scripts to zone files (#28015) --- .../scripts/Northrend/zone_borean_tundra.cpp | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'src/server/scripts/Northrend') diff --git a/src/server/scripts/Northrend/zone_borean_tundra.cpp b/src/server/scripts/Northrend/zone_borean_tundra.cpp index e6bdec7f426..c7068df2218 100644 --- a/src/server/scripts/Northrend/zone_borean_tundra.cpp +++ b/src/server/scripts/Northrend/zone_borean_tundra.cpp @@ -1883,6 +1883,37 @@ class spell_borean_tundra_prototype_neural_needle : public SpellScript } }; +/*###### +## Quest 11587: Prison Break +######*/ + +enum PrisonBreak +{ + SPELL_SUMMON_ARCANE_PRISONER_1 = 45446, + SPELL_SUMMON_ARCANE_PRISONER_2 = 45448 +}; + +// 45449 - Arcane Prisoner Rescue +class spell_borean_tundra_arcane_prisoner_rescue : public SpellScript +{ + PrepareSpellScript(spell_borean_tundra_arcane_prisoner_rescue); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_SUMMON_ARCANE_PRISONER_1, SPELL_SUMMON_ARCANE_PRISONER_2 }); + } + + void HandleDummy(SpellEffIndex /*effIndex*/) + { + GetCaster()->CastSpell(GetCaster(), RAND(SPELL_SUMMON_ARCANE_PRISONER_1, SPELL_SUMMON_ARCANE_PRISONER_2)); + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_borean_tundra_arcane_prisoner_rescue::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY); + } +}; + void AddSC_borean_tundra() { RegisterCreatureAI(npc_corastrasza); @@ -1910,4 +1941,5 @@ void AddSC_borean_tundra() RegisterSpellScript(spell_borean_tundra_kodo_delivered); RegisterSpellScript(spell_borean_tundra_neural_needle); RegisterSpellScript(spell_borean_tundra_prototype_neural_needle); + RegisterSpellScript(spell_borean_tundra_arcane_prisoner_rescue); } -- cgit v1.2.3