Lidgren.Network.NetBuffer.ReadVariableUInt32 C# (CSharp) Méthode

ReadVariableUInt32() private méthode

private ReadVariableUInt32 ( uint &result ) : bool
result uint
Résultat bool
        public bool ReadVariableUInt32(out uint result)
        {
            int num1 = 0;
            int num2 = 0;
            while (m_bitLength - m_readPosition >= 8)
            {
                byte num3;
                if (ReadByte(out num3) == false)
                {
                    result = 0;
                    return false;
                }
                num1 |= (num3 & 0x7f) << num2;
                num2 += 7;
                if ((num3 & 0x80) == 0)
                {
                    result = (uint)num1;
                    return true;
                }
            }
            result = (uint)num1;
            return false;
        }

Same methods

NetBuffer::ReadVariableUInt32 ( ) : uint

Usage Example

		/// <summary>
		/// Read this message from the packet buffer
		/// </summary>
		/// <returns>new read pointer position</returns>
		internal void ReadFrom(NetBuffer buffer, IPEndPoint endpoint)
		{
			m_senderEndPoint = endpoint;

			// read header
			byte header = buffer.ReadByte();
			m_type = (NetMessageLibraryType)(header & 7);
			m_sequenceChannel = (NetChannel)(header >> 3);
			m_sequenceNumber = buffer.ReadUInt16();

			int payLen = (int)buffer.ReadVariableUInt32();

			// copy payload into message buffer
			m_data.EnsureBufferSize(payLen * 8);
			buffer.ReadBytes(m_data.Data, 0, payLen);
			m_data.Reset(0, payLen * 8);

			return;
		}
All Usage Examples Of Lidgren.Network.NetBuffer::ReadVariableUInt32