void Spell::EffectEnergize(uint32 i) { if(!unitTarget) return; if(!unitTarget->isAlive()) return; if(m_spellInfo->EffectMiscValue[i] > 4) return; if(damage < 0) return; Powers power = Powers(m_spellInfo->EffectMiscValue[i]); if(unitTarget->GetMaxPower(power) == 0) return; // Consume Magic if(m_spellInfo->Id == 32676) { damage = 0; Unit::AuraMap& Auras = m_caster->GetAuras(); for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end(); ++iter) { if( iter->second->IsPositive() && iter->second->GetSpellProto()->Dispel == m_spellInfo->Dispel && iter->second->GetSpellProto()->SpellFamilyName == SPELLFAMILY_PRIEST) { m_caster->RemoveAura(iter); damage=(int32)((m_caster->getLevel()*0,5) + m_spellInfo->EffectBasePoints[i]); break; } } } //modify power unitTarget->ModifyPower(power,damage); m_caster->SendHealSpellOnPlayerPet(unitTarget, m_spellInfo->Id, damage, power); }