aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKandera <KanderaDev@gmail.com>2012-05-18 13:49:59 -0400
committerKandera <KanderaDev@gmail.com>2012-05-18 13:49:59 -0400
commitd1e0dc3fe0c95f78ef261d19c956faf8d3f70a35 (patch)
treeafc41987be7b4ecb85b91c3aa17e02664caefff7
parent7b8bece5788339a9da91f845d1ebf2399c360460 (diff)
Core/Spells: fix dispel aggro in a less hacky way!
-rwxr-xr-xsrc/server/game/Spells/Spell.cpp2
-rwxr-xr-xsrc/server/game/Spells/SpellEffects.cpp3
2 files changed, 1 insertions, 4 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index 758769b36a4..de432229e2c 100755
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -2505,7 +2505,7 @@ void Spell::DoAllEffectOnTarget(TargetInfo* target)
}
}
- if (missInfo != SPELL_MISS_EVADE && m_caster && !m_caster->IsFriendlyTo(unit) && !m_spellInfo->IsPositive())
+ if (missInfo != SPELL_MISS_EVADE && m_caster && !m_caster->IsFriendlyTo(unit) && (!m_spellInfo->IsPositive() || m_spellInfo->HasEffect(SPELL_EFFECT_DISPEL)))
{
m_caster->CombatStart(unit, !(m_spellInfo->AttributesEx3 & SPELL_ATTR3_NO_INITIAL_AGGRO));
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 51f37ec5920..07bea5f980c 100755
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -2610,9 +2610,6 @@ void Spell::EffectDispel(SpellEffIndex effIndex)
}
m_caster->SendMessageToSet(&dataSuccess, true);
- if (m_caster->IsValidAttackTarget(unitTarget) && !m_caster->isInCombat())
- m_caster->CombatStart(unitTarget);
-
// On success dispel
// Devour Magic
if (m_spellInfo->SpellFamilyName == SPELLFAMILY_WARLOCK && m_spellInfo->Category == SPELLCATEGORY_DEVOUR_MAGIC)