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); } }
public void Reset() { DataEntries.Clear(); Label = string.Empty; }