예제 #1
0
파일: Client.cs 프로젝트: sheor69/GW2SE
        public void SendPacket(IPacketOut Packet)
        {
            var message = Packet.Handle();

            if (!Packet.Initialize())
            {
                Console.WriteLine("Error in packet " + Packet.GetType().Name + " [" + message.Header + "]");
                return;
            }

            Socket.Send(message.PacketData.ToArray());
        }
        public void SendPacket(IPacketOut packetTemplate)
        {
            MemoryStream stream = new MemoryStream();
            PacketWriter writer = new PacketWriter(stream);

            packetTemplate.Serialize(writer);

            byte[] uncompressed = stream.ToArray();
            byte[] compressed   = compressor.Compress(uncompressed);

            Packet packet = Packet.Create();

            packet.Writer.Write((short)compressed.Length);
            packet.Writer.Write((short)uncompressed.Length);
            packet.Writer.Write(compressed);
            Send(packet.Data);
        }
예제 #3
0
파일: Client.cs 프로젝트: soullem/GW2SE
        public void SendPacket(IPacketOut Packet)
        {
            var message = Packet.Handle();

            if (!Packet.Initialize())
            {
                Console.WriteLine("Error in packet " + Packet.GetType().Name + " [" + message.Header + "]");
                return;
            }

            Socket.Send(message.PacketData.ToArray());
        }