diff options
Diffstat (limited to 'Minecraft.Client/Xbox')
| -rw-r--r-- | Minecraft.Client/Xbox/Network/NetworkPlayerXbox.cpp | 23 | ||||
| -rw-r--r-- | Minecraft.Client/Xbox/Network/NetworkPlayerXbox.h | 6 |
2 files changed, 27 insertions, 2 deletions
diff --git a/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.cpp b/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.cpp index 37e24f7a..386a0206 100644 --- a/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.cpp +++ b/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.cpp @@ -12,7 +12,7 @@ unsigned char NetworkPlayerXbox::GetSmallId() return m_qnetPlayer->GetSmallId(); } -void NetworkPlayerXbox::SendData(INetworkPlayer *player, const void *pvData, int dataSize, bool lowPriority) +void NetworkPlayerXbox::SendData(INetworkPlayer *player, const void *pvData, int dataSize, bool lowPriority, bool ack) { DWORD flags; flags = QNET_SENDDATA_RELIABLE | QNET_SENDDATA_SEQUENTIAL; @@ -20,6 +20,11 @@ void NetworkPlayerXbox::SendData(INetworkPlayer *player, const void *pvData, int m_qnetPlayer->SendData(((NetworkPlayerXbox *)player)->m_qnetPlayer, pvData, dataSize, flags); } +int NetworkPlayerXbox::GetOutstandingAckCount() +{ + return 0; +} + bool NetworkPlayerXbox::IsSameSystem(INetworkPlayer *player) { return ( m_qnetPlayer->IsSameSystem(((NetworkPlayerXbox *)player)->m_qnetPlayer) == TRUE ); @@ -119,3 +124,19 @@ IQNetPlayer *NetworkPlayerXbox::GetQNetPlayer() return m_qnetPlayer; } +void NetworkPlayerXbox::SentChunkPacket() +{ + m_lastChunkPacketTime = System::currentTimeMillis(); +} + +int NetworkPlayerXbox::GetTimeSinceLastChunkPacket_ms() +{ + // If we haven't ever sent a packet, return maximum + if( m_lastChunkPacketTime == 0 ) + { + return INT_MAX; + } + + __int64 currentTime = System::currentTimeMillis(); + return (int)( currentTime - m_lastChunkPacketTime ); +}
\ No newline at end of file diff --git a/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.h b/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.h index 1822717c..bec7a125 100644 --- a/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.h +++ b/Minecraft.Client/Xbox/Network/NetworkPlayerXbox.h @@ -11,8 +11,9 @@ public: // Common player interface NetworkPlayerXbox(IQNetPlayer *qnetPlayer); virtual unsigned char GetSmallId(); - virtual void SendData(INetworkPlayer *player, const void *pvData, int dataSize, bool lowPriority); + virtual void SendData(INetworkPlayer *player, const void *pvData, int dataSize, bool lowPriority, bool ack); virtual bool IsSameSystem(INetworkPlayer *player); + virtual int GetOutstandingAckCount(); virtual int GetSendQueueSizeBytes( INetworkPlayer *player, bool lowPriority ); virtual int GetSendQueueSizeMessages( INetworkPlayer *player, bool lowPriority ); virtual int GetCurrentRtt(); @@ -30,10 +31,13 @@ public: virtual const wchar_t *GetOnlineName(); virtual std::wstring GetDisplayName(); virtual PlayerUID GetUID(); + virtual void SentChunkPacket(); + virtual int GetTimeSinceLastChunkPacket_ms(); // Extra xbox-specific things IQNetPlayer *GetQNetPlayer(); private: IQNetPlayer *m_qnetPlayer; Socket *m_pSocket; + __int64 m_lastChunkPacketTime; };
\ No newline at end of file |
