Fixed spellpower coef for Lifebloom final heal

--HG--
branch : trunk
This commit is contained in:
Shauren
2010-07-28 12:57:00 +02:00
parent 0137a8c193
commit 045bf5163b
4 changed files with 19 additions and 15 deletions
+1 -1
View File
@@ -5005,7 +5005,7 @@ INSERT INTO `spell_bonus_data` (`entry`,`direct_bonus`,`dot_bonus`,`ap_bonus`,`a
(42231, 0.12898, -1, -1, -1, 'Druid - Hurricane Triggered'), (42231, 0.12898, -1, -1, -1, 'Druid - Hurricane Triggered'),
(5570, -1, 0.2, -1, -1, 'Druid - Insect Swarm'), (5570, -1, 0.2, -1, -1, 'Druid - Insect Swarm'),
(33745, -1, -1, -1, 0.01, 'Druid - Lacerate($AP*0.05 / number of ticks)'), (33745, -1, -1, -1, 0.01, 'Druid - Lacerate($AP*0.05 / number of ticks)'),
(33778, 0.516, 0, 0, 0, 'Druid - Lifebloom final heal'), (33778, 0.589714, 0, 0, 0, 'Druid - Lifebloom final heal'),
(33763, 0, 0.09518, 0, 0, 'Druid - Lifebloom HoT(rank 1)'), (33763, 0, 0.09518, 0, 0, 'Druid - Lifebloom HoT(rank 1)'),
(48450, 0, 0.09518, 0, 0, 'Druid - Lifebloom HoT(rank 2)'), (48450, 0, 0.09518, 0, 0, 'Druid - Lifebloom HoT(rank 2)'),
(48451, 0, 0.09518, 0, 0, 'Druid - Lifebloom HoT(rank 3)'), (48451, 0, 0.09518, 0, 0, 'Druid - Lifebloom HoT(rank 3)'),
@@ -0,0 +1,3 @@
DELETE FROM `spell_bonus_data` WHERE `entry`=33778;
INSERT INTO `spell_bonus_data` (`entry`,`direct_bonus`,`dot_bonus`,`ap_bonus`,`ap_dot_bonus`,`comments`) VALUES
(33778,0.589714,0,0,0, 'Druid - Lifebloom final heal');
@@ -5725,24 +5725,22 @@ void AuraEffect::HandleAuraDummy(AuraApplication const * aurApp, uint8 mode, boo
case SPELLFAMILY_DRUID: case SPELLFAMILY_DRUID:
// Lifebloom // Lifebloom
if (GetSpellProto()->SpellFamilyFlags[1] & 0x10) if (GetSpellProto()->SpellFamilyFlags[1] & 0x10)
{
if (!apply)
{ {
// Final heal only on dispelled or duration end // Final heal only on dispelled or duration end
if (aurApp->GetRemoveMode() != AURA_REMOVE_BY_EXPIRE && aurApp->GetRemoveMode() != AURA_REMOVE_BY_ENEMY_SPELL) if (aurApp->GetRemoveMode() != AURA_REMOVE_BY_EXPIRE && aurApp->GetRemoveMode() != AURA_REMOVE_BY_ENEMY_SPELL)
return; return;
// final heal // final heal
target->CastCustomSpell(target,33778,&m_amount,NULL,NULL,true,NULL,this,GetCasterGUID()); uint32 stack = GetBase()->GetStackAmount();
target->CastCustomSpell(target, 33778, &m_amount, &stack, NULL, true, NULL, this, GetCasterGUID());
// restore mana // restore mana
if (caster) if (caster)
{ {
int32 returnmana = (GetSpellProto()->ManaCostPercentage * caster->GetCreateMana() / 100) * GetBase()->GetStackAmount() / 2; int32 returnmana = (GetSpellProto()->ManaCostPercentage * caster->GetCreateMana() / 100) * stack / 2;
caster->CastCustomSpell(caster, 64372, &returnmana, NULL, NULL, true, NULL, this, GetCasterGUID()); caster->CastCustomSpell(caster, 64372, &returnmana, NULL, NULL, true, NULL, this, GetCasterGUID());
} }
} }
}
break; break;
case SPELLFAMILY_PRIEST: case SPELLFAMILY_PRIEST:
// Vampiric Touch // Vampiric Touch
+3
View File
@@ -2776,6 +2776,9 @@ void Spell::SpellDamageHeal(uint32 /*i*/)
} }
} }
} }
// Lifebloom - final heal coef multiplied by original DoT stack
else if (m_spellInfo->Id == 33778)
addhealth = caster->SpellHealingBonus(unitTarget, m_spellInfo, addhealth, HEAL, m_spellValue->EffectBasePoints[1]);
// Riptide - increase healing done by Chain Heal // Riptide - increase healing done by Chain Heal
else if (m_spellInfo->SpellFamilyName == SPELLFAMILY_SHAMAN && m_spellInfo->SpellFamilyFlags[0] & 0x100) else if (m_spellInfo->SpellFamilyName == SPELLFAMILY_SHAMAN && m_spellInfo->SpellFamilyFlags[0] & 0x100)
{ {