コード例 #1
0
ファイル: CustomPacket.cs プロジェクト: pdm1996/Fragsurf-2
        public void Read(NetBuffer buffer)
        {
            DataEntries.Clear();

            Label = buffer.ReadString();
            byte entryCount = buffer.ReadByte();

            for (int i = 0; i < entryCount; i++)
            {
                var entry = new DataEntry();
                entry.Type = (DataType)buffer.ReadByte();
                switch (entry.Type)
                {
                case DataType.Bool:
                    entry.BoolValue = buffer.ReadBoolean();
                    break;

                case DataType.Int:
                    entry.IntValue = buffer.ReadInt32();
                    break;

                case DataType.Float:
                    entry.FloatValue = buffer.ReadSingle();
                    break;

                case DataType.Byte:
                    entry.ByteValue = buffer.ReadByte();
                    break;

                case DataType.String:
                    entry.StringValue = buffer.ReadString();
                    break;

                case DataType.Vector3:
                    entry.Vector3Value = buffer.ReadVector3();
                    break;

                case DataType.Bytes:
                    var byteCount = buffer.ReadInt32();
                    entry.BytesValue = buffer.ReadBytes(byteCount);
                    break;
                }

                DataEntries.Add(entry);
            }
        }
コード例 #2
0
ファイル: CustomPacket.cs プロジェクト: pdm1996/Fragsurf-2
 public void Reset()
 {
     DataEntries.Clear();
     Label = string.Empty;
 }