From 7b9e0cdb653a213f9731202c44e925029e9b746b Mon Sep 17 00:00:00 2001 From: Dan Mulloy Date: Sun, 28 Jun 2015 15:55:11 -0400 Subject: [PATCH] Fix timeout error with MCPC 1.6.4 Fixes aadnk#90 --- .../protocol/injector/LoginPackets.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/ProtocolLib/src/main/java/com/comphenix/protocol/injector/LoginPackets.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/LoginPackets.java index 635f3338..438db2da 100644 --- a/ProtocolLib/src/main/java/com/comphenix/protocol/injector/LoginPackets.java +++ b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/LoginPackets.java @@ -28,22 +28,23 @@ class LoginPackets { serverSide.add(Packets.Server.KEY_RESPONSE); clientSide.add(Packets.Client.CLIENT_COMMAND); serverSide.add(Packets.Server.LOGIN); - + // List ping clientSide.add(Packets.Client.GET_INFO); - + // In 1.6.2, Minecraft started sending CUSTOM_PAYLOAD in the server list protocol - if (version.compareTo(MinecraftVersion.HORSE_UPDATE) >= 0) { + // MCPC+/Cauldron contains Forge, which uses CUSTOM_PAYLOAD during login + if (version.isAtLeast(MinecraftVersion.HORSE_UPDATE) || isCauldronOrMCPC()) { clientSide.add(Packets.Client.CUSTOM_PAYLOAD); } - serverSide.add(Packets.Server.KICK_DISCONNECT); - - // MCPC+/Cauldron contains Forge, which uses packet 250 during login + if (isCauldronOrMCPC()) { - clientSide.add(Packets.Client.CUSTOM_PAYLOAD); + serverSide.add(Packets.Server.CUSTOM_PAYLOAD); } + + serverSide.add(Packets.Server.KICK_DISCONNECT); } - + /** * Determine if we are running MCPC or Cauldron. * @return TRUE if we are, FALSE otherwise.