public static LoginReply FromReader(BinaryReader reader, PacketSerializationMode serializationMode = PacketSerializationMode.Full) { var loginReply = new LoginReply(int.MaxValue); loginReply.ReadFrom(reader, serializationMode); return(loginReply); }
public static Announcement FromReader(BinaryReader reader, PacketSerializationMode serializationMode = PacketSerializationMode.Full) { var announcement = new Announcement(); announcement.ReadFrom(reader, serializationMode); return(announcement); }
public override void ReadFrom(BinaryReader reader, PacketSerializationMode serializationMode = PacketSerializationMode.Full) { ReadInternal(reader, Id, serializationMode); using var dataStream = new MemoryStream(reader.ReadBytes(reader.ReadInt32())); using var dataReader = new BinaryReader(dataStream); Reply = dataReader.ReadInt32(); }
protected static void ReadInternal(BinaryReader reader, PacketId id, PacketSerializationMode serializationMode = PacketSerializationMode.Full) { if ((serializationMode & PacketSerializationMode.ReadId) > 0) { var packetId = reader.ReadInt16(); Debug.Assert(packetId == (short)id); } if ((serializationMode & PacketSerializationMode.ReadCompression) > 0) { reader.ReadByte(); } }
public abstract void ReadFrom(BinaryReader reader, PacketSerializationMode serializationMode = PacketSerializationMode.Full);