aboutsummaryrefslogtreecommitdiff
path: root/src/game/Spell.cpp
diff options
context:
space:
mode:
authorQAston <none@none>2009-04-20 16:48:35 +0200
committerQAston <none@none>2009-04-20 16:48:35 +0200
commitcc5414f9256ab2d27caa9f08bbb7b453a3155feb (patch)
tree89885b6db912b73641764e6bb1b4a2c51b9cfa51 /src/game/Spell.cpp
parent4ac0914d81ebad67b63e3b093117cc67cb717d81 (diff)
*Correct check range for totem area auras.
--HG-- branch : trunk
Diffstat (limited to 'src/game/Spell.cpp')
-rw-r--r--src/game/Spell.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 723dca962bd..5bc50b2b9d4 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -1147,7 +1147,7 @@ void Spell::DoSpellHitOnUnit(Unit *unit, const uint32 effectMask)
if (aura_effmask)
{
Unit * caster = m_originalCaster ? m_originalCaster : m_caster;
- Aura * Aur= new Aura(m_spellInfo, aura_effmask, &m_currentBasePoints[0], unit, caster , m_CastItem);
+ Aura * Aur= new Aura(m_spellInfo, aura_effmask, &m_currentBasePoints[0], unit, caster , m_CastItem, m_caster);
if (!Aur->IsAreaAura())
{
@@ -1514,12 +1514,13 @@ void Spell::SetTargetMap(uint32 i,uint32 cur,std::list<Unit*> &TagUnitMap)
unMaxTargets+=(*j)->GetAmount();
}
- if(Player* modOwner = m_caster->GetSpellModOwner())
- {
- modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_RADIUS, radius_f,this);
- modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_RADIUS, radius_h,this);
- modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_JUMP_TARGETS, EffectChainTarget, this);
- }
+ if(m_originalCaster)
+ if (Player* modOwner = m_caster->GetSpellModOwner())
+ {
+ modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_RADIUS, radius_f,this);
+ modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_RADIUS, radius_h,this);
+ modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_JUMP_TARGETS, EffectChainTarget, this);
+ }
if(EffectChainTarget > 1)
{