From 1c5bff7ed7c0abfd5a3ffcb193e002b6695d82bd Mon Sep 17 00:00:00 2001 From: md_5 Date: Tue, 23 Oct 2018 06:00:00 +1100 Subject: [PATCH] Minecraft 1.13.2 support --- config/pom.xml | 2 +- .../src/main/java/net/md_5/bungee/protocol/Protocol.java | 3 ++- .../java/net/md_5/bungee/protocol/ProtocolConstants.java | 4 +++- proxy/pom.xml | 2 +- .../src/main/java/net/md_5/bungee/entitymap/EntityMap.java | 7 ++++++- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/config/pom.xml b/config/pom.xml index 4bb5af69..44005b6f 100644 --- a/config/pom.xml +++ b/config/pom.xml @@ -22,7 +22,7 @@ org.yaml snakeyaml - 1.21 + 1.23 compile diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java index 06390751..c4dd00a5 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java @@ -377,7 +377,8 @@ public enum Protocol ProtocolConstants.MINECRAFT_1_12_2 ) ); linkedProtocols.put( ProtocolConstants.MINECRAFT_1_13, Arrays.asList( - ProtocolConstants.MINECRAFT_1_13_1 + ProtocolConstants.MINECRAFT_1_13_1, + ProtocolConstants.MINECRAFT_1_13_2 ) ); } diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java b/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java index 9a61fa4c..2cc86349 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java @@ -19,6 +19,7 @@ public class ProtocolConstants public static final int MINECRAFT_1_12_2 = 340; public static final int MINECRAFT_1_13 = 393; public static final int MINECRAFT_1_13_1 = 401; + public static final int MINECRAFT_1_13_2 = 404; public static final List SUPPORTED_VERSIONS = Arrays.asList( "1.8.x", "1.9.x", @@ -39,7 +40,8 @@ public class ProtocolConstants ProtocolConstants.MINECRAFT_1_12_1, ProtocolConstants.MINECRAFT_1_12_2, ProtocolConstants.MINECRAFT_1_13, - ProtocolConstants.MINECRAFT_1_13_1 + ProtocolConstants.MINECRAFT_1_13_1, + ProtocolConstants.MINECRAFT_1_13_2 ); public enum Direction diff --git a/proxy/pom.xml b/proxy/pom.xml index 6968ecb2..2db37850 100644 --- a/proxy/pom.xml +++ b/proxy/pom.xml @@ -87,7 +87,7 @@ mysql mysql-connector-java - 5.1.46 + 5.1.47 runtime diff --git a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java index d1eebbf0..af4da071 100644 --- a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java +++ b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java @@ -49,6 +49,7 @@ public abstract class EntityMap return EntityMap_1_12_1.INSTANCE; case ProtocolConstants.MINECRAFT_1_13: case ProtocolConstants.MINECRAFT_1_13_1: + case ProtocolConstants.MINECRAFT_1_13_2: return EntityMap_1_13.INSTANCE; } throw new RuntimeException( "Version " + version + " has no entity map" ); @@ -241,8 +242,12 @@ public abstract class EntityMap private static void readSkipSlot(ByteBuf packet, int protocolVersion) { - if ( packet.readShort() != -1 ) + if ( (protocolVersion >= ProtocolConstants.MINECRAFT_1_13_2) ? packet.readBoolean() : packet.readShort() != -1 ) { + if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_13_2 ) + { + DefinedPacket.readVarInt( packet ); + } packet.skipBytes( ( protocolVersion >= ProtocolConstants.MINECRAFT_1_13 ) ? 1 : 3 ); // byte vs byte, short int position = packet.readerIndex();