From b1360dc1e82403ba9910cc8b3a88dcd1b31b2ec9 Mon Sep 17 00:00:00 2001 From: QAston Date: Sun, 19 Apr 2009 21:38:30 +0200 Subject: *Remove stealth when unit gets hit *Drop radius check for channeled auras, use range only. --HG-- branch : trunk --- src/game/SpellAuras.cpp | 25 +++---------------------- src/game/Unit.cpp | 1 + 2 files changed, 4 insertions(+), 22 deletions(-) (limited to 'src') diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 851ad35c0f9..39508a6c382 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -645,8 +645,7 @@ void Aura::Update(uint32 diff) // Channeled aura required check distance from caster if(IsChanneledSpell(m_spellProto) && m_caster_guid != m_target->GetGUID() - && !IsAreaAura() && !IsPersistent() // check for these is done in auraeffect - /* && !m_target->isPossessed()*/) + && !IsAreaAura() && !IsPersistent()) // check for these is done in auraeffect { Unit* caster = GetCaster(); if(!caster) @@ -654,28 +653,10 @@ void Aura::Update(uint32 diff) m_target->RemoveAura(this); return; } - // Get spell range - float radius=-1.0f; - SpellModOp mod; - // get part aura with lowest radius - for (uint8 i=0;i<3;++i) - { - if (HasEffect(i) && m_spellProto->EffectRadiusIndex[i]) - { - float new_radius = caster->GetSpellRadiusForTarget(m_target, sSpellRadiusStore.LookupEntry(m_spellProto->EffectRadiusIndex[i])); - if (radius < 0.0f || radius > new_radius) - radius = new_radius; - mod = SPELLMOD_RADIUS; - } - } - if (radius < 0.0f) - { - radius = caster->GetSpellMaxRangeForTarget(m_target, sSpellRangeStore.LookupEntry(m_spellProto->rangeIndex)) ; - mod = SPELLMOD_RANGE; - } + float radius = caster->GetSpellMaxRangeForTarget(m_target, sSpellRangeStore.LookupEntry(m_spellProto->rangeIndex)) ; if(Player* modOwner = caster->GetSpellModOwner()) - modOwner->ApplySpellMod(GetId(), mod, radius,NULL); + modOwner->ApplySpellMod(GetId(), SPELLMOD_RANGE, radius,NULL); if(!caster->IsWithinDistInMap(m_target,radius)) { diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index f2ae30ffee6..764328480b7 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -11487,6 +11487,7 @@ bool InitTriggerAuraData() isTriggerAura[SPELL_AURA_MOD_DAMAGE_DONE] = true; isTriggerAura[SPELL_AURA_MOD_DAMAGE_TAKEN] = true; isTriggerAura[SPELL_AURA_MOD_RESISTANCE] = true; + isTriggerAura[SPELL_AURA_MOD_STEALTH] = true; // Aura not have charges but need remove him on trigger isTriggerAura[SPELL_AURA_MOD_ROOT] = true; isTriggerAura[SPELL_AURA_REFLECT_SPELLS] = true; isTriggerAura[SPELL_AURA_DAMAGE_IMMUNITY] = true; -- cgit v1.2.3