diff options
| -rw-r--r-- | sql/updates/world/2013_07_20_06_world_spell_script_misc_434.sql | 7 | ||||
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 7 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_mage.cpp | 31 |
3 files changed, 38 insertions, 7 deletions
diff --git a/sql/updates/world/2013_07_20_06_world_spell_script_misc_434.sql b/sql/updates/world/2013_07_20_06_world_spell_script_misc_434.sql new file mode 100644 index 00000000000..0dd62f80fa1 --- /dev/null +++ b/sql/updates/world/2013_07_20_06_world_spell_script_misc_434.sql @@ -0,0 +1,7 @@ +DELETE FROM `spell_script_names` WHERE `spell_id`=56374; +INSERT INTO `spell_script_names`(`spell_id`, `ScriptName`) VALUES +(56374,'spell_mage_glyph_of_icy_veins'); + +DELETE FROM `spell_proc_event` WHERE `entry`=56374; +INSERT INTO `spell_proc_event` (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMask0`, `SpellFamilyMask1`, `SpellFamilyMask2`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES +(56374, 0, 3, 0, 16384, 0, 16384, 0, 0, 100, 0); diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 1103bb9c10f..2d0852510a3 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -5432,13 +5432,6 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere } switch (dummySpell->Id) { - // Glyph of Icy Veins - case 56374: - { - RemoveAurasByType(SPELL_AURA_HASTE_SPELLS, 0, 0, true, false); - RemoveAurasByType(SPELL_AURA_MOD_DECREASE_SPEED); - return true; - } // Permafrost case 11175: case 12569: diff --git a/src/server/scripts/Spells/spell_mage.cpp b/src/server/scripts/Spells/spell_mage.cpp index 28283c8ba1e..ec1e5861599 100644 --- a/src/server/scripts/Spells/spell_mage.cpp +++ b/src/server/scripts/Spells/spell_mage.cpp @@ -694,6 +694,36 @@ class spell_mage_glyph_of_ice_block : public SpellScriptLoader } }; +// 56374 - Glyph of Icy Veins +class spell_mage_glyph_of_icy_veins : public SpellScriptLoader +{ +public: + spell_mage_glyph_of_icy_veins() : SpellScriptLoader("spell_mage_glyph_of_icy_veins") { } + + class spell_mage_glyph_of_icy_veins_AuraScript : public AuraScript + { + PrepareAuraScript(spell_mage_glyph_of_icy_veins_AuraScript); + + void HandleEffectProc(AuraEffect const* /*aurEff*/, ProcEventInfo& /*eventInfo*/) + { + PreventDefaultAction(); + + GetTarget()->RemoveAurasByType(SPELL_AURA_HASTE_SPELLS, 0, 0, true, false); + GetTarget()->RemoveAurasByType(SPELL_AURA_MOD_DECREASE_SPEED); + } + + void Register() OVERRIDE + { + OnEffectProc += AuraEffectProcFn(spell_mage_glyph_of_icy_veins_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const OVERRIDE + { + return new spell_mage_glyph_of_icy_veins_AuraScript(); + } +}; + // 56375 - Glyph of Polymorph class spell_mage_glyph_of_polymorph : public SpellScriptLoader { @@ -1377,6 +1407,7 @@ void AddSC_mage_spell_scripts() new spell_mage_ice_barrier(); new spell_mage_ignite(); new spell_mage_glyph_of_ice_block(); + new spell_mage_glyph_of_icy_veins(); new spell_mage_glyph_of_polymorph(); new spell_mage_living_bomb(); new spell_mage_mage_ward(); |
