aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellMgr.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2009-05-01 18:37:32 -0500
committermegamage <none@none>2009-05-01 18:37:32 -0500
commitdb817d668aab117b3abddcc617610f9a38f66798 (patch)
treeebf4b73d3f2ce7aca6bc1289b4d98eb4065aed42 /src/game/SpellMgr.cpp
parente1b8fff590c6aca21297ecc638b29b59c4507cfe (diff)
parentc9cd3b07f9e69030a86bcd9f06055f4247732d1d (diff)
*Merge.
--HG-- branch : trunk
Diffstat (limited to 'src/game/SpellMgr.cpp')
-rw-r--r--src/game/SpellMgr.cpp28
1 files changed, 21 insertions, 7 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index a22441614af..e3dfaf50477 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -2309,13 +2309,12 @@ void SpellMgr::LoadSpellCustomAttr()
case SPELL_AURA_OBS_MOD_HEALTH:
mSpellCustomAttr[i] |= SPELL_ATTR_CU_AURA_HOT;
break;
- case SPELL_AURA_MOD_POSSESS:
- case SPELL_AURA_MOD_CONFUSE:
- case SPELL_AURA_MOD_CHARM:
- case SPELL_AURA_MOD_FEAR:
- case SPELL_AURA_MOD_STUN:
case SPELL_AURA_MOD_ROOT:
mSpellCustomAttr[i] |= SPELL_ATTR_CU_AURA_CC;
+ mSpellCustomAttr[i] |= SPELL_ATTR_CU_MOVEMENT_IMPAIR;
+ break;
+ case SPELL_AURA_MOD_DECREASE_SPEED:
+ mSpellCustomAttr[i] |= SPELL_ATTR_CU_MOVEMENT_IMPAIR;
break;
default:
break;
@@ -2343,16 +2342,31 @@ void SpellMgr::LoadSpellCustomAttr()
spellInfo->Effect[j] = SPELL_EFFECT_TRIGGER_MISSILE;
break;
}
-
+
switch(SpellTargetType[spellInfo->EffectImplicitTargetA[j]])
{
case TARGET_TYPE_UNIT_TARGET:
case TARGET_TYPE_DEST_TARGET:
spellInfo->Targets |= TARGET_FLAG_UNIT;
break;
- }
+ }
}
+ for(uint32 j = 0; j < 3; ++j)
+ {
+ switch(spellInfo->EffectApplyAuraName[j])
+ {
+ case SPELL_AURA_MOD_POSSESS:
+ case SPELL_AURA_MOD_CONFUSE:
+ case SPELL_AURA_MOD_CHARM:
+ case SPELL_AURA_MOD_FEAR:
+ case SPELL_AURA_MOD_STUN:
+ mSpellCustomAttr[i] |= SPELL_ATTR_CU_AURA_CC;
+ mSpellCustomAttr[i] &= ~SPELL_ATTR_CU_MOVEMENT_IMPAIR;
+ break;
+ }
+ }
+
if(spellInfo->SpellVisual[0] == 3879)
mSpellCustomAttr[i] |= SPELL_ATTR_CU_CONE_BACK;