예제 #1
0
 public override void Write(PacketOutput output)
 {
     output.Write(Time);
     output.Write(BulletId);
     output.Write(ObjectId);
     output.Write(TargetId);
 }
예제 #2
0
 public override void Write(PacketOutput output)
 {
     output.Write(Time);
     SlotObject.Write(output);
     ItemUsePos.Write(output);
     output.Write(UseType);
 }
예제 #3
0
        public void SendPacket(OutgoingPacket packet)
        {
            if (!_socket.Connected)
            {
                return;
            }
            MemoryStream ms = new MemoryStream();

            using (PacketOutput output = new PacketOutput(ms))
            {
                output.Write(0);
                output.Write(packet.GetPacketType().ToId());
                packet.Write(output);
            }
            byte[] buffer = ms.ToArray();
            _outgoingEncryption.Cipher(buffer, 5);
            int size = buffer.Length;

            byte[] a = BitConverter.GetBytes(IPAddress.NetworkToHostOrder(size));
            buffer[0] = a[0];
            buffer[1] = a[1];
            buffer[2] = a[2];
            buffer[3] = a[3];
            _socket?.Send(buffer);
        }
예제 #4
0
 public override void Write(PacketOutput output)
 {
     output.Write((short)Offer.Length);
     foreach (var slot in Offer)
     {
         output.Write(slot);
     }
 }
예제 #5
0
 public override void Write(PacketOutput output)
 {
     output.Write(Time);
     output.Write(BulletId);
     output.Write(ContainerType);
     StartingPos.Write(output);
     output.Write(Angle);
 }
예제 #6
0
 public override void Write(PacketOutput output)
 {
     output.Write(TickId);
     output.Write(Time);
     NewPosition.Write(output);
     output.Write((short)Records.Count);
     foreach (var record in Records)
     {
         record.Write(output);
     }
 }
예제 #7
0
 public override void Write(PacketOutput output)
 {
     output.Write((short)ClientOffer.Length);
     foreach (bool slot in ClientOffer)
     {
         output.Write(slot);
     }
     output.Write((short)PartnerOffer.Length);
     foreach (bool slot in PartnerOffer)
     {
         output.Write(slot);
     }
 }
예제 #8
0
 public override void Write(PacketOutput output)
 {
     output.Write(Time);
     Position.Write(output);
     SlotObject1.Write(output);
     SlotObject2.Write(output);
 }
예제 #9
0
        public override void Write(PacketOutput output)
        {
            output.WriteUTF(BuildVersion);
            output.Write(GameId);
            output.WriteUTF(Guid);
            Random random = new Random();

            output.Write(random.Next(1000000000));
            output.WriteUTF(Password);
            output.Write(random.Next(1000000000));
            output.WriteUTF(Secret);
            output.Write(KeyTime);
            output.Write((short)Key.Length);
            output.Write(Key);
            output.WriteUTF32(MapJSON);
            output.WriteUTF(EntryTag);
            output.WriteUTF(GameNet);
            output.WriteUTF(GameNetUserId);
            output.WriteUTF(PlayPlatform);
            output.WriteUTF(PlatformToken);
            output.WriteUTF(UserToken);
        }
예제 #10
0
 public override void Write(PacketOutput output)
 {
     output.WriteUTF(Name);
     output.Write(GuildRank);
 }
예제 #11
0
 public override void Write(PacketOutput output)
 {
     output.Write(CommandType);
     output.Write(InstanceId);
 }
예제 #12
0
 public void Write(PacketOutput output)
 {
     output.Write(Time);
     output.Write(X);
     output.Write(Y);
 }
예제 #13
0
 public override void Write(PacketOutput output)
 {
     output.Write(ObjectId);
     output.Write(Quantity);
 }
예제 #14
0
 public override void Write(PacketOutput output)
 {
     output.Write(AccountListId);
     output.Write(Add);
     output.Write(ObjectId);
 }
예제 #15
0
 public override void Write(PacketOutput output)
 {
     output.Write(ClassType);
     output.Write(SkinType);
 }
예제 #16
0
 public override void Write(PacketOutput output)
 {
     output.Write(Serial);
     output.Write(Time);
 }
예제 #17
0
 public override void Write(PacketOutput output)
 {
     output.Write(PetId);
     output.Write(SkinType);
     output.Write(Currency);
 }
예제 #18
0
 public void Write(PacketOutput output)
 {
     output.Write(ObjectId);
     output.Write(SlotId);
     output.Write(ObjectType);
 }
예제 #19
0
 public override void Write(PacketOutput output)
 {
     output.Write(CharId);
     output.Write(IsFromArena);
 }
예제 #20
0
 public override void Write(PacketOutput output)
 {
     output.Write(ItemType);
 }
예제 #21
0
 public override void Write(PacketOutput output)
 {
     output.Write(ConditionEffect);
     output.Write(ConditionDuration);
 }