Esempio n. 1
0
        public static PayloadPacket ReadPayloadPacket(this PacketReader reader, ChannelID channelID, byte rawID)
        {
            var           id = (PayloadPacketID)rawID;
            PayloadPacket packet;

            if (!Enum.IsDefined(typeof(PayloadPacketID), id))
            {
                packet = new UnknownPayloadPacket(reader, channelID, id);
            }
            else
            {
                packet = _lookup[id](reader, channelID);
            }
            return(packet);
        }
Esempio n. 2
0
        public static PayloadPacket Create(PacketReader reader)
        {
            var           id = (PayloadPacketID)reader.ReadByte();
            PayloadPacket packet;

            if (!Enum.IsDefined(typeof(PayloadPacketID), id))
            {
                packet = UnknownPayloadPacket.CreateBody(reader, id);
            }
            else
            {
                packet = _lookup[id](reader);
            }
            packet.ExtraBytes = reader.ReadLeft();
            return(packet);
        }