From 4cebaa99f88e25e039416354cf490fe98642af7e Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Thu, 1 Nov 2012 21:38:20 +0000 Subject: Refactored the world time. Now it is stored in two values - WorldAge (only incremented, plugins cannot change) and TimeOfDay (plugins can change). Since sub-tick precision is needed in Tick(), we store it both as number of seconds (double) and number of ticks (Int64) is calculated off of that. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1022 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/Player.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'source/Player.cpp') diff --git a/source/Player.cpp b/source/Player.cpp index 708eca9f4..cf9e4be99 100644 --- a/source/Player.cpp +++ b/source/Player.cpp @@ -79,8 +79,8 @@ cPlayer::cPlayer(cClientHandle* a_Client, const AString & a_PlayerName) cTimer t1; m_LastPlayerListTime = t1.GetNowTime(); - m_TimeLastTeleportPacket = cWorld::GetTime(); - m_TimeLastPickupCheck = cWorld::GetTime(); + m_TimeLastTeleportPacket = 0; + m_TimeLastPickupCheck = 0; m_PlayerName = a_PlayerName; m_bDirtyPosition = true; // So chunks are streamed to player at spawn @@ -189,12 +189,12 @@ void cPlayer::Tick(float a_Dt) float SqrDist = DiffX * DiffX + DiffY * DiffY + DiffZ * DiffZ; if ( (SqrDist > 4 * 4) || // 4 blocks is max Relative Move - (cWorld::GetTime() - m_TimeLastTeleportPacket > 2 ) // Send an absolute position every 2 seconds + (m_World->GetWorldAge() - m_TimeLastTeleportPacket > 40) // Send an absolute position every 2 seconds ) { // LOG("Teleported %f", sqrtf(SqrDist) ); m_World->BroadcastTeleportEntity(*this, m_ClientHandle); - m_TimeLastTeleportPacket = cWorld::GetTime(); + m_TimeLastTeleportPacket = m_World->GetWorldAge(); } else { @@ -474,7 +474,7 @@ void cPlayer::SetLastBlockActionTime() { if (m_World != NULL) { - m_LastBlockActionTime = m_World->GetTime(); + m_LastBlockActionTime = m_World->GetWorldAge() / 20.0f; } } -- cgit v1.2.3