aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/6.x/2016_05_12_00_world.sql7
-rw-r--r--src/server/scripts/Spells/spell_shaman.cpp28
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();