diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 9 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_rogue.cpp | 37 |
2 files changed, 37 insertions, 9 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 0b2e0c7d5e6..8c126ac633a 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -5730,15 +5730,6 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere break; } } - - switch (dummySpell->SpellIconID) - { - case 2963: // Deadly Brew - { - triggered_spell_id = 3409; - break; - } - } break; } case SPELLFAMILY_PALADIN: diff --git a/src/server/scripts/Spells/spell_rogue.cpp b/src/server/scripts/Spells/spell_rogue.cpp index 2d47c76418c..71373090108 100644 --- a/src/server/scripts/Spells/spell_rogue.cpp +++ b/src/server/scripts/Spells/spell_rogue.cpp @@ -31,6 +31,7 @@ enum RogueSpells SPELL_ROGUE_BLADE_FLURRY = 13877, SPELL_ROGUE_BLADE_FLURRY_EXTRA_ATTACK = 22482, SPELL_ROGUE_CHEAT_DEATH_COOLDOWN = 31231, + SPELL_ROGUE_CRIPPLING_POISON = 3409, SPELL_ROGUE_GLYPH_OF_PREPARATION = 56819, SPELL_ROGUE_PREY_ON_THE_WEAK = 58670, SPELL_ROGUE_SHIV_TRIGGERED = 5940, @@ -165,6 +166,41 @@ class spell_rog_cheat_death : public SpellScriptLoader } }; +// -51625 - Deadly Brew +class spell_rog_crippling_poison : public SpellScriptLoader +{ + public: + spell_rog_crippling_poison() : SpellScriptLoader("spell_rog_crippling_poison") { } + + class spell_rog_crippling_poison_AuraScript : public AuraScript + { + PrepareAuraScript(spell_rog_crippling_poison_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) OVERRIDE + { + if (!sSpellMgr->GetSpellInfo(SPELL_ROGUE_CRIPPLING_POISON)) + return false; + return true; + } + + void OnProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + GetTarget()->CastSpell(eventInfo.GetProcTarget(), SPELL_ROGUE_CRIPPLING_POISON, true, NULL, aurEff); + } + + void Register() OVERRIDE + { + OnEffectProc += AuraEffectProcFn(spell_rog_crippling_poison_AuraScript::OnProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const OVERRIDE + { + return new spell_rog_crippling_poison_AuraScript(); + } +}; + // -51664 - Cut to the Chase class spell_rog_cut_to_the_chase : public SpellScriptLoader { @@ -680,6 +716,7 @@ void AddSC_rogue_spell_scripts() { new spell_rog_blade_flurry(); new spell_rog_cheat_death(); + new spell_rog_crippling_poison(); new spell_rog_cut_to_the_chase(); new spell_rog_deadly_poison(); new spell_rog_nerves_of_steel(); |