*Some cleanups in aura state code, fix bug with wrongly removed aurastates for some auras.

--HG--
branch : trunk
This commit is contained in:
QAston
2009-02-22 18:36:05 +01:00
parent 10159358fd
commit 588fe25b20
2 changed files with 36 additions and 92 deletions
+3
View File
@@ -279,6 +279,8 @@ class TRINITY_DLL_SPEC Aura
//int32 GetModifierValuePerStack() {return m_modifier.m_amount / m_stackAmount;}
void SetStackAmount(uint8 num);
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 aura's aura state (not unit!)
void RefreshAura();
bool IsPositive() { return m_positive; }
@@ -347,6 +349,7 @@ 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
uint8 m_auraStateMask;
bool m_positive:1;
bool m_permanent:1;