aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellMgr.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2008-12-23 20:19:40 -0600
committermegamage <none@none>2008-12-23 20:19:40 -0600
commitc81299e6536e249ca05eebf100f3f350522da7da (patch)
tree4329c771076612bc55e52febfb5f323a2f21007e /src/game/SpellMgr.cpp
parentafc598bde2dff64a17a4b82f6e3b87d83a9a28da (diff)
*Fix the bug that proc AOE buff does not work.
--HG-- branch : trunk
Diffstat (limited to 'src/game/SpellMgr.cpp')
-rw-r--r--src/game/SpellMgr.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 88fe7cdb4d8..432682d618e 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -80,6 +80,7 @@ SpellMgr::SpellMgr()
case TARGET_UNIT_CASTER_FISHING:
case TARGET_UNIT_MASTER:
case TARGET_UNIT_PET:
+ case TARGET_UNIT_PARTY_CASTER:
SpellTargetType[i] = TARGET_TYPE_UNIT_CASTER;
break;
case TARGET_UNIT_MINIPET:
@@ -102,6 +103,8 @@ SpellMgr::SpellMgr()
case TARGET_UNIT_AREA_ALLY:
case TARGET_UNIT_AREA_ENTRY_GROUND:
case TARGET_UNIT_AREA_ENTRY:
+ case TARGET_UNIT_AREA_PARTY_GROUND:
+ case TARGET_UNIT_AREA_PARTY:
case TARGET_UNIT_AREA_ENEMY_CHANNEL:
SpellTargetType[i] = TARGET_TYPE_AREA_DEST;
break;
@@ -2001,11 +2004,14 @@ void SpellMgr::LoadSpellCustomAttr()
bool auraSpell = true;
for(uint32 j = 0; j < 3; ++j)
{
- if(spellInfo->Effect[j] && spellInfo->Effect[j] != SPELL_EFFECT_APPLY_AURA)
- {
- auraSpell = false;
- break;
- }
+ if(spellInfo->Effect[j])
+ if(spellInfo->Effect[j] != SPELL_EFFECT_APPLY_AURA
+ || SpellTargetType[spellInfo->EffectImplicitTargetA[j]] != TARGET_TYPE_UNIT_TARGET)
+ //ignore target party for now
+ {
+ auraSpell = false;
+ break;
+ }
}
if(auraSpell)
mSpellCustomAttr[i] |= SPELL_ATTR_CU_AURA_SPELL;