aboutsummaryrefslogtreecommitdiff
path: root/src/game/Spell.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-04-29 16:51:27 -0500
committermegamage <none@none>2009-04-29 16:51:27 -0500
commite490779de0b741839599a5924a3cc536ef4e763d (patch)
tree05a88af3ce96e79d25daddf9587fdf313a860ef1 /src/game/Spell.cpp
parentb89d307f758915252670b7392d58b0181f9d5429 (diff)
parente695016e94c08fbef0f2e2df4df13fd27f0c86ef (diff)
*Merge.
--HG-- branch : trunk
Diffstat (limited to 'src/game/Spell.cpp')
-rw-r--r--src/game/Spell.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 7b5bfca3a05..28cbd541b00 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -1410,9 +1410,10 @@ void Spell::SearchChainTarget(std::list<Unit*> &TagUnitMap, float max_range, uin
if(cur->GetDistance(*next) > CHAIN_SPELL_JUMP_RADIUS)
break;
- while(!cur->IsWithinLOSInMap(*next)
- || m_spellInfo->DmgClass==SPELL_DAMAGE_CLASS_MELEE
- && !m_caster->isInFront(*next, max_range))
+ while(m_spellInfo->DmgClass == SPELL_DAMAGE_CLASS_MELEE
+ && !m_caster->isInFront(*next, max_range)
+ || !m_caster->canSeeOrDetect(*next, false)
+ || !cur->IsWithinLOSInMap(*next))
{
++next;
if(next == tempUnitMap.end() || cur->GetDistance(*next) > CHAIN_SPELL_JUMP_RADIUS)