*Fix positivity checks for some triggering spells.

--HG--
branch : trunk
This commit is contained in:
QAston
2009-03-14 13:34:05 +01:00
parent 648a8d505f
commit 4a0bb67f83

View File

@@ -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