From 9c411e4f8cf38a40fae479f3f9815b661345d081 Mon Sep 17 00:00:00 2001 From: megamage Date: Sun, 7 Dec 2008 12:01:56 -0600 Subject: [PATCH] *Fix final heal of lifebloom. --HG-- branch : trunk --- src/game/SpellAuras.cpp | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index c053cfd30e..742accf567 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -2103,26 +2103,14 @@ void Aura::HandleAuraDummy(bool apply, bool Real) if(m_target->GetTypeId()!=TYPEID_PLAYER || !((Player*)m_target)->GetSession()->PlayerLoading()) m_modifier.m_amount = caster->SpellHealingBonus(GetSpellProto(), m_modifier.m_amount, SPELL_DIRECT_DAMAGE, m_target); } - // Do final heal for real apply + // Do final heal for real !apply else if (Real) { - - // Final heal only on dispelled or duration end or 1 stack - if (!(GetAuraDuration() <= 0 || (m_removeMode==AURA_REMOVE_BY_DISPEL))) - { - // have a look if there is still some other Lifebloom dummy aura - Unit::AuraList auras = m_target->GetAurasByType(SPELL_AURA_DUMMY); - for(Unit::AuraList::iterator itr = auras.begin(); itr!=auras.end(); itr++) - if((*itr)->GetSpellProto()->SpellFamilyName == SPELLFAMILY_DRUID && - (*itr)->GetSpellProto()->SpellFamilyFlags & 0x1000000000LL) - if((*itr)->GetCasterGUID() == GetCasterGUID()) - return; - } - else - { - // final heal - m_target->CastCustomSpell(m_target,33778,&m_modifier.m_amount,NULL,NULL,true,NULL,this,GetCasterGUID()); - } + if (GetAuraDuration() <= 0 || m_removeMode==AURA_REMOVE_BY_DISPEL) + { + int32 bp0 = GetModifierValue(); + m_target->CastCustomSpell(m_target,33778,&bp0,NULL,NULL,true,NULL,this,GetCasterGUID()); + } } return; }