*Fix per-caster aura state based on [8218] (Author: VladimirMangos;almost nothing left from original patch):

*Fixes all per caster aurastates instead of only conflagrate
*Adds a holder for aura state auras for speedup search
*Save some memory space by removing m_auraStateMask from aura class.

--HG--
branch : trunk
This commit is contained in:
QAston
2009-07-30 17:16:56 +02:00
parent 2095daca85
commit 13758fcae1
8 changed files with 150 additions and 87 deletions
-3
View File
@@ -84,8 +84,6 @@ class TRINITY_DLL_SPEC Aura
int8 GetStackAmount() const {return m_stackAmount;}
void SetStackAmount(uint8 num, bool applied = true);
bool modStackAmount(int32 num); // return true if last charge dropped
uint32 GetAuraStateMask(){return m_auraStateMask;}
void SetAuraState(uint8 num){m_auraStateMask |= 1<<(num-1);} //modifies auras' aura state (not unit!)
void SetRemoveMode(AuraRemoveMode mode) { m_removeMode = mode; }
uint8 GetRemoveMode() const {return m_removeMode;}
@@ -154,7 +152,6 @@ class TRINITY_DLL_SPEC Aura
uint8 m_auraLevel; // Aura level (store caster level for correct show level dep amount)
uint8 m_procCharges; // Aura charges (0 for infinite)
uint8 m_stackAmount; // Aura stack amount
uint32 m_auraStateMask;
AuraEffect * m_partAuras[3];
uint32 m_procDamage; // used in aura proc code