*Fix the bug that areaaura loses one point value.

--HG--
branch : trunk
This commit is contained in:
megamage
2008-12-30 23:04:39 -06:00
parent 9d7d3eb733
commit a2a4d05c78
+8 -4
View File
@@ -645,11 +645,15 @@ void AreaAura::Update(uint32 diff)
if(SpellEntry const *actualSpellInfo = spellmgr.SelectAuraRankForPlayerLevel(GetSpellProto(), (*tIter)->getLevel()))
{
int32 actualBasePoints = m_currentBasePoints;
//int32 actualBasePoints = m_currentBasePoints;
// recalculate basepoints for lower rank (all AreaAura spell not use custom basepoints?)
if(actualSpellInfo != GetSpellProto())
actualBasePoints = actualSpellInfo->EffectBasePoints[m_effIndex];
AreaAura *aur = new AreaAura(actualSpellInfo, m_effIndex, &actualBasePoints, (*tIter), caster, NULL);
//if(actualSpellInfo != GetSpellProto())
// actualBasePoints = actualSpellInfo->EffectBasePoints[m_effIndex];
AreaAura *aur;
if(actualSpellInfo == GetSpellProto())
aur = new AreaAura(actualSpellInfo, m_effIndex, &damage, (*tIter), caster, NULL);
else
aur = new AreaAura(actualSpellInfo, m_effIndex, NULL, (*tIter), caster, NULL);
(*tIter)->AddAura(aur);
}
}