[6969] Prevent stacking presence auras.

This commit is contained in:
VladimirMangos 2008-12-29 04:37:14 +03:00
parent 784cf098b0
commit 5793ae28ea
3 changed files with 11 additions and 4 deletions

View file

@ -182,9 +182,9 @@ SpellSpecific GetSpellSpecific(uint32 spellId)
if ((spellInfo->SpellFamilyFlags & 0x00000820180400LL) && (spellInfo->AttributesEx3 & 0x200))
return SPELL_JUDGEMENT;
for (int i = 0; i < 3; i++) // TODO: fix it for WotLK!!!
for (int i = 0; i < 3; i++)
{
// only paladin auras have this
// only paladin auras have this (for palaldin class family)
if (spellInfo->Effect[i] == SPELL_EFFECT_APPLY_AREA_AURA_RAID)
return SPELL_AURA;
}
@ -200,6 +200,11 @@ SpellSpecific GetSpellSpecific(uint32 spellId)
case SPELLFAMILY_POTION:
return spellmgr.GetSpellElixirSpecific(spellInfo->Id);
case SPELLFAMILY_DEATHKNIGHT:
if ((spellInfo->Attributes & 0x10) && (spellInfo->AttributesEx2 & 0x10) && (spellInfo->AttributesEx4 & 0x200000))
return SPELL_PRESENCE;
break;
}
// only warlock armor/skin have this (in additional to family cases)
@ -245,6 +250,7 @@ bool IsSingleFromSpellSpecificPerCaster(uint32 spellSpec1,uint32 spellSpec2)
case SPELL_MAGE_POLYMORPH:
case SPELL_POSITIVE_SHOUT:
case SPELL_JUDGEMENT:
case SPELL_PRESENCE:
return spellSpec1==spellSpec2;
case SPELL_BATTLE_ELIXIR:
return spellSpec2==SPELL_BATTLE_ELIXIR

View file

@ -273,7 +273,8 @@ enum SpellSpecific
SPELL_JUDGEMENT = 13,
SPELL_BATTLE_ELIXIR = 14,
SPELL_GUARDIAN_ELIXIR = 15,
SPELL_FLASK_ELIXIR = 16
SPELL_FLASK_ELIXIR = 16,
SPELL_PRESENCE = 17
};
SpellSpecific GetSpellSpecific(uint32 spellId);

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "6968"
#define REVISION_NR "6969"
#endif // __REVISION_NR_H__