diff options
| author | Shauren <shauren.trinity@gmail.com> | 2011-03-22 23:56:57 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2011-03-22 23:56:57 +0100 |
| commit | 91946254662e8fc9d1c6078c23c315c61e7e59b1 (patch) | |
| tree | 5f1e9292d14f2c401a675ad5a35c34892755dcca /src | |
| parent | 8f565b7e13908d10ce6c44ce91659b347b7f53f1 (diff) | |
Core/Spells: Check Line of Sight every channel spell tick
Diffstat (limited to 'src')
| -rwxr-xr-x | src/server/game/Spells/Spell.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index a091f9cbfdf..b2c6d70f1a7 100755 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -4841,9 +4841,9 @@ SpellCastResult Spell::CheckCast(bool strict) } } - if (!m_IsTriggeredSpell && VMAP::VMapFactory::checkSpellForLoS(m_spellInfo->Id) && !m_caster->IsWithinLOSInMap(target)) + // recheck LoS every channel tick + if ((!m_IsTriggeredSpell || (m_triggeredByAuraSpell && IsChanneledSpell(m_triggeredByAuraSpell))) && VMAP::VMapFactory::checkSpellForLoS(m_spellInfo->Id) && !m_caster->IsWithinLOSInMap(target)) return SPELL_FAILED_LINE_OF_SIGHT; - } else if (m_caster == target) { |
