From 2a7599f04b9e24372ad9e05c96472b2bb93c03d5 Mon Sep 17 00:00:00 2001 From: Derek Lee Date: Sun, 31 Jul 2022 17:14:58 -0700 Subject: [PATCH 1/8] Refactor VersionHandler --- .../chat/versions/VersionHandler.java | 71 +++++++++++-------- 1 file changed, 40 insertions(+), 31 deletions(-) diff --git a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java index 53a2a74..bc1f652 100644 --- a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java +++ b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java @@ -1,67 +1,76 @@ package mineverse.Aust1n46.chat.versions; -import org.bukkit.Bukkit; +import com.comphenix.protocol.utility.MinecraftVersion; //This class contains methods for determining what version of Minecraft the server is running. -public class VersionHandler { +public final class VersionHandler { + + public static final MinecraftVersion SERVER_VERSION = MinecraftVersion.getCurrentVersion(); + + private VersionHandler() { + } public static boolean is1_7() { - return Bukkit.getVersion().contains("1.7"); + return SERVER_VERSION.getMinor() == 7 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_8() { - return Bukkit.getVersion().contains("1.8"); + return SERVER_VERSION.getMinor() == 8 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_9() { - return Bukkit.getVersion().contains("1.9"); + return SERVER_VERSION.getMinor() == 9 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_10() { - return Bukkit.getVersion().contains("1.10"); + return SERVER_VERSION.getMinor() == 10 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_11() { - return Bukkit.getVersion().contains("1.11"); + return SERVER_VERSION.getMinor() == 11 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_12() { - return Bukkit.getVersion().contains("1.12"); + return SERVER_VERSION.getMinor() == 12 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_13() { - return Bukkit.getVersion().contains("1.13"); + return SERVER_VERSION.getMinor() == 13 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_14() { - return Bukkit.getVersion().contains("1.14"); + return SERVER_VERSION.getBuild() != 4 && SERVER_VERSION.getMinor() == 14 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_14_4() { - return Bukkit.getVersion().contains("1.14.4"); + return SERVER_VERSION.getBuild() == 4 && SERVER_VERSION.getMinor() == 14 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_15() { - return Bukkit.getVersion().contains("1.15"); + return SERVER_VERSION.getMinor() == 15 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_16() { - return Bukkit.getVersion().contains("1.16"); + return SERVER_VERSION.getMinor() == 16 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_17() { - return Bukkit.getVersion().contains("1.17"); + return SERVER_VERSION.getMinor() == 17 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_18() { - return Bukkit.getVersion().contains("1.18"); + return SERVER_VERSION.getMinor() == 18 && SERVER_VERSION.getMajor() == 1; } - + public static boolean is1_19() { - return Bukkit.getVersion().contains("1.19"); + return SERVER_VERSION.getBuild() == 0 && SERVER_VERSION.getMinor() == 19 && SERVER_VERSION.getMajor() == 1; } - + public static boolean isUnder_1_19() { - return is1_7() || is1_8() || is1_9() || is1_10() || is1_11() || is1_12() || is1_13() || is1_14() || is1_15() || is1_16() || is1_17() || is1_18(); + return !SERVER_VERSION.isAtLeast(MinecraftVersion.WILD_UPDATE); + } + + public static boolean isAbove_1_19() { + return !is1_19() && SERVER_VERSION.isAtLeast(MinecraftVersion.WILD_UPDATE); } } From 51d32ce7658972de3868524e58a41f5ed2be3e72 Mon Sep 17 00:00:00 2001 From: Derek Lee Date: Sun, 31 Jul 2022 17:26:17 -0700 Subject: [PATCH 2/8] Support 1.19.1 --- .../mineverse/Aust1n46/chat/utilities/Format.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/mineverse/Aust1n46/chat/utilities/Format.java b/src/main/java/mineverse/Aust1n46/chat/utilities/Format.java index 099bbda..f9d4b6a 100644 --- a/src/main/java/mineverse/Aust1n46/chat/utilities/Format.java +++ b/src/main/java/mineverse/Aust1n46/chat/utilities/Format.java @@ -430,7 +430,11 @@ public class Format { public static PacketContainer createPacketPlayOutChat(String json) { final PacketContainer container; - if (VersionHandler.isUnder_1_19()) { + if (VersionHandler.isAbove_1_19()) { + container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT); + container.getStrings().write(0, json); + container.getBooleans().write(0, false); + } else if (VersionHandler.isUnder_1_19()) { WrappedChatComponent component = WrappedChatComponent.fromJson(json); container = new PacketContainer(PacketType.Play.Server.CHAT); container.getModifier().writeDefaults(); @@ -445,7 +449,11 @@ public class Format { public static PacketContainer createPacketPlayOutChat(WrappedChatComponent component) { final PacketContainer container; - if (VersionHandler.isUnder_1_19()) { + if (VersionHandler.isAbove_1_19()) { + container = new PacketContainer(PacketType.Play.Server.SYSTEM_CHAT); + container.getStrings().write(0, component.getJson()); + container.getBooleans().write(0, false); + } else if (VersionHandler.isUnder_1_19()) { container = new PacketContainer(PacketType.Play.Server.CHAT); container.getModifier().writeDefaults(); container.getChatComponents().write(0, component); From 15fa485619d2e42f464b2d006a932d04d9674ceb Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Sun, 7 Aug 2022 23:25:05 -0500 Subject: [PATCH 3/8] Update pom ver --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 536166a..d91f26b 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 mineverse.Aust1n46.chat VentureChat - 3.4.1_1.19_patch + 3.4.2 https://bitbucket.org/Aust1n46/venturechat/src/master https://bitbucket.org/Aust1n46/venturechat/src/master From 35417bd9def398daf701afa79e5475bb0d5ff6e9 Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Sat, 13 Aug 2022 17:03:41 -0500 Subject: [PATCH 4/8] ISSUE #35 Compare versions without using enum values. --- .../Aust1n46/chat/versions/VersionHandler.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java index bc1f652..9317824 100644 --- a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java +++ b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java @@ -67,10 +67,22 @@ public final class VersionHandler { } public static boolean isUnder_1_19() { - return !SERVER_VERSION.isAtLeast(MinecraftVersion.WILD_UPDATE); + if (SERVER_VERSION.getMajor() < 1) { + return true; + } + return SERVER_VERSION.getMajor() == 1 && SERVER_VERSION.getMinor() < 19; } public static boolean isAbove_1_19() { - return !is1_19() && SERVER_VERSION.isAtLeast(MinecraftVersion.WILD_UPDATE); + if (SERVER_VERSION.getMajor() < 1) { + return false; + } + if (SERVER_VERSION.getMajor() > 1) { + return true; + } + if (SERVER_VERSION.getMinor() > 19) { + return true; + } + return SERVER_VERSION.getMinor() == 19 && SERVER_VERSION.getBuild() > 0; } } From e315824ae948254ebcce309a400da3342605279b Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Tue, 23 Aug 2022 22:00:32 -0500 Subject: [PATCH 5/8] Update src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java Co-authored-by: Derek Lee --- .../mineverse/Aust1n46/chat/versions/VersionHandler.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java index 9317824..fc9319c 100644 --- a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java +++ b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java @@ -67,10 +67,7 @@ public final class VersionHandler { } public static boolean isUnder_1_19() { - if (SERVER_VERSION.getMajor() < 1) { - return true; - } - return SERVER_VERSION.getMajor() == 1 && SERVER_VERSION.getMinor() < 19; + return !SERVER_VERSION.isAtLeast(MC1_19); } public static boolean isAbove_1_19() { From dfcc2bf1bff975b434185a5d551acfccb6a9f22e Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Tue, 23 Aug 2022 22:00:36 -0500 Subject: [PATCH 6/8] Update src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java Co-authored-by: Derek Lee --- .../Aust1n46/chat/versions/VersionHandler.java | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java index fc9319c..dacecd2 100644 --- a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java +++ b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java @@ -71,15 +71,6 @@ public final class VersionHandler { } public static boolean isAbove_1_19() { - if (SERVER_VERSION.getMajor() < 1) { - return false; - } - if (SERVER_VERSION.getMajor() > 1) { - return true; - } - if (SERVER_VERSION.getMinor() > 19) { - return true; - } - return SERVER_VERSION.getMinor() == 19 && SERVER_VERSION.getBuild() > 0; + return SERVER_VERSION.isAtLeast(MC1_19_1); } } From cad3636ef7eaef20754d650a9fd209d13b4d6ca0 Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Tue, 23 Aug 2022 22:05:21 -0500 Subject: [PATCH 7/8] ISSUE #35 Refac with custom declared versions For 1.19 and 1.19.1 --- .../java/mineverse/Aust1n46/chat/versions/VersionHandler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java index dacecd2..6447bb2 100644 --- a/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java +++ b/src/main/java/mineverse/Aust1n46/chat/versions/VersionHandler.java @@ -2,10 +2,11 @@ package mineverse.Aust1n46.chat.versions; import com.comphenix.protocol.utility.MinecraftVersion; -//This class contains methods for determining what version of Minecraft the server is running. public final class VersionHandler { public static final MinecraftVersion SERVER_VERSION = MinecraftVersion.getCurrentVersion(); + private static final MinecraftVersion MC1_19 = new MinecraftVersion(1, 19, 0); + private static final MinecraftVersion MC1_19_1 = new MinecraftVersion(1, 19, 1); private VersionHandler() { } From 20a255a15c71f7b992b98cb4e2ac4bb5d9d3075a Mon Sep 17 00:00:00 2001 From: Aust1n46 Date: Tue, 23 Aug 2022 22:07:28 -0500 Subject: [PATCH 8/8] Bugfix ver --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d91f26b..9791867 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 mineverse.Aust1n46.chat VentureChat - 3.4.2 + 3.4.3 https://bitbucket.org/Aust1n46/venturechat/src/master https://bitbucket.org/Aust1n46/venturechat/src/master