aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2017-12-27 21:21:45 -0300
committerariel- <ariel-@users.noreply.github.com>2017-12-28 12:16:38 -0300
commitd13999c8d6a390914907d1d8343d72c06195bf10 (patch)
treeeeee15e364ee8895c9bad3ed93325aeda57a0d74
parent81dc41a4a583026667152b1cb92bd546704ed01f (diff)
Core/Scripts: remove Quel'Delar from player inventory during "The Halls Of Reflection" quests (24480, 24561)
-rw-r--r--sql/updates/world/3.3.5/2017_12_28_05_world.sql3
-rw-r--r--src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp25
2 files changed, 28 insertions, 0 deletions
diff --git a/sql/updates/world/3.3.5/2017_12_28_05_world.sql b/sql/updates/world/3.3.5/2017_12_28_05_world.sql
new file mode 100644
index 00000000000..a1d31371e46
--- /dev/null
+++ b/sql/updates/world/3.3.5/2017_12_28_05_world.sql
@@ -0,0 +1,3 @@
+DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_hor_quel_delars_will';
+INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
+(70698, 'spell_hor_quel_delars_will');
diff --git a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp
index 0545d3d19f6..3be5575c7d0 100644
--- a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp
+++ b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp
@@ -2842,6 +2842,30 @@ class spell_hor_gunship_cannon_fire : public SpellScriptLoader
}
};
+// 70698 - Quel'Delar's Will
+class spell_hor_quel_delars_will : public SpellScript
+{
+ PrepareSpellScript(spell_hor_quel_delars_will);
+
+ bool Validate(SpellInfo const* spellInfo) override
+ {
+ return ValidateSpellInfo({ spellInfo->Effects[EFFECT_0].TriggerSpell });
+ }
+
+ void HandleReagent(SpellEffIndex effIndex)
+ {
+ PreventHitDefaultEffect(effIndex);
+
+ // dummy spell consumes reagent, don't ignore it
+ GetHitUnit()->CastSpell(GetCaster(), GetSpellInfo()->Effects[effIndex].TriggerSpell, TriggerCastFlags(TRIGGERED_FULL_MASK & ~TRIGGERED_IGNORE_POWER_AND_REAGENT_COST));
+ }
+
+ void Register() override
+ {
+ OnEffectHitTarget += SpellEffectFn(spell_hor_quel_delars_will::HandleReagent, EFFECT_0, SPELL_EFFECT_FORCE_CAST);
+ }
+};
+
void AddSC_halls_of_reflection()
{
new at_hor_intro_start();
@@ -2868,4 +2892,5 @@ void AddSC_halls_of_reflection()
new spell_hor_start_halls_of_reflection_quest_ae();
new spell_hor_evasion();
new spell_hor_gunship_cannon_fire();
+ RegisterSpellScript(spell_hor_quel_delars_will);
}