mirror of
https://github.com/mangosfour/server.git
synced 2025-12-14 16:37:01 +00:00
Removed Unit::waterbreath. This information is not needed for creatures and can be obtained for players by Unit::HasAuraType(SPELL_AURA_WATER_BREATHING) in constant time
This commit is contained in:
parent
c7a5537bac
commit
022e7ad2b5
4 changed files with 2 additions and 8 deletions
|
|
@ -872,7 +872,7 @@ void Player::HandleDrowning()
|
||||||
return;
|
return;
|
||||||
|
|
||||||
//if player is GM, have waterbreath, is dead or if breathing is disabled then return
|
//if player is GM, have waterbreath, is dead or if breathing is disabled then return
|
||||||
if(waterbreath || isGameMaster() || !isAlive() || GetSession()->GetSecurity() >= sWorld.getConfig(CONFIG_DISABLE_BREATHING))
|
if(HasAuraType(SPELL_AURA_WATER_BREATHING) || isGameMaster() || !isAlive() || GetSession()->GetSecurity() >= sWorld.getConfig(CONFIG_DISABLE_BREATHING))
|
||||||
{
|
{
|
||||||
StopMirrorTimer(BREATH_TIMER);
|
StopMirrorTimer(BREATH_TIMER);
|
||||||
m_isunderwater = 0;
|
m_isunderwater = 0;
|
||||||
|
|
|
||||||
|
|
@ -2499,12 +2499,8 @@ void Aura::HandleAuraHover(bool apply, bool Real)
|
||||||
|
|
||||||
void Aura::HandleWaterBreathing(bool apply, bool Real)
|
void Aura::HandleWaterBreathing(bool apply, bool Real)
|
||||||
{
|
{
|
||||||
if(apply)
|
if(!apply && m_target->GetAurasByType(SPELL_AURA_WATER_BREATHING).empty())
|
||||||
m_target->waterbreath = true;
|
|
||||||
else if(m_target->GetAurasByType(SPELL_AURA_WATER_BREATHING).empty())
|
|
||||||
{
|
{
|
||||||
m_target->waterbreath = false;
|
|
||||||
|
|
||||||
// update for enable timer in case not moving target
|
// update for enable timer in case not moving target
|
||||||
if(m_target->GetTypeId()==TYPEID_PLAYER && m_target->IsInWorld())
|
if(m_target->GetTypeId()==TYPEID_PLAYER && m_target->IsInWorld())
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,6 @@ Unit::Unit()
|
||||||
//m_AurasCheck = 2000;
|
//m_AurasCheck = 2000;
|
||||||
//m_removeAuraTimer = 4;
|
//m_removeAuraTimer = 4;
|
||||||
//tmpAura = NULL;
|
//tmpAura = NULL;
|
||||||
waterbreath = false;
|
|
||||||
|
|
||||||
m_Visibility = VISIBILITY_ON;
|
m_Visibility = VISIBILITY_ON;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1208,7 +1208,6 @@ class MANGOS_DLL_SPEC Unit : public WorldObject
|
||||||
// function for low level grid visibility checks in player/creature cases
|
// function for low level grid visibility checks in player/creature cases
|
||||||
virtual bool IsVisibleInGridForPlayer(Player* pl) const = 0;
|
virtual bool IsVisibleInGridForPlayer(Player* pl) const = 0;
|
||||||
|
|
||||||
bool waterbreath;
|
|
||||||
AuraList & GetSingleCastAuras() { return m_scAuras; }
|
AuraList & GetSingleCastAuras() { return m_scAuras; }
|
||||||
AuraList const& GetSingleCastAuras() const { return m_scAuras; }
|
AuraList const& GetSingleCastAuras() const { return m_scAuras; }
|
||||||
SpellImmuneList m_spellImmune[MAX_SPELL_IMMUNITY];
|
SpellImmuneList m_spellImmune[MAX_SPELL_IMMUNITY];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue