public ServerMsgStart(byte[] buffer, int offset) { MsgSerializer.ValidateHeader(buffer, MsgId, ref offset); Seed = MsgSerializer.ReadInt32(buffer, ref offset); Players = MsgSerializer.ReadStringArray(buffer, ref offset); YourIndex = MsgSerializer.ReadByte(buffer, ref offset); TicksPerSecond = MsgSerializer.ReadByte(buffer, ref offset); }
public void ShouldSerializeAndDeserializeStringArray(string item, int count) { var value = Enumerable.Repeat(item, count).ToArray(); var buf = new byte[MsgSerializer.SizeOf(value)]; MsgSerializer.WriteStringArray(value, buf, 0); var offset = 0; var deserialized = MsgSerializer.ReadStringArray(buf, ref offset); Assert.True(value.Length == deserialized.Length, "Length mismatch"); for (var i = 0; i < value.Length; i++) { Assert.True(value[i] == deserialized[i], $"Values mismatch at {i}"); } }