mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 22:37:03 +00:00
[7523] Fixed: players will now drop flag in battleground if they cast immunity buff on themselves.
TODO: players who carry flag in bg are imune to immunity buffs casted by friendly players. (todo added to code). Bug: if paladin casts Hand of protection on flag carrier - flag will be dropped, but he should get "target is immune" message. Fixed: Do not call Battleground::Update for battleground template objects. Fixed: Do not allow immune player to click on object in battleground (not sure if this is correct in all cases). Signed-off-by: Triply <triply@getmangos.com>
This commit is contained in:
parent
3d6c7e59a7
commit
0f6b2ab9ae
10 changed files with 91 additions and 103 deletions
|
|
@ -1176,7 +1176,7 @@ void BattleGroundMgr::Update(uint32 diff)
|
||||||
// skip updating battleground template
|
// skip updating battleground template
|
||||||
if( itr != m_BattleGrounds[i].end() )
|
if( itr != m_BattleGrounds[i].end() )
|
||||||
++itr;
|
++itr;
|
||||||
for(itr = m_BattleGrounds[i].begin(); itr != m_BattleGrounds[i].end(); itr = next)
|
for(; itr != m_BattleGrounds[i].end(); itr = next)
|
||||||
{
|
{
|
||||||
next = itr;
|
next = itr;
|
||||||
++next;
|
++next;
|
||||||
|
|
|
||||||
|
|
@ -18794,6 +18794,7 @@ void Player::SummonIfPossible(bool agree)
|
||||||
}
|
}
|
||||||
|
|
||||||
// drop flag at summon
|
// drop flag at summon
|
||||||
|
// this code can be reached only when GM is summoning player who carries flag, because player should be immune to summoning spells when he carries flag
|
||||||
if(BattleGround *bg = GetBattleGround())
|
if(BattleGround *bg = GetBattleGround())
|
||||||
bg->EventPlayerDroppedFlag(this);
|
bg->EventPlayerDroppedFlag(this);
|
||||||
|
|
||||||
|
|
@ -19440,6 +19441,7 @@ bool Player::CanUseBattleGroundObject()
|
||||||
return ( //InBattleGround() && // in battleground - not need, check in other cases
|
return ( //InBattleGround() && // in battleground - not need, check in other cases
|
||||||
//!IsMounted() && - not correct, player is dismounted when he clicks on flag
|
//!IsMounted() && - not correct, player is dismounted when he clicks on flag
|
||||||
//i'm not sure if these two are correct, because invisible players should get visible when they click on flag
|
//i'm not sure if these two are correct, because invisible players should get visible when they click on flag
|
||||||
|
!isTotalImmune() && // not totally immune
|
||||||
!HasStealthAura() && // not stealthed
|
!HasStealthAura() && // not stealthed
|
||||||
!HasInvisibilityAura() && // not invisible
|
!HasInvisibilityAura() && // not invisible
|
||||||
!HasAura(SPELL_RECENTLY_DROPPED_FLAG, 0) && // can't pickup
|
!HasAura(SPELL_RECENTLY_DROPPED_FLAG, 0) && // can't pickup
|
||||||
|
|
@ -19607,6 +19609,20 @@ void Player::ExitVehicle(Vehicle *vehicle)
|
||||||
CastSpell(this, 45472, true); // Parachute
|
CastSpell(this, 45472, true); // Parachute
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Player::isTotalImmune()
|
||||||
|
{
|
||||||
|
AuraList const& immune = GetAurasByType(SPELL_AURA_SCHOOL_IMMUNITY);
|
||||||
|
|
||||||
|
uint32 immuneMask = 0;
|
||||||
|
for(AuraList::const_iterator itr = immune.begin(); itr != immune.end(); ++itr)
|
||||||
|
{
|
||||||
|
immuneMask |= (*itr)->GetModifier()->m_miscvalue;
|
||||||
|
if( immuneMask & SPELL_SCHOOL_MASK_ALL ) // total immunity
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
bool Player::HasTitle(uint32 bitIndex)
|
bool Player::HasTitle(uint32 bitIndex)
|
||||||
{
|
{
|
||||||
if (bitIndex > 128)
|
if (bitIndex > 128)
|
||||||
|
|
|
||||||
|
|
@ -1912,6 +1912,7 @@ class MANGOS_DLL_SPEC Player : public Unit
|
||||||
|
|
||||||
bool GetBGAccessByLevel(BattleGroundTypeId bgTypeId) const;
|
bool GetBGAccessByLevel(BattleGroundTypeId bgTypeId) const;
|
||||||
bool CanUseBattleGroundObject();
|
bool CanUseBattleGroundObject();
|
||||||
|
bool isTotalImmune();
|
||||||
bool CanCaptureTowerPoint();
|
bool CanCaptureTowerPoint();
|
||||||
|
|
||||||
/*********************************************************/
|
/*********************************************************/
|
||||||
|
|
|
||||||
|
|
@ -296,7 +296,7 @@ enum ItemQualities
|
||||||
#define SPELL_ATTR_EX2_UNK18 0x00040000 // 18 Only Revive pet - possible req dead pet
|
#define SPELL_ATTR_EX2_UNK18 0x00040000 // 18 Only Revive pet - possible req dead pet
|
||||||
#define SPELL_ATTR_EX2_NOT_NEED_SHAPESHIFT 0x00080000 // 19 does not necessarly need shapeshift
|
#define SPELL_ATTR_EX2_NOT_NEED_SHAPESHIFT 0x00080000 // 19 does not necessarly need shapeshift
|
||||||
#define SPELL_ATTR_EX2_UNK20 0x00100000 // 20
|
#define SPELL_ATTR_EX2_UNK20 0x00100000 // 20
|
||||||
#define SPELL_ATTR_EX2_UNK21 0x00200000 // 21
|
#define SPELL_ATTR_EX2_DAMAGE_REDUCED_SHIELD 0x00200000 // 21 for ice blocks, pala immunity buffs, priest absorb shields, but used also for other spells -> not sure!
|
||||||
#define SPELL_ATTR_EX2_UNK22 0x00400000 // 22
|
#define SPELL_ATTR_EX2_UNK22 0x00400000 // 22
|
||||||
#define SPELL_ATTR_EX2_UNK23 0x00800000 // 23 Only mage Arcane Concentration have this flag
|
#define SPELL_ATTR_EX2_UNK23 0x00800000 // 23 Only mage Arcane Concentration have this flag
|
||||||
#define SPELL_ATTR_EX2_UNK24 0x01000000 // 24
|
#define SPELL_ATTR_EX2_UNK24 0x01000000 // 24
|
||||||
|
|
|
||||||
|
|
@ -3306,6 +3306,7 @@ void Aura::HandleFeignDeath(bool apply, bool Real)
|
||||||
|
|
||||||
m_target->addUnitState(UNIT_STAT_DIED);
|
m_target->addUnitState(UNIT_STAT_DIED);
|
||||||
m_target->CombatStop();
|
m_target->CombatStop();
|
||||||
|
m_target->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION);
|
||||||
|
|
||||||
// prevent interrupt message
|
// prevent interrupt message
|
||||||
if(m_caster_guid==m_target->GetGUID() && m_target->m_currentSpells[CURRENT_GENERIC_SPELL])
|
if(m_caster_guid==m_target->GetGUID() && m_target->m_currentSpells[CURRENT_GENERIC_SPELL])
|
||||||
|
|
@ -3488,9 +3489,7 @@ void Aura::HandleModStealth(bool apply, bool Real)
|
||||||
if(apply)
|
if(apply)
|
||||||
{
|
{
|
||||||
// drop flag at stealth in bg
|
// drop flag at stealth in bg
|
||||||
if(Real && m_target->GetTypeId()==TYPEID_PLAYER && ((Player*)m_target)->InBattleGround())
|
m_target->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION);
|
||||||
if(BattleGround *bg = ((Player*)m_target)->GetBattleGround())
|
|
||||||
bg->EventPlayerDroppedFlag((Player*)m_target);
|
|
||||||
|
|
||||||
// only at real aura add
|
// only at real aura add
|
||||||
if(Real)
|
if(Real)
|
||||||
|
|
@ -3555,15 +3554,13 @@ void Aura::HandleInvisibility(bool apply, bool Real)
|
||||||
{
|
{
|
||||||
m_target->m_invisibilityMask |= (1 << m_modifier.m_miscvalue);
|
m_target->m_invisibilityMask |= (1 << m_modifier.m_miscvalue);
|
||||||
|
|
||||||
|
m_target->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION);
|
||||||
|
|
||||||
if(Real && m_target->GetTypeId()==TYPEID_PLAYER)
|
if(Real && m_target->GetTypeId()==TYPEID_PLAYER)
|
||||||
{
|
{
|
||||||
// apply glow vision
|
// apply glow vision
|
||||||
m_target->SetFlag(PLAYER_FIELD_BYTES2,PLAYER_FIELD_BYTE2_INVISIBILITY_GLOW);
|
m_target->SetFlag(PLAYER_FIELD_BYTES2,PLAYER_FIELD_BYTE2_INVISIBILITY_GLOW);
|
||||||
|
|
||||||
// drop flag at invisible in bg
|
|
||||||
if(((Player*)m_target)->InBattleGround())
|
|
||||||
if(BattleGround *bg = ((Player*)m_target)->GetBattleGround())
|
|
||||||
bg->EventPlayerDroppedFlag((Player*)m_target);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// apply only if not in GM invisibility and not stealth
|
// apply only if not in GM invisibility and not stealth
|
||||||
|
|
@ -4010,44 +4007,15 @@ void Aura::HandleModMechanicImmunity(bool apply, bool Real)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//this method is called whenever we add / remove aura which gives m_target some imunity to some spell effect
|
||||||
void Aura::HandleAuraModEffectImmunity(bool apply, bool Real)
|
void Aura::HandleAuraModEffectImmunity(bool apply, bool Real)
|
||||||
{
|
{
|
||||||
if(!apply)
|
// when removing flag aura, handle flag drop
|
||||||
|
if( !apply && m_target->GetTypeId() == TYPEID_PLAYER
|
||||||
|
&& (GetSpellProto()->AuraInterruptFlags & AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION) )
|
||||||
{
|
{
|
||||||
if(m_target->GetTypeId() == TYPEID_PLAYER)
|
if( BattleGround *bg = ((Player*)m_target)->GetBattleGround() )
|
||||||
{
|
|
||||||
if(((Player*)m_target)->InBattleGround())
|
|
||||||
{
|
|
||||||
BattleGround *bg = ((Player*)m_target)->GetBattleGround();
|
|
||||||
if(bg)
|
|
||||||
{
|
|
||||||
switch(bg->GetTypeID())
|
|
||||||
{
|
|
||||||
case BATTLEGROUND_AV:
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case BATTLEGROUND_WS:
|
|
||||||
{
|
|
||||||
// Warsong Flag, horde // Silverwing Flag, alliance
|
|
||||||
if(GetId() == 23333 || GetId() == 23335)
|
|
||||||
bg->EventPlayerDroppedFlag(((Player*)m_target));
|
bg->EventPlayerDroppedFlag(((Player*)m_target));
|
||||||
break;
|
|
||||||
}
|
|
||||||
case BATTLEGROUND_AB:
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case BATTLEGROUND_EY:
|
|
||||||
{
|
|
||||||
if(GetId() == 34976)
|
|
||||||
bg->EventPlayerDroppedFlag(((Player*)m_target));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_target->ApplySpellImmune(GetId(),IMMUNITY_EFFECT,m_modifier.m_miscvalue,apply);
|
m_target->ApplySpellImmune(GetId(),IMMUNITY_EFFECT,m_modifier.m_miscvalue,apply);
|
||||||
|
|
@ -4077,9 +4045,15 @@ void Aura::HandleAuraModSchoolImmunity(bool apply, bool Real)
|
||||||
{
|
{
|
||||||
m_target->ApplySpellImmune(GetId(),IMMUNITY_SCHOOL,m_modifier.m_miscvalue,apply);
|
m_target->ApplySpellImmune(GetId(),IMMUNITY_SCHOOL,m_modifier.m_miscvalue,apply);
|
||||||
|
|
||||||
if(Real && apply && GetSpellProto()->AttributesEx & SPELL_ATTR_EX_DISPEL_AURAS_ON_IMMUNITY)
|
// remove all flag auras (they are positive, but they must be removed when you are immune)
|
||||||
{
|
if( this->GetSpellProto()->AttributesEx & SPELL_ATTR_EX_DISPEL_AURAS_ON_IMMUNITY
|
||||||
if(IsPositiveSpell(GetId())) //Only positive immunity removes auras
|
&& this->GetSpellProto()->AttributesEx2 & SPELL_ATTR_EX2_DAMAGE_REDUCED_SHIELD )
|
||||||
|
m_target->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION);
|
||||||
|
|
||||||
|
// TODO: optimalize this cycle - use RemoveAurasWithInterruptFlags call or something else
|
||||||
|
if( Real && apply
|
||||||
|
&& GetSpellProto()->AttributesEx & SPELL_ATTR_EX_DISPEL_AURAS_ON_IMMUNITY
|
||||||
|
&& IsPositiveSpell(GetId()) ) //Only positive immunity removes auras
|
||||||
{
|
{
|
||||||
uint32 school_mask = m_modifier.m_miscvalue;
|
uint32 school_mask = m_modifier.m_miscvalue;
|
||||||
Unit::AuraMap& Auras = m_target->GetAuras();
|
Unit::AuraMap& Auras = m_target->GetAuras();
|
||||||
|
|
@ -4101,7 +4075,6 @@ void Aura::HandleAuraModSchoolImmunity(bool apply, bool Real)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if( Real && GetSpellProto()->Mechanic == MECHANIC_BANISH )
|
if( Real && GetSpellProto()->Mechanic == MECHANIC_BANISH )
|
||||||
{
|
{
|
||||||
if( apply )
|
if( apply )
|
||||||
|
|
@ -5559,8 +5532,10 @@ void Aura::HandleAuraRetainComboPoints(bool apply, bool Real)
|
||||||
void Aura::HandleModUnattackable( bool Apply, bool Real )
|
void Aura::HandleModUnattackable( bool Apply, bool Real )
|
||||||
{
|
{
|
||||||
if(Real && Apply)
|
if(Real && Apply)
|
||||||
|
{
|
||||||
m_target->CombatStop();
|
m_target->CombatStop();
|
||||||
|
m_target->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION);
|
||||||
|
}
|
||||||
m_target->ApplyModFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE,Apply);
|
m_target->ApplyModFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE,Apply);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2369,6 +2369,8 @@ void Spell::EffectPowerDrain(uint32 i)
|
||||||
|
|
||||||
void Spell::EffectSendEvent(uint32 EffectIndex)
|
void Spell::EffectSendEvent(uint32 EffectIndex)
|
||||||
{
|
{
|
||||||
|
/* we do not drop a flag by sendevent system, OBSOLETE CODE:
|
||||||
|
this code caused crashes
|
||||||
if (m_caster->GetTypeId() == TYPEID_PLAYER && ((Player*)m_caster)->InBattleGround())
|
if (m_caster->GetTypeId() == TYPEID_PLAYER && ((Player*)m_caster)->InBattleGround())
|
||||||
{
|
{
|
||||||
BattleGround* bg = ((Player *)m_caster)->GetBattleGround();
|
BattleGround* bg = ((Player *)m_caster)->GetBattleGround();
|
||||||
|
|
@ -2377,25 +2379,22 @@ void Spell::EffectSendEvent(uint32 EffectIndex)
|
||||||
switch(m_spellInfo->Id)
|
switch(m_spellInfo->Id)
|
||||||
{
|
{
|
||||||
case 23333: // Pickup Horde Flag
|
case 23333: // Pickup Horde Flag
|
||||||
/*do not uncomment .
|
/*do not uncomment
|
||||||
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
||||||
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
||||||
sLog.outDebug("Send Event Horde Flag Picked Up");
|
sLog.outDebug("Send Event Horde Flag Picked Up");
|
||||||
break;
|
break;
|
||||||
/* not used :
|
|
||||||
case 23334: // Drop Horde Flag
|
case 23334: // Drop Horde Flag
|
||||||
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
||||||
bg->EventPlayerDroppedFlag((Player*)m_caster);
|
bg->EventPlayerDroppedFlag((Player*)m_caster);
|
||||||
sLog.outDebug("Drop Horde Flag");
|
sLog.outDebug("Drop Horde Flag");
|
||||||
break;
|
break;
|
||||||
*/
|
|
||||||
case 23335: // Pickup Alliance Flag
|
case 23335: // Pickup Alliance Flag
|
||||||
/*do not uncomment ... (it will cause crash, because of null targetobject!) anyway this is a bad way to call that event, because it would cause recursion
|
/*do not uncomment - it will cause crash, because of null targetobject!
|
||||||
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
||||||
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
||||||
sLog.outDebug("Send Event Alliance Flag Picked Up");
|
sLog.outDebug("Send Event Alliance Flag Picked Up");
|
||||||
break;
|
break;
|
||||||
/* not used :
|
|
||||||
case 23336: // Drop Alliance Flag
|
case 23336: // Drop Alliance Flag
|
||||||
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
||||||
bg->EventPlayerDroppedFlag((Player*)m_caster);
|
bg->EventPlayerDroppedFlag((Player*)m_caster);
|
||||||
|
|
@ -2410,19 +2409,17 @@ void Spell::EffectSendEvent(uint32 EffectIndex)
|
||||||
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
if(bg->GetTypeID()==BATTLEGROUND_WS)
|
||||||
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
||||||
sLog.outDebug("Horde Flag Returned");
|
sLog.outDebug("Horde Flag Returned");
|
||||||
break;*/
|
break;
|
||||||
case 34976:
|
case 34976:
|
||||||
/*
|
|
||||||
if(bg->GetTypeID()==BATTLEGROUND_EY)
|
if(bg->GetTypeID()==BATTLEGROUND_EY)
|
||||||
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
bg->EventPlayerClickedOnFlag((Player*)m_caster, gameObjTarget);
|
||||||
*/
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
sLog.outDebug("Unknown spellid %u in BG event", m_spellInfo->Id);
|
sLog.outDebug("Unknown spellid %u in BG event", m_spellInfo->Id);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
sLog.outDebug("Spell ScriptStart %u for spellid %u in EffectSendEvent ", m_spellInfo->EffectMiscValue[EffectIndex], m_spellInfo->Id);
|
sLog.outDebug("Spell ScriptStart %u for spellid %u in EffectSendEvent ", m_spellInfo->EffectMiscValue[EffectIndex], m_spellInfo->Id);
|
||||||
sWorld.ScriptsStart(sEventScripts, m_spellInfo->EffectMiscValue[EffectIndex], m_caster, focusObject);
|
sWorld.ScriptsStart(sEventScripts, m_spellInfo->EffectMiscValue[EffectIndex], m_caster, focusObject);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -298,10 +298,6 @@ bool IsPositiveEffect(uint32 spellId, uint32 effIndex)
|
||||||
|
|
||||||
switch(spellId)
|
switch(spellId)
|
||||||
{
|
{
|
||||||
case 23333: // BG spell
|
|
||||||
case 23335: // BG spell
|
|
||||||
case 34976: // BG spell
|
|
||||||
return true;
|
|
||||||
case 28441: // not positive dummy spell
|
case 28441: // not positive dummy spell
|
||||||
case 37675: // Chaos Blast
|
case 37675: // Chaos Blast
|
||||||
return false;
|
return false;
|
||||||
|
|
|
||||||
|
|
@ -8245,6 +8245,9 @@ bool Unit::IsImmunedToSpell(SpellEntry const* spellInfo)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//TODO add spellEffect immunity checks!, player with flag in bg is imune to imunity buffs from other friendly players!
|
||||||
|
//SpellImmuneList const& dispelList = m_spellImmune[IMMUNITY_EFFECT];
|
||||||
|
|
||||||
SpellImmuneList const& dispelList = m_spellImmune[IMMUNITY_DISPEL];
|
SpellImmuneList const& dispelList = m_spellImmune[IMMUNITY_DISPEL];
|
||||||
for(SpellImmuneList::const_iterator itr = dispelList.begin(); itr != dispelList.end(); ++itr)
|
for(SpellImmuneList::const_iterator itr = dispelList.begin(); itr != dispelList.end(); ++itr)
|
||||||
if(itr->type == spellInfo->Dispel)
|
if(itr->type == spellInfo->Dispel)
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@ enum SpellAuraInterruptFlags
|
||||||
AURA_INTERRUPT_FLAG_MOUNTING = 0x00020000, // 17 removed by mounting
|
AURA_INTERRUPT_FLAG_MOUNTING = 0x00020000, // 17 removed by mounting
|
||||||
AURA_INTERRUPT_FLAG_NOT_SEATED = 0x00040000, // 18 removed by standing up
|
AURA_INTERRUPT_FLAG_NOT_SEATED = 0x00040000, // 18 removed by standing up
|
||||||
AURA_INTERRUPT_FLAG_CHANGE_MAP = 0x00080000, // 19 leaving map/getting teleported
|
AURA_INTERRUPT_FLAG_CHANGE_MAP = 0x00080000, // 19 leaving map/getting teleported
|
||||||
AURA_INTERRUPT_FLAG_IMMUNE_OR_STEALTH = 0x00100000, // 20 removed when player on himself casts immunity spell or vanish?
|
AURA_INTERRUPT_FLAG_IMMUNE_OR_LOST_SELECTION = 0x00100000, // 20 removed by auras that make you invulnerable, or make other to loose selection on you
|
||||||
AURA_INTERRUPT_FLAG_UNK21 = 0x00200000, // 21
|
AURA_INTERRUPT_FLAG_UNK21 = 0x00200000, // 21
|
||||||
AURA_INTERRUPT_FLAG_UNK22 = 0x00400000, // 22
|
AURA_INTERRUPT_FLAG_UNK22 = 0x00400000, // 22
|
||||||
AURA_INTERRUPT_FLAG_ENTER_PVP_COMBAT = 0x00800000, // 23 removed by entering pvp combat
|
AURA_INTERRUPT_FLAG_ENTER_PVP_COMBAT = 0x00800000, // 23 removed by entering pvp combat
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "7522"
|
#define REVISION_NR "7523"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue