diff options
-rw-r--r-- | sql/updates/world/6.x/2016_05_12_00_world.sql | 7 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_shaman.cpp | 28 |
2 files changed, 35 insertions, 0 deletions
diff --git a/sql/updates/world/6.x/2016_05_12_00_world.sql b/sql/updates/world/6.x/2016_05_12_00_world.sql new file mode 100644 index 00000000000..5f59ab00d6a --- /dev/null +++ b/sql/updates/world/6.x/2016_05_12_00_world.sql @@ -0,0 +1,7 @@ +DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_sha_lightning_shield'; +INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES +(324,'spell_sha_lightning_shield'); + +DELETE FROM `spell_proc_event` WHERE `entry`=324; +INSERT INTO `spell_proc_event` (`entry`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`SpellFamilyMask3`,`cooldown`) VALUES +(324,0x00000000,0x00000000,0x00000000,0x00000000,0); diff --git a/src/server/scripts/Spells/spell_shaman.cpp b/src/server/scripts/Spells/spell_shaman.cpp index b0f49340f7b..b5546685f68 100644 --- a/src/server/scripts/Spells/spell_shaman.cpp +++ b/src/server/scripts/Spells/spell_shaman.cpp @@ -919,6 +919,33 @@ class spell_sha_lava_surge_proc : public SpellScriptLoader } }; +// 324 - Lightning Shield +class spell_sha_lightning_shield : public SpellScriptLoader +{ +public: + spell_sha_lightning_shield() : SpellScriptLoader("spell_sha_lightning_shield") { } + + class spell_sha_lightning_shield_AuraScript : public AuraScript + { + PrepareAuraScript(spell_sha_lightning_shield_AuraScript); + + void UnsetUsingCharges(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) + { + GetAura()->SetUsingCharges(false); + } + + void Register() override + { + OnEffectApply += AuraEffectApplyFn(spell_sha_lightning_shield_AuraScript::UnsetUsingCharges, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_sha_lightning_shield_AuraScript(); + } +}; + // 30884 - Nature's Guardian class spell_sha_nature_guardian : public SpellScriptLoader { @@ -1098,6 +1125,7 @@ void AddSC_shaman_spell_scripts() new spell_sha_lava_lash_spread_flame_shock(); new spell_sha_lava_surge(); new spell_sha_lava_surge_proc(); + new spell_sha_lightning_shield(); new spell_sha_nature_guardian(); new spell_sha_thunderstorm(); new spell_sha_tidal_waves(); |