/// <summary>
        /// Handle the server time syncronization request
        /// </summary>
        /// <param name="pBuffer">Packet Data buffer</param>
        private void HandleSynchronizeRequest(Byte[] pBuffer)
        {
            // Parse the sync request packet
            SyncRequestPacket syncRequest = new SyncRequestPacket();

            syncRequest.Packet = pBuffer;

            // Create the sync response packet
            SyncResponsePacket syncResponse = new SyncResponsePacket();

            syncResponse.ServerTime = syncRequest.TimeStamp;

            // Send the packet to the server
            TransmitPacket(syncResponse);
        }
Exemple #2
0
        /// <summary>
        /// Compose and send a synchronize packet to the server
        /// </summary>
        private void SendSynchronizeRequest()
        {
            // Create the sync request packet
            SyncRequestPacket packet = new SyncRequestPacket();

            // Set the sync packet data values
            packet.TimeStamp       = (UInt32)(Environment.TickCount / 10);
            packet.PacketsSent     = m_sessionSocket.PacketsSent;
            packet.PacketsReceived = m_sessionSocket.PacketsReceived;

            // Set the server sync timeout to request again
            m_serverSyncTime = TimeSpan.FromMilliseconds(Environment.TickCount)
                               + TimeSpan.FromSeconds(m_sessionSettings.ServerSyncTime);

            // Send the sync packet
            TransmitPacket(packet);
        }