Fixed Divine Hymn, Hymn of Hope, Dispersion and Amplify Magic being erroneously displayed as debuffs, instead of buffs. Based on previous thenecromancer's implementation.

--HG--
branch : trunk
This commit is contained in:
Xanadu
2010-06-23 03:45:44 +02:00
parent 71d47b384f
commit 05976b7708
+25 -3
View File
@@ -750,17 +750,39 @@ bool SpellMgr::_isPositiveEffect(uint32 spellId, uint32 effIndex, bool deep) con
if (spellproto->Attributes & SPELL_ATTR_NEGATIVE_1)
return false;
switch (spellproto->SpellFamilyName)
{
case SPELLFAMILY_GENERIC:
switch (spellId)
{
//case 37675: // Chaos Blast removed from mangos
case 34700: // Allergic Reaction
case 61987: // Avenging Wrath Marker
case 61988: // Divine Shield exclude aura
case 50524: // Runic Power Feed
return false;
case 12042: // Arcane Power
case 30877: // Tag Murloc
return true;
default:
break;
}
break;
case SPELLFAMILY_MAGE:
// Amplify Magic, Dampen Magic
if (spellproto->SpellFamilyFlags[0] == 0x00002000)
return true;
break;
case SPELLFAMILY_PRIEST:
switch (spellId)
{
case 64844: // Divine Hymn
case 64904: // Hymn of Hope
case 47585: // Dispersion
return true;
default:
break;
}
break;
default:
break;
}
switch (spellproto->Mechanic)