diff options
author | QAston <qaston@gmail.com> | 2011-07-28 03:08:42 +0200 |
---|---|---|
committer | QAston <qaston@gmail.com> | 2011-07-28 03:08:42 +0200 |
commit | f33a0c23caf9897223e47d3be318ed8d5a09de46 (patch) | |
tree | e2efc0b6e2ef85bd6b778e9c87cfe8523b996bc5 | |
parent | 7094f5784129d4277a268d5c2808a00df47fee7e (diff) |
Core/Spells: Fix passive auras stacking logic after recent changes.
Closes #2417
-rwxr-xr-x | src/server/game/Spells/Auras/SpellAuras.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuras.cpp b/src/server/game/Spells/Auras/SpellAuras.cpp index 0d0c6c4e86e..7dbf4a0f59c 100755 --- a/src/server/game/Spells/Auras/SpellAuras.cpp +++ b/src/server/game/Spells/Auras/SpellAuras.cpp @@ -1771,8 +1771,8 @@ bool Aura::CanStackWith(Aura const* existingAura) const SpellInfo const* existingSpellInfo = existingAura->GetSpellInfo(); bool sameCaster = GetCasterGUID() == existingAura->GetCasterGUID(); - // passive auras don't stack when cast by different casters, or with another rank of the spell - if (IsPassive() && (!sameCaster || !m_spellInfo->IsDifferentRankOf(existingSpellInfo))) + // passive auras don't stack with another rank of the spell cast by same caster + if (IsPassive() && sameCaster && m_spellInfo->IsDifferentRankOf(existingSpellInfo)) return false; for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i) diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index c59492c9ec3..8f89228513a 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -803,7 +803,7 @@ bool SpellInfo::CanBeUsedInCombat() const bool SpellInfo::IsPositive() const { - return AttributesCu & SPELL_ATTR0_CU_NEGATIVE; + return !(AttributesCu & SPELL_ATTR0_CU_NEGATIVE); } bool SpellInfo::IsPositiveEffect(uint8 effIndex) const |