aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellEffects.cpp
diff options
context:
space:
mode:
authorQAston <none@none>2009-03-19 21:47:16 +0100
committerQAston <none@none>2009-03-19 21:47:16 +0100
commitc6f3532ada2f7796e3a71cf12d318fdddcd07941 (patch)
tree30ceb3215a43565a92d02b67c604cae18e616f98 /src/game/SpellEffects.cpp
parenta2392121f0a8fed9f19ddadfa2880ed6f4691381 (diff)
*Fix Area auras for target without a party.
*Fix Improved soul leech and correct procflags for soul leech. --HG-- branch : trunk
Diffstat (limited to 'src/game/SpellEffects.cpp')
-rw-r--r--src/game/SpellEffects.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index eca088eba05..5176bca920f 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -5099,6 +5099,22 @@ void Spell::EffectScriptEffect(uint32 effIndex)
DoCreateItem( effIndex, itemtype );
return;
}
+ // Everlasting Affliction
+ case 47422:
+ // Refresh corruption on target
+ Unit::AuraMap& auras = unitTarget->GetAuras();
+ for(Unit::AuraMap::iterator itr = auras.begin(); itr != auras.end(); ++itr)
+ {
+ SpellEntry const *spellInfo = (*itr).second->GetSpellProto();
+ if( spellInfo->SpellFamilyName == SPELLFAMILY_WARLOCK &&
+ spellInfo->SpellFamilyFlags[0] & 0x2 &&
+ (*itr).second->GetCasterGUID() == m_caster->GetGUID())
+ {
+ unitTarget->RefreshAurasByCasterSpell(spellInfo->Id, m_caster->GetGUID());
+ return;
+ }
+ }
+ break;
}
break;
}
@@ -5120,7 +5136,7 @@ void Spell::EffectScriptEffect(uint32 effIndex)
spellInfo->SpellFamilyFlags[0] & 0x8000 &&
(*itr).second->GetCasterGUID() == m_caster->GetGUID())
{
- (*itr).second->RefreshAura();
+ unitTarget->RefreshAurasByCasterSpell((*itr).second->GetId(), m_caster->GetGUID());
return;
}
}