コード例 #1
0
        public SOEPacket(byte[] data)
        {
            // Begin reading of SOE packet
            PacketReader reader = new PacketReader(data);

            SOEOpcode = reader.ReadShort();

            // Setup SWG packet buffer and begin to read
            byte[]       swgPacketBuffer = DecryptData(reader.ReadByteArray(data.Length - 4));       // - 4 b/c of (header + footer)
            PacketReader swgReader       = new PacketReader(swgPacketBuffer);

            Sequence = swgReader.ReadShort();
            Multi    = swgReader.ReadShort();

            while (swgReader.CanSeek())
            {
                int length = swgReader.ReadByte();
                if (length == 0)
                {
                    break;
                }

                SWGPacket packet = PacketLookup.Find(swgReader.ReadByteArray(length));
                childPackets.Add(packet);
            }

            this.ToArray();
        }