[7529] Hide some implementation details for fall damage calculation and breath timers. Author: VladimirMangos
--HG-- branch : trunk
This commit is contained in:
@@ -273,8 +273,7 @@ void WorldSession::HandleMovementOpcodes( WorldPacket & recv_data )
|
||||
}
|
||||
}
|
||||
|
||||
if (GetPlayer()->m_lastFallTime >= movementInfo.fallTime || GetPlayer()->m_lastFallZ <=movementInfo.z || recv_data.GetOpcode() == MSG_MOVE_FALL_LAND)
|
||||
GetPlayer()->SetFallInformation(movementInfo.fallTime, movementInfo.z);
|
||||
GetPlayer()->UpdateFallInformationIfNeed(movementInfo,MSG_MOVE_FALL_LAND);
|
||||
|
||||
if(GetPlayer()->isMovingOrTurning())
|
||||
GetPlayer()->RemoveSpellsCausingAura(SPELL_AURA_FEIGN_DEATH);
|
||||
|
||||
@@ -468,6 +468,9 @@ Player::Player (WorldSession *session): Unit(), m_achievementMgr(this)
|
||||
m_farsightVision = false;
|
||||
|
||||
m_runes = NULL;
|
||||
|
||||
m_lastFallTime = 0;
|
||||
m_lastFallZ = 0;
|
||||
}
|
||||
|
||||
Player::~Player ()
|
||||
@@ -20948,3 +20951,9 @@ void Player::UpdateKnownCurrencies(uint32 itemId, bool apply)
|
||||
RemoveFlag64(PLAYER_FIELD_KNOWN_CURRENCIES,(1LL << (ctEntry->BitIndex-1)));
|
||||
}
|
||||
}
|
||||
|
||||
void Player::UpdateFallInformationIfNeed( MovementInfo const& minfo,uint16 opcode )
|
||||
{
|
||||
if (m_lastFallTime >= minfo.fallTime || m_lastFallZ <=minfo.z || opcode == MSG_MOVE_FALL_LAND)
|
||||
SetFallInformation(minfo.fallTime, minfo.z);
|
||||
}
|
||||
|
||||
+9
-6
@@ -1958,8 +1958,7 @@ class TRINITY_DLL_SPEC Player : public Unit
|
||||
/*** VARIOUS SYSTEMS ***/
|
||||
/*********************************************************/
|
||||
MovementInfo m_movementInfo;
|
||||
uint32 m_lastFallTime;
|
||||
float m_lastFallZ;
|
||||
void UpdateFallInformationIfNeed(MovementInfo const& minfo,uint16 opcode);
|
||||
Unit *m_mover;
|
||||
WorldObject *m_seer;
|
||||
void SetFallInformation(uint32 time, float z)
|
||||
@@ -2210,10 +2209,6 @@ class TRINITY_DLL_SPEC Player : public Unit
|
||||
void StopMirrorTimer(MirrorTimerType Type);
|
||||
void HandleDrowning(uint32 time_diff);
|
||||
int32 getMaxTimer(MirrorTimerType timer);
|
||||
int32 m_MirrorTimer[MAX_TIMERS];
|
||||
uint8 m_MirrorTimerFlags;
|
||||
uint8 m_MirrorTimerFlagsLast;
|
||||
bool m_isInWater;
|
||||
|
||||
/*********************************************************/
|
||||
/*** HONOR SYSTEM ***/
|
||||
@@ -2379,6 +2374,14 @@ class TRINITY_DLL_SPEC Player : public Unit
|
||||
|
||||
void UpdateCharmedAI();
|
||||
UnitAI *i_AI;
|
||||
|
||||
uint32 m_lastFallTime;
|
||||
float m_lastFallZ;
|
||||
|
||||
int32 m_MirrorTimer[MAX_TIMERS];
|
||||
uint8 m_MirrorTimerFlags;
|
||||
uint8 m_MirrorTimerFlagsLast;
|
||||
bool m_isInWater;
|
||||
};
|
||||
|
||||
void AddItemsSetItem(Player*player,Item *item);
|
||||
|
||||
Reference in New Issue
Block a user