diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 10 | ||||
-rwxr-xr-x | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 13 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 2e2f5591a5d..022c5d25447 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6482,6 +6482,16 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere triggered_spell_id = 32747; break; } + case 57934: // Tricks of the Trade + { + Unit* redirectTarget = GetMisdirectionTarget(); + RemoveAura(57934); + if (!redirectTarget) + break; + redirectTarget->CastSpell(this,59628,true); + CastSpell(redirectTarget,57933,true); + break; + } } switch (dummySpell->SpellIconID) diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index c4487fbd950..b690a811fbb 100755 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -4803,6 +4803,10 @@ void AuraEffect::HandleAuraDummy(AuraApplication const* aurApp, uint8 mode, bool case 71563: if (Aura* newAura = target->AddAura(71564, target)) newAura->SetStackAmount(newAura->GetSpellInfo()->StackAmount); + break; + case 59628: // Tricks of the Trade + target->SetReducedThreatPercent(100,caster->GetGUID()); + break; } } // AT REMOVE @@ -4950,6 +4954,15 @@ void AuraEffect::HandleAuraDummy(AuraApplication const* aurApp, uint8 mode, bool if (GetId() == 61777) target->CastSpell(target, GetAmount(), true); break; + case SPELLFAMILY_ROGUE: + // Tricks of the trade + switch(GetId()) + { + case 59628: + case 57934: + target->SetReducedThreatPercent(0,0); + break; + } default: break; } |