aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/MovementHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2013-10-07 14:30:37 +0200
committerShauren <shauren.trinity@gmail.com>2013-10-07 14:30:37 +0200
commitfca4a5448ac476b942c330108a76032ae242711e (patch)
tree81fe500a02353fa5079532fe53c21a4f3a269b82 /src/server/game/Handlers/MovementHandler.cpp
parent1b56bd1b6a860c325f3e4e76d94dc367429fbb16 (diff)
parentc8f525c76e162b5b546c91628a1457f9aef43699 (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Diffstat (limited to 'src/server/game/Handlers/MovementHandler.cpp')
-rw-r--r--src/server/game/Handlers/MovementHandler.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp
index cad1ef77daa..540107148fa 100644
--- a/src/server/game/Handlers/MovementHandler.cpp
+++ b/src/server/game/Handlers/MovementHandler.cpp
@@ -32,7 +32,9 @@
#include "ObjectMgr.h"
#include "MovementStructures.h"
-void WorldSession::HandleMoveWorldportAckOpcode(WorldPacket& /*recvPacket*/)
+#define MOVEMENT_PACKET_TIME_DELAY 0
+
+void WorldSession::HandleMoveWorldportAckOpcode(WorldPacket & /*recvData*/)
{
TC_LOG_DEBUG(LOG_FILTER_NETWORKIO, "WORLD: got MSG_MOVE_WORLDPORT_ACK.");
HandleMoveWorldportAckOpcode();
@@ -372,7 +374,14 @@ void WorldSession::HandleMovementOpcodes(WorldPacket& recvPacket)
plrMover->SetInWater(!plrMover->IsInWater() || plrMover->GetBaseMap()->IsUnderWater(movementInfo.pos.GetPositionX(), movementInfo.pos.GetPositionY(), movementInfo.pos.GetPositionZ()));
}
- movementInfo.time = getMSTime();
+ uint32 mstime = getMSTime();
+ /*----------------------*/
+ if(m_clientTimeDelay == 0)
+ m_clientTimeDelay = mstime - movementInfo.time;
+
+ /* process position-change */
+ movementInfo.time = movementInfo.time + m_clientTimeDelay + MOVEMENT_PACKET_TIME_DELAY;
+
movementInfo.guid = mover->GetGUID();
mover->m_movementInfo = movementInfo;