diff options
| author | Vincent-Michael <Vincent_Michael@gmx.de> | 2013-07-20 18:22:33 +0200 |
|---|---|---|
| committer | Vincent-Michael <Vincent_Michael@gmx.de> | 2013-07-20 18:23:34 +0200 |
| commit | a86f818fe18e89629e7bcdbd95c4c88b87ad3d2f (patch) | |
| tree | e759cfde98035299e59ddb34180fb0077dee3e59 | |
| parent | 7e0b8d69d644bfe44c9e2673d774bfd21db8f83e (diff) | |
Core/Spells: Update/Convert warrior state "Victory Rush" for 4.3.4
| -rw-r--r-- | sql/updates/world/2013_07_20_04_world_spell_script_misc_434.sql | 7 | ||||
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 10 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_warrior.cpp | 29 |
3 files changed, 36 insertions, 10 deletions
diff --git a/sql/updates/world/2013_07_20_04_world_spell_script_misc_434.sql b/sql/updates/world/2013_07_20_04_world_spell_script_misc_434.sql new file mode 100644 index 00000000000..3f66b9ed257 --- /dev/null +++ b/sql/updates/world/2013_07_20_04_world_spell_script_misc_434.sql @@ -0,0 +1,7 @@ +DELETE FROM `spell_script_names` WHERE `spell_id`=32216; +INSERT INTO `spell_script_names`(`spell_id`, `ScriptName`) VALUES +(32216,'spell_warr_victorious'); + +DELETE FROM `spell_proc_event` WHERE `entry`=32216; +INSERT INTO `spell_proc_event` (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMask0`, `SpellFamilyMask1`, `SpellFamilyMask2`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES +(32216, 0, 4, 0, 256, 0, 16, 0, 0, 0, 0); diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 957d2f5fd91..72e44e49abc 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -5468,16 +5468,6 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere } case SPELLFAMILY_WARRIOR: { - switch (dummySpell->Id) - { - // Victorious - case 32216: - { - RemoveAura(dummySpell->Id); - return false; - } - } - // Retaliation if (dummySpell->SpellFamilyFlags[1] & 0x8) { diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp index ef46159e3af..9c5b7af76d7 100644 --- a/src/server/scripts/Spells/spell_warrior.cpp +++ b/src/server/scripts/Spells/spell_warrior.cpp @@ -769,6 +769,34 @@ class spell_warr_sword_and_board : public SpellScriptLoader } }; +// 32216 - Victorious +class spell_warr_victorious : public SpellScriptLoader +{ + public: + spell_warr_victorious() : SpellScriptLoader("spell_warr_victorious") { } + + class spell_warr_victorious_AuraScript : public AuraScript + { + PrepareAuraScript(spell_warr_victorious_AuraScript); + + void HandleEffectProc(AuraEffect const* /*aurEff*/, ProcEventInfo& /*eventInfo*/) + { + PreventDefaultAction(); + GetTarget()->RemoveAura(GetId()); + } + + void Register() OVERRIDE + { + OnEffectProc += AuraEffectProcFn(spell_warr_victorious_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const OVERRIDE + { + return new spell_warr_victorious_AuraScript(); + } +}; + // 50720 - Vigilance class spell_warr_vigilance : public SpellScriptLoader { @@ -914,6 +942,7 @@ void AddSC_warrior_spell_scripts() new spell_warr_slam(); new spell_warr_sweeping_strikes(); new spell_warr_sword_and_board(); + new spell_warr_victorious(); new spell_warr_vigilance(); new spell_warr_vigilance_trigger(); } |
