- src/server/scripts/Spells/spell_warrior.cpp | 65 +++++++++++++++++++++++++++++
- 1 file changed, 65 insertions(+)
- diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp
- index 78dcaaa..0c1ccb9 100644
- --- a/src/server/scripts/Spells/spell_warrior.cpp
- +++ b/src/server/scripts/Spells/spell_warrior.cpp
- @@ -771,6 +771,69 @@ class spell_warr_vigilance_trigger : public SpellScriptLoader
- }
- };
- +class spell_warr_bladestorm_whirlwind_off_hand : public SpellScriptLoader
- +{
- + public:
- + spell_warr_bladestorm_whirlwind_off_hand() : SpellScriptLoader("spell_warr_bladestorm_whirlwind_off_hand") { }
- +
- + class spell_warr_bladestorm_whirlwind_off_hand_SpellScript : public SpellScript
- + {
- + PrepareSpellScript(spell_warr_bladestorm_whirlwind_off_hand_SpellScript);
- +
- + SpellCastResult CheckCast()
- + {
- + Item* item = GetCaster()->ToPlayer()->GetWeaponForAttack(OFF_ATTACK);
- +
- + if (!item || item->IsBroken())
- + return SPELL_FAILED_DONT_REPORT;
- +
- + if (!item->IsFitToSpellRequirements(sSpellMgr->GetSpellInfo(44949)))
- + return SPELL_FAILED_DONT_REPORT;
- +
- + return SPELL_CAST_OK;
- + }
- +
- + void Register() OVERRIDE
- + {
- + OnCheckCast += SpellCheckCastFn(spell_warr_bladestorm_whirlwind_off_hand_SpellScript::CheckCast);
- + }
- + };
- +
- + SpellScript* GetSpellScript() const OVERRIDE
- + {
- + return new spell_warr_bladestorm_whirlwind_off_hand_SpellScript();
- + }
- +};
- +
- +class spell_warr_bladestorm_whirlwind_main_hand : public SpellScriptLoader
- +{
- + public:
- + spell_warr_bladestorm_whirlwind_main_hand() : SpellScriptLoader("spell_warr_bladestorm_whirlwind_main_hand") { }
- +
- + class spell_warr_bladestorm_whirlwind_main_hand_SpellScript : public SpellScript
- + {
- + PrepareSpellScript(spell_warr_bladestorm_whirlwind_main_hand_SpellScript);
- +
- + SpellCastResult CheckCast()
- + {
- + if (GetCaster()->HasAuraType(SPELL_AURA_MOD_DISARM))
- + return SPELL_FAILED_DONT_REPORT;
- +
- + return SPELL_CAST_OK;
- + }
- +
- + void Register() OVERRIDE
- + {
- + OnCheckCast += SpellCheckCastFn(spell_warr_bladestorm_whirlwind_main_hand_SpellScript::CheckCast);
- + }
- + };
- +
- + SpellScript* GetSpellScript() const OVERRIDE
- + {
- + return new spell_warr_bladestorm_whirlwind_main_hand_SpellScript();
- + }
- +};
- +
- void AddSC_warrior_spell_scripts()
- {
- new spell_warr_bloodthirst();
- @@ -790,4 +853,6 @@ void AddSC_warrior_spell_scripts()
- new spell_warr_sweeping_strikes();
- new spell_warr_vigilance();
- new spell_warr_vigilance_trigger();
- + new spell_warr_bladestorm_whirlwind_off_hand();
- + new spell_warr_bladestorm_whirlwind_main_hand();
- }
- --
- 1.8.3.msysgit.0
BladeStorm