aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
authorMachiavelli <none@none>2009-06-17 17:14:25 +0200
committerMachiavelli <none@none>2009-06-17 17:14:25 +0200
commitd9057a8189abf953569f62c6a2b0e1aeb242fb32 (patch)
tree8b43dad76a1fea951fab889010d843d33fff6d0a /src/game/Unit.cpp
parent87790145c548bfa18d1c964f062268905ab7137c (diff)
parente405e6f9ede8c9ce5db647fdffb1dd6c008856eb (diff)
*Merge
--HG-- branch : trunk
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp30
1 files changed, 17 insertions, 13 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 4cef59a9037..037c00fcff2 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -4915,6 +4915,17 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
}
return false;
}
+ // Overkill
+ case 58426:
+ {
+ if (procEx & AURA_REMOVE_PROC_EX_MASK)
+ triggered_spell_id = 58428;
+ else
+ {
+ triggered_spell_id = 58427;
+ }
+ break;
+ }
// Eye for an Eye
case 9799:
case 25988:
@@ -5033,18 +5044,6 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
triggered_spell_id = 34650;
break;
}
- // Overkill
- case 58426:
- {
- if (procEx & AURA_REMOVE_PROC_EX_MASK)
- triggered_spell_id = 58428;
- else
- {
- basepoints0 = -triggerAmount;
- triggered_spell_id = 58427;
- }
- break;
- }
// Mark of Malice
case 33493:
{
@@ -13340,6 +13339,12 @@ void Unit::AddPetAura(PetAura const* petSpell)
if(GetTypeId() != TYPEID_PLAYER)
return;
+ // Aura already added - not need to add it twice
+ // This check is to prevent existing pet having aura applied twice (passive auras can stack)
+ // if aura has more than 1 dummy effect
+ if (m_petAuras.find(petSpell)!= m_petAuras.end())
+ return;
+
m_petAuras.insert(petSpell);
if(Pet* pet = ((Player*)this)->GetPet())
pet->CastPetAura(petSpell);
@@ -13480,7 +13485,6 @@ bool Unit::IsTriggeredAtSpellProcEvent(Unit *pVictim, Aura * aura, SpellEntry co
{
modOwner->ApplySpellMod(spellProto->Id,SPELLMOD_CHANCE_OF_SUCCESS,chance);
}
-
return roll_chance_f(chance);
}