diff options
-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) { |