From 41c8c4ba74bc1507b77ca90994bac194016dabdd Mon Sep 17 00:00:00 2001 From: offl <11556157+offl@users.noreply.github.com> Date: Mon, 13 Dec 2021 22:39:32 +0200 Subject: Scripts/Quest: Update 'It's All Fun and Games' (12887,12892) (#27394) --- src/server/scripts/Northrend/zone_icecrown.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/server/scripts') diff --git a/src/server/scripts/Northrend/zone_icecrown.cpp b/src/server/scripts/Northrend/zone_icecrown.cpp index 01e54559c71..a83f34cacd7 100644 --- a/src/server/scripts/Northrend/zone_icecrown.cpp +++ b/src/server/scripts/Northrend/zone_icecrown.cpp @@ -23,6 +23,7 @@ #include "ScriptedCreature.h" #include "ScriptedGossip.h" #include "SpellAuras.h" +#include "SpellScript.h" #include "TemporarySummon.h" /*###### @@ -780,6 +781,28 @@ class npc_frostbrood_skytalon : public CreatureScript } }; +// 55288 - It's All Fun and Games: The Ocular On Death +class spell_the_ocular_on_death : public SpellScript +{ + PrepareSpellScript(spell_the_ocular_on_death); + + bool Validate(SpellInfo const* spellInfo) override + { + return ValidateSpellInfo({ uint32(spellInfo->GetEffect(EFFECT_0).CalcValue()) }); + } + + void HandleScript(SpellEffIndex /*effIndex*/) + { + if (Player* target = GetHitPlayer()) + target->CastSpell(target, GetEffectInfo().CalcValue(), true); + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_the_ocular_on_death::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); + } +}; + void AddSC_icecrown() { new npc_argent_valiant; @@ -787,4 +810,5 @@ void AddSC_icecrown() new npc_tournament_training_dummy; new npc_blessed_banner(); new npc_frostbrood_skytalon(); + RegisterSpellScript(spell_the_ocular_on_death); } -- cgit v1.2.3