diff options
author | Shocker <shocker@freakz.ro> | 2011-12-16 10:38:33 -0800 |
---|---|---|
committer | Shocker <shocker@freakz.ro> | 2011-12-16 10:38:33 -0800 |
commit | d1bb5b21af65bcf14ee474f3239e672e8934a33b (patch) | |
tree | 4d0968bce676cec07852ecffd4b1b9cf1b14d8e1 /src | |
parent | 5d39dfc7be650236343654650919f9e9d27cf464 (diff) | |
parent | c961d3fdb56c31390a88f652c39efa5c4384365f (diff) |
Merge pull request #4356 from kandera/fix_TotT
Core/Spells: Fix correct targeting for Tricks of the Trade
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 2 | ||||
-rwxr-xr-x | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 15 |
2 files changed, 12 insertions, 5 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 48b096e5a25..5a7645bd513 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6497,7 +6497,7 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere RemoveAura(57934); if (!redirectTarget) break; - redirectTarget->CastSpell(this,59628,true); + CastSpell(this,59628,true); CastSpell(redirectTarget,57933,true); break; } diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index beb55733e71..71122775492 100755 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -4804,8 +4804,10 @@ void AuraEffect::HandleAuraDummy(AuraApplication const* aurApp, uint8 mode, bool if (Aura* newAura = target->AddAura(71564, target)) newAura->SetStackAmount(newAura->GetSpellInfo()->StackAmount); break; - case 59628: // Tricks of the Trade - target->SetReducedThreatPercent(100,caster->GetGUID()); + case 59628: // Tricks of the Trade + if (!caster->GetMisdirectionTarget()) + break; + target->SetReducedThreatPercent(100,caster->GetMisdirectionTarget()->GetGUID()); break; } } @@ -4958,9 +4960,14 @@ void AuraEffect::HandleAuraDummy(AuraApplication const* aurApp, uint8 mode, bool // Tricks of the trade switch(GetId()) { - case 59628: - case 57934: + case 59628: //Tricks of the trade buff on rogue (6sec duration) target->SetReducedThreatPercent(0,0); + break; + case 57934: //Tricks of the trade buff on rogue (30sec duration) + if (aurApp->GetRemoveMode() == AURA_REMOVE_BY_EXPIRE || !caster->GetMisdirectionTarget()) + target->SetReducedThreatPercent(0,0); + else + target->SetReducedThreatPercent(0,caster->GetMisdirectionTarget()->GetGUID()); break; } default: |