aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRat <gmstreetrat@gmail.com>2014-11-17 20:46:13 +0100
committerRat <gmstreetrat@gmail.com>2014-11-17 20:46:13 +0100
commit8518232970ae0190124c39cf122579f983d97f6b (patch)
tree2764b42d3e1ca0be27453247f8d84e0b4d4fe57d
parente9f9719af2bce7f3bcbe9b7e449a50f03b3e0513 (diff)
Core/Spells: reverted/changed AuraEffect constructor
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp9
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.h2
2 files changed, 4 insertions, 7 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 10221f61c71..fd66f12875e 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -431,17 +431,14 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleNULL, //370 SPELL_AURA_SET_FAIR_FAR_CLIP
};
-AuraEffect::AuraEffect(Aura* base, uint32 effIndex, int32 baseAmount, Unit* caster) :
+AuraEffect::AuraEffect(Aura* base, uint32 effIndex, int32 *baseAmount, Unit* caster) :
m_base(base), m_spellInfo(base->GetSpellInfo()),
-m_baseAmount(baseAmount),
+_effectInfo(base->GetSpellEffectInfo(effIndex)),
+m_baseAmount(baseAmount ? *baseAmount : base->GetSpellEffectInfo(effIndex)->BasePoints),
m_damage(0), m_critChance(0.0f), m_donePct(1.0f),
m_spellmod(NULL), m_periodicTimer(0), m_tickNumber(0), m_effIndex(effIndex),
m_canBeRecalculated(true), m_isPeriodic(false)
{
- _effectInfo = base->GetSpellEffectInfo(effIndex);
-
- ASSERT(_effectInfo);
-
CalculatePeriodic(caster, true, false);
m_amount = CalculateAmount(caster);
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.h b/src/server/game/Spells/Auras/SpellAuraEffects.h
index 2c2b0e2646f..3e48fef140a 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.h
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.h
@@ -35,7 +35,7 @@ class AuraEffect
public:
~AuraEffect();
- AuraEffect(Aura* base, uint32 effIndex, int32 baseAmount, Unit* caster);
+ AuraEffect(Aura* base, uint32 effIndex, int32 *baseAmount, Unit* caster);
Unit* GetCaster() const { return GetBase()->GetCaster(); }
ObjectGuid GetCasterGUID() const { return GetBase()->GetCasterGUID(); }
Aura* GetBase() const { return m_base; }