aboutsummaryrefslogtreecommitdiff
path: root/src/game/SpellMgr.cpp
diff options
context:
space:
mode:
authorBlaymoira <none@none>2009-03-14 19:35:04 +0100
committerBlaymoira <none@none>2009-03-14 19:35:04 +0100
commit04a42413bf9662c4e9c6cfdf6916e05325d090c7 (patch)
tree7689deba162f051770b979d48e2f6279697129f7 /src/game/SpellMgr.cpp
parentef71840b7ecb62a15ebc74954f26b20f290f8cc7 (diff)
parent8cce1ff1ecf795ebe8c620a9469e3b9d7290241a (diff)
*Merge
--HG-- branch : trunk
Diffstat (limited to 'src/game/SpellMgr.cpp')
-rw-r--r--src/game/SpellMgr.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 4a7ab708c3d..a976ca04a68 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -378,7 +378,7 @@ SpellSpecific GetSpellSpecific(uint32 spellId)
return SPELL_STING;
// only hunter aspects have this
- if( spellInfo->SpellFamilyFlags[1] & 0x00440000 || spellInfo->SpellFamilyFlags[0] & 0x00380000 || spellInfo->SpellFamilyFlags[2] & 0x00003010)
+ if( spellInfo->SpellFamilyFlags[1] & 0x00440000 || spellInfo->SpellFamilyFlags[0] & 0x00380000 || spellInfo->SpellFamilyFlags[2] & 0x00001010)
return SPELL_ASPECT;
if( spellInfo->SpellFamilyFlags[2] & 0x00000002 )
@@ -521,7 +521,6 @@ bool IsPositiveEffect(uint32 spellId, uint32 effIndex, bool deep)
switch(spellId)
{
case 23333: case 23335: case 34976: // BG spell
- case 30482: case 43045: case 43046: // Molten armor expection need find the real bug
return true;
case 28441: // not positive dummy spell
case 37675: // Chaos Blast
@@ -702,7 +701,10 @@ bool IsPositiveEffect(uint32 spellId, uint32 effIndex, bool deep)
if(spellproto->AttributesEx & SPELL_ATTR_EX_NEGATIVE)
return false;
- if (!deep && spellproto->EffectTriggerSpell[effIndex] && !IsPositiveSpell(spellproto->EffectTriggerSpell[effIndex], true))
+ if (!deep && spellproto->EffectTriggerSpell[effIndex]
+ && !spellproto->procFlags
+ && IsPositiveTarget(spellproto->EffectImplicitTargetA[effIndex],spellproto->EffectImplicitTargetB[effIndex])
+ && !IsPositiveSpell(spellproto->EffectTriggerSpell[effIndex], true))
return false;
// ok, positive