diff options
| author | QAston <none@none> | 2010-08-26 19:07:55 +0200 |
|---|---|---|
| committer | QAston <none@none> | 2010-08-26 19:07:55 +0200 |
| commit | 30d31ca40a8d524d01d6472dff2fb96b53d92507 (patch) | |
| tree | e245bb6e61f67ec91c2766618e41bb7cbefc31d4 /src/server/game/Spells/SpellMgr.cpp | |
| parent | 3c027962ba861076932792c0714d3dbbb37c9c14 (diff) | |
*Fix usage of EffectValueMultiplier in spell code.
*Remove some obsolete code from spell class.
*Rename some spellmod and dbc column names to be more accurate.
--HG--
branch : trunk
Diffstat (limited to 'src/server/game/Spells/SpellMgr.cpp')
| -rw-r--r-- | src/server/game/Spells/SpellMgr.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index c45af051af5..01cb2d6d243 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -1896,6 +1896,26 @@ int32 SpellMgr::CalculateSpellEffectBaseAmount(int32 value, SpellEntry const * s return value - 1; } +float SpellMgr::CalculateSpellEffectValueMultiplier(SpellEntry const * spellEntry, uint8 effIndex, Unit * caster, Spell const * spell) +{ + float multiplier = spellEntry->EffectValueMultiplier[effIndex]; + + if (caster) + if (Player * modOwner = caster->GetSpellModOwner()) + modOwner->ApplySpellMod(spellEntry->Id, SPELLMOD_VALUE_MULTIPLIER, multiplier); + return multiplier; +} + +float SpellMgr::CalculateSpellEffectDamageMultiplier(SpellEntry const * spellEntry, uint8 effIndex, Unit * caster, Spell const * spell) +{ + float multiplier = spellEntry->EffectDamageMultiplier[effIndex]; + + if (caster) + if (Player * modOwner = caster->GetSpellModOwner()) + modOwner->ApplySpellMod(spellEntry->Id, SPELLMOD_DAMAGE_MULTIPLIER, multiplier); + return multiplier; +} + SpellEntry const* SpellMgr::SelectAuraRankForPlayerLevel(SpellEntry const* spellInfo, uint32 playerLevel) const { // ignore passive spells |
