[8232] Implement talent 48438 and ranks in target seelction and per-tick heal amount.

Original patch has been suggested by Beaste.
This commit is contained in:
VladimirMangos 2009-07-23 00:13:23 +04:00
parent 0cf083eb55
commit 6c395cf79c
4 changed files with 48 additions and 27 deletions

View file

@ -6067,8 +6067,18 @@ void Aura::PeriodicTick()
if(m_modifier.m_auraname==SPELL_AURA_OBS_MOD_HEALTH)
pdamage = uint32(m_target->GetMaxHealth() * amount / 100);
else
{
pdamage = amount;
// Wild Growth (1/7 - 6 + 2*ramainTicks) %
if (m_spellProto->SpellFamilyName == SPELLFAMILY_DRUID && m_spellProto->SpellIconID == 2864)
{
int32 ticks = m_maxduration/m_modifier.periodictime;
int32 remainingTicks = int32(float(m_duration) / m_modifier.periodictime + 0.5);
pdamage = int32(pdamage) + int32(amount)*ticks*(-6+2*remainingTicks)/100;
}
}
pdamage = pCaster->SpellHealingBonus(m_target, GetSpellProto(), pdamage, DOT, GetStackAmount());
// This method can modify pdamage