Пример #1
0
        public void Unpack(UdpStream buffer, UdpSocket socket)
        {
            buffer.Position = 0;

            ObjSequence = TrimSequence(buffer.ReadUShort(SEQ_BITS + SEQ_PADD));
            AckSequence = TrimSequence(buffer.ReadUShort(SEQ_BITS + SEQ_PADD));
            AckHistory = buffer.ReadULong(UdpSocket.AckRedundancy);

            if (UdpSocket.CalculateNetworkPing) {
                AckTime = buffer.ReadUShort(NETPING_BITS);
            }
        }
Пример #2
0
        public void Unpack(UdpStream buffer, UdpSocket socket)
        {
            buffer.Position = 0;

            ObjSequence = TrimSequence(buffer.ReadUShort(16));
            AckSequence = TrimSequence(buffer.ReadUShort(16));
            AckHistory  = buffer.ReadULong(UdpSocket.AckRedundancy);

            if (UdpSocket.CalculateNetworkPing)
            {
                AckTime = buffer.ReadUShort(16);
            }
        }
Пример #3
0
        void UnpackAckSequence(UdpStream buffer)
        {
            ushort sequence = buffer.ReadUShort(SEQ_BITS + SEQ_PADD);
            bool   recvNow  = 1 == (sequence & 1);

            if (recvNow)
            {
                int pos = buffer.Position;
                buffer.Position = buffer.Length - 32;
                Now             = buffer.ReadUInt();
                buffer.Position = pos;
            }
            sequence  >>= SEQ_PADD;
            AckSequence = sequence;
        }
Пример #4
0
 void UnpackAckSequence(UdpStream buffer)
 {
     ushort sequence = buffer.ReadUShort(SEQ_BITS + SEQ_PADD);
     bool recvNow = 1 == (sequence & 1);
     if (recvNow)
     {
         int pos = buffer.Position;
         buffer.Position = buffer.Length - 32;
         Now = buffer.ReadUInt ();
         buffer.Position = pos;
     }
     sequence >>= SEQ_PADD;
     AckSequence = sequence;
 }