From a7e6b79fb471fac9288d409a468d6977dfb41a05 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 12:36:28 +0200 Subject: [PATCH 01/28] add 1.19 support --- Spigot/{build.gradle => build.gradle.kts} | 38 +++++++-------- .../spigot/listener/packet/ModernUtils.java | 47 +++++++++++++++++++ .../listener/packet/PacketListener.java | 16 +++++-- build.gradle | 10 ++-- core/build.gradle | 1 - gradle.properties | 1 + gradle/wrapper/gradle-wrapper.properties | 2 +- settings.gradle | 9 +++- 8 files changed, 92 insertions(+), 32 deletions(-) rename Spigot/{build.gradle => build.gradle.kts} (50%) create mode 100644 Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java diff --git a/Spigot/build.gradle b/Spigot/build.gradle.kts similarity index 50% rename from Spigot/build.gradle rename to Spigot/build.gradle.kts index a02aaab..4f7a1ab 100644 --- a/Spigot/build.gradle +++ b/Spigot/build.gradle.kts @@ -19,32 +19,30 @@ * . * END */ +plugins { + id("io.papermc.paperweight.userdev") version "1.3.7" +} +apply(plugin = "io.papermc.paperweight.userdev") repositories { mavenCentral() - maven { - url = uri("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") - } - maven { - url = uri("https://repo.destroystokyo.com/repository/maven-public/") - } - maven { url "https://repo.dmulloy2.net/repository/public/" } - maven { - url "https://libraries.minecraft.net" - } + maven("https://repo.papermc.io/repository/maven-public/") + maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") + maven("https://repo.destroystokyo.com/repository/maven-public/") + maven("https://repo.dmulloy2.net/repository/public/") + maven("https://libraries.minecraft.net") } + + dependencies { + paperDevBundle("1.19-R0.1-SNAPSHOT") + implementation("space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2") + testImplementation("org.junit.jupiter:junit-jupiter-api:5.7.0") + testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.7.0") + compileOnly("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") + compileOnly("com.comphenix.protocol:ProtocolLib:4.7.0") + implementation(project(":core")) - implementation 'space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2' - testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0' - testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0' - compileOnly 'org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT' - compileOnly group: "com.comphenix.protocol", name: "ProtocolLib", version: "4.7.0"; - implementation project(':core') - compileOnly 'com.mojang:brigadier:1.0.18' } -test { - useJUnitPlatform() -} diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java new file mode 100644 index 0000000..ad89c02 --- /dev/null +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java @@ -0,0 +1,47 @@ +/* + * LICENSE + * AdvancedPlHide + * ------------- + * Copyright (C) 2021 - 2021 BlueTree242 + * ------------- + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program. If not, see + * . + * END + */ + +package tk.bluetree242.advancedplhide.spigot.listener.packet; + +import com.comphenix.protocol.PacketType; +import com.comphenix.protocol.events.PacketContainer; +import com.comphenix.protocol.events.PacketEvent; +import com.mojang.brigadier.tree.RootCommandNode; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.core.RegistryAccess; +import net.minecraft.network.protocol.game.ClientboundCommandsPacket; +import tk.bluetree242.advancedplhide.CompleterModifier; +import tk.bluetree242.advancedplhide.Group; +import tk.bluetree242.advancedplhide.impl.completer.RootNodeCommandCompleter; + +public class ModernUtils { //utils for modern game, when the RootCommandNode was removed from COMMANDS packet + + + protected static void handleModern(PacketEvent packetEvent, Group group, boolean whitelist) { + ClientboundCommandsPacket packet = (ClientboundCommandsPacket) packetEvent.getPacket().getHandle(); + RootCommandNode nodeOrigin = packet.getRoot(new CommandBuildContext(RegistryAccess.BUILTIN.get())); //get the command node out + RootNodeCommandCompleter node = new RootNodeCommandCompleter(nodeOrigin); + CompleterModifier.handleCompleter(node, group, whitelist); + //noinspection unchecked + packetEvent.setPacket(new PacketContainer(PacketType.Play.Server.COMMANDS, new ClientboundCommandsPacket(node.export())));//put the modified root node in a new packet because it's not really possible to modify + } +} diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java index 30b57e2..d172ba6 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java @@ -23,6 +23,7 @@ package tk.bluetree242.advancedplhide.spigot.listener.packet; import com.comphenix.protocol.PacketType; +import com.comphenix.protocol.events.ListenerOptions; import com.comphenix.protocol.events.ListenerPriority; import com.comphenix.protocol.events.PacketAdapter; import com.comphenix.protocol.events.PacketEvent; @@ -39,6 +40,7 @@ import tk.bluetree242.advancedplhide.utils.Constants; import tk.bluetree242.advancedplhide.utils.UsedMap; +import java.util.Arrays; import java.util.UUID; public class PacketListener extends PacketAdapter { @@ -47,7 +49,7 @@ public class PacketListener extends PacketAdapter { private AdvancedPlHideSpigot core; public PacketListener(AdvancedPlHideSpigot core) { - super(core, ListenerPriority.HIGHEST, PacketType.Play.Server.TAB_COMPLETE, PacketType.Play.Client.TAB_COMPLETE, PacketType.Play.Server.COMMANDS); + super(core, ListenerPriority.HIGHEST, Arrays.asList(PacketType.Play.Server.TAB_COMPLETE, PacketType.Play.Client.TAB_COMPLETE, PacketType.Play.Server.COMMANDS), ListenerOptions.ASYNC); this.core = core; } @@ -67,11 +69,12 @@ private void onTabcomplete(PacketEvent e) { String notCompleted = this.commandsWaiting.get(e.getPlayer().getUniqueId()); commandsWaiting.remove(e.getPlayer().getUniqueId()); if (notCompleted == null) notCompleted = "/"; - if (!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted.trim(); + if (!notCompleted.contains(" ")) { SuggestionCommandCompleterList suggestions = new SuggestionCommandCompleterList(suggestionsOrigin); CompleterModifier.handleCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission("plhide.whitelist-mode")); matchModifier.write(0, suggestions.export()); - } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")){ + } { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(suggestionsOrigin, notCompleted); CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); @@ -101,7 +104,12 @@ private void onTabcomplete(PacketEvent e) { private void onCommands(PacketEvent e) { StructureModifier matchModifier = e.getPacket().getSpecificModifier(RootCommandNode.class); - RootCommandNode nodeOrigin = matchModifier.read(0); + RootCommandNode nodeOrigin = matchModifier.readSafely(0); + if (nodeOrigin == null) { + //modern game, 1.19+ + ModernUtils.handleModern(e, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + return; + } RootNodeCommandCompleter node = new RootNodeCommandCompleter(nodeOrigin); CompleterModifier.handleCompleter(node, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); matchModifier.write(0, node.export()); diff --git a/build.gradle b/build.gradle index d2bb5c7..bc48ade 100644 --- a/build.gradle +++ b/build.gradle @@ -24,7 +24,7 @@ import org.apache.tools.ant.filters.ReplaceTokens plugins { id 'java' id 'maven-publish' - id 'com.github.johnrengelman.shadow' version '6.1.0' + id 'com.github.johnrengelman.shadow' version '7.1.2' } repositories { mavenCentral() @@ -37,14 +37,14 @@ def commit = project.properties['commit'] == null ? "NONE" : project.properties[ System.out.println("Commit Hash is " + commit) subprojects { apply plugin: 'java' - apply plugin: 'maven' apply plugin: 'maven-publish' project.jar { archivesBaseName = 'AdvancedPlHide-' + project.name } - dependencies { - compile 'org.jetbrains:annotations:16.0.2' + dependencies { + compileOnly 'org.jetbrains:annotations:16.0.2' } + tasks.withType(Copy).all { duplicatesStrategy 'INCLUDE' } project.processResources { from(sourceSets.main.resources.srcDirs) { filter ReplaceTokens, tokens: [version : version, @@ -74,7 +74,7 @@ publishing { } } } -java.sourceCompatibility = JavaVersion.VERSION_11 +java.sourceCompatibility = JavaVersion.VERSION_17 java.targetCompatibility = JavaVersion.VERSION_11 diff --git a/core/build.gradle b/core/build.gradle index f5f137b..9440b9c 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -24,7 +24,6 @@ plugins { id 'java' id 'maven-publish' } -apply plugin: 'maven' apply plugin: 'maven-publish' publishing { publications { diff --git a/gradle.properties b/gradle.properties index c3a301a..74c8f9b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,6 +19,7 @@ # . # END # + group=tk.bluetree242 name=AdvancedPlHide version=2.2-DEV diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4782cb8..c95cec4 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -21,6 +21,6 @@ # distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.8-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/settings.gradle b/settings.gradle index beb4d6b..d87d3c4 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,7 +19,14 @@ * . * END */ - +pluginManagement { + repositories { + gradlePluginPortal() + maven { + url 'https://repo.papermc.io/repository/maven-public/' + } + } +} rootProject.name = 'AdvancedPlHide' include 'core' include 'Spigot' From 156a658c64f907022648dcc706f9ec875f8ac3ac Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 12:39:04 +0200 Subject: [PATCH 02/28] Reformat Code --- .../java/tk/bluetree242/advancedplhide/Group.java | 3 ++- .../tk/bluetree242/advancedplhide/config/Config.java | 3 ++- .../config/subcompleter/ConfSubCompleter.java | 11 +++++------ .../config/subcompleter/ConfSubCompleterList.java | 1 + .../SuggestionSubCommandCompleterList.java | 8 +++++--- 5 files changed, 15 insertions(+), 11 deletions(-) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Group.java b/core/src/main/java/tk/bluetree242/advancedplhide/Group.java index d825e73..0084b16 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Group.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Group.java @@ -37,8 +37,9 @@ public class Group { private final String name; private final List completers; - private List originCompleters; private final ConfSubCompleterList subCompleters; + private List originCompleters; + public Group(String name, List completers) { this.originCompleters = completers; this.name = name; diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java index 3025310..a3e05ac 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java @@ -45,7 +45,8 @@ public interface Config { Boolean remove_plugin_prefix(); @AnnotationBasedSorter.Order(30) - @ConfComments("\n# https://github.com/BlueTree242/AdvancedPlHide/wiki/groups") //space between the groups and the conf options up + @ConfComments("\n# https://github.com/BlueTree242/AdvancedPlHide/wiki/groups") + //space between the groups and the conf options up @ConfDefault.DefaultObject("tk.bluetree242.advancedplhide.config.ConfManager.defaultGroups") Map groups(); diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java index ebf2ddd..16bb15e 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java @@ -33,8 +33,12 @@ public class ConfSubCompleter { private final String name; private final String[] args; + public ConfSubCompleter(@NotNull String name, @NotNull String[] args) { + this.name = name; + this.args = args; + } + /** - * * @param cmd - command in config, the full string with 0 modifications * @return {@link ConfSubCompleter} of this command */ @@ -46,11 +50,6 @@ public static ConfSubCompleter of(@NotNull String cmd) { return new ConfSubCompleter(name, args.toArray(new String[0])); } - public ConfSubCompleter(@NotNull String name,@NotNull String[] args) { - this.name = name; - this.args = args; - } - public String getName() { return name; } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java index 412a8bb..b7e1641 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java @@ -42,6 +42,7 @@ public ConfSubCompleterList ofCommand(String cmd) { /** * This method tries to find commands with this args, respects * + * * @param args args of the command * @return list of sub completers that have this args */ diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java index 9c5c7bd..548e2da 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java @@ -34,6 +34,7 @@ public class SuggestionSubCommandCompleterList extends SubCommandCompleterList { private final Suggestions suggestions; private final String command; private final String[] args; + public SuggestionSubCommandCompleterList(Suggestions suggestions, String notCompleted) { this.suggestions = suggestions; for (Suggestion suggestion : suggestions.getList()) { @@ -45,9 +46,9 @@ public SuggestionSubCommandCompleterList(Suggestions suggestions, String notComp for (String s : split) { if (!s.equalsIgnoreCase("/" + command)) { if (notCompleted.endsWith(" ")) - list.add(s); + list.add(s); else { - if (!s.equals(split[split.length -1])) { + if (!s.equals(split[split.length - 1])) { list.add(s); } } @@ -73,7 +74,8 @@ public String getName() { @Override public boolean remove(Object e) { - if (!(e instanceof SubCommandCompleter)) throw new IllegalArgumentException("May only remove a SubCommandCompleter"); + if (!(e instanceof SubCommandCompleter)) + throw new IllegalArgumentException("May only remove a SubCommandCompleter"); SubCommandCompleter completer = (SubCommandCompleter) e; for (Suggestion suggestion : suggestions.getList()) { if (suggestion.getText().equalsIgnoreCase(completer.getText())) { From 08d4030aeb5a51bef59e76ae68b6b99bd28cf03b Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 17:07:09 +0200 Subject: [PATCH 03/28] bring back java 8 support and fix update checker --- Spigot/build.gradle.kts | 10 +++++--- .../velocity/AdvancedPlHideVelocity.java | 16 ++++++++++++- build.gradle | 23 +++++++++++-------- core/build.gradle | 3 +-- .../advancedplhide/CompleterModifier.java | 3 ++- .../bluetree242/advancedplhide/Platform.java | 19 ++++++++------- 6 files changed, 48 insertions(+), 26 deletions(-) diff --git a/Spigot/build.gradle.kts b/Spigot/build.gradle.kts index 4f7a1ab..5696fcd 100644 --- a/Spigot/build.gradle.kts +++ b/Spigot/build.gradle.kts @@ -22,7 +22,6 @@ plugins { id("io.papermc.paperweight.userdev") version "1.3.7" } -apply(plugin = "io.papermc.paperweight.userdev") repositories { mavenCentral() maven("https://repo.papermc.io/repository/maven-public/") @@ -32,8 +31,6 @@ repositories { maven("https://libraries.minecraft.net") } - - dependencies { paperDevBundle("1.19-R0.1-SNAPSHOT") implementation("space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2") @@ -42,7 +39,14 @@ dependencies { compileOnly("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") compileOnly("com.comphenix.protocol:ProtocolLib:4.7.0") implementation(project(":core")) +} +java { + this.disableAutoTargetJvm() } + + + + diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index eb6b0ce..f658c78 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -46,11 +46,14 @@ import tk.bluetree242.advancedplhide.velocity.listener.packet.PacketListener; import javax.inject.Inject; +import java.io.ByteArrayOutputStream; import java.io.IOException; +import java.io.InputStream; import java.io.UncheckedIOException; import java.nio.file.Path; import java.util.ArrayList; import java.util.List; +import java.util.Objects; @Plugin(id = "advancedplhide", name = "AdvancedPlHide", @@ -130,11 +133,22 @@ public String getPluginForCommand(String s) { @Override public String getVersionConfig() { try { - return new String(getClass().getClassLoader().getResourceAsStream("version-config.json").readAllBytes()); + return new String(readFully(Objects.requireNonNull(getClass().getClassLoader().getResourceAsStream("version-config.json")))); } catch (IOException e) { throw new UncheckedIOException(e); } } + private static byte[] readFully(InputStream input) throws IOException + { + byte[] buffer = new byte[8192]; + int bytesRead; + ByteArrayOutputStream output = new ByteArrayOutputStream(); + while ((bytesRead = input.read(buffer)) != -1) + { + output.write(buffer, 0, bytesRead); + } + return output.toByteArray(); + } @Override public Type getType() { diff --git a/build.gradle b/build.gradle index bc48ade..bf58728 100644 --- a/build.gradle +++ b/build.gradle @@ -41,22 +41,26 @@ subprojects { project.jar { archivesBaseName = 'AdvancedPlHide-' + project.name } - dependencies { + dependencies { compileOnly 'org.jetbrains:annotations:16.0.2' } tasks.withType(Copy).all { duplicatesStrategy 'INCLUDE' } project.processResources { from(sourceSets.main.resources.srcDirs) { - filter ReplaceTokens, tokens: [version : version, - build : buildNumber, - commit : commit, + filter ReplaceTokens, tokens: [version : version, + build : buildNumber, + commit : commit, description: description, - buildDate: System.currentTimeMillis() + "" + buildDate : System.currentTimeMillis() + "" ] } - } - + java { + toolchain.languageVersion.set(JavaLanguageVersion.of(17)) + } + compileJava { + options.release.set(8) + } } shadowJar { classifier '' @@ -74,8 +78,9 @@ publishing { } } } -java.sourceCompatibility = JavaVersion.VERSION_17 -java.targetCompatibility = JavaVersion.VERSION_11 + + + diff --git a/core/build.gradle b/core/build.gradle index 9440b9c..c14e189 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -40,8 +40,6 @@ rootProject.allprojects { relocate 'space.arim.dazzleconf', "tk.bluetree242.advancedplhide.dependencies.dazzleconf" relocate 'org.yaml.snakeyaml', "tk.bluetree242.advancedplhide.dependencies.yaml" relocate 'org.json', "tk.bluetree242.advancedplhide.dependencies.json" - relocate 'okio', "tk.bluetree242.advancedplhide.dependencies.okio" - relocate 'okhttp3', "tk.bluetree242.advancedplhide.dependencies.okhttp" } } @@ -57,6 +55,7 @@ repositories { dependencies { implementation 'space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2' compileOnly 'com.mojang:brigadier:1.0.18' + implementation 'com.github.kevinsawicki:http-request:6.0' implementation group: 'org.json', name: 'json', version: '20210307' } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java index 6b67b3a..cefb122 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java @@ -25,10 +25,11 @@ import tk.bluetree242.advancedplhide.config.subcompleter.ConfSubCompleterList; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; public class CompleterModifier { - private static final List BAD_COMMANDS = List.of("ver", "version", "plugins", "bukkit:plugins", "bukkit:ver", "bukkit:version", "about", "bukkit:about"); + private static final List BAD_COMMANDS = Arrays.asList("ver", "version", "plugins", "bukkit:plugins", "bukkit:ver", "bukkit:version", "about", "bukkit:about"); public static void removePluginPrefix(CommandCompleterList list) { for (CommandCompleter completer : new ArrayList<>(list)) { if (completer.getName().contains(":")) completer.remove(); diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java index d2c94fb..d06908d 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java @@ -22,11 +22,11 @@ package tk.bluetree242.advancedplhide; +import com.github.kevinsawicki.http.HttpRequest; import org.json.JSONObject; import tk.bluetree242.advancedplhide.config.Config; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; -import tk.bluetree242.advancedplhide.utils.HttpPostMultipart; import java.util.ArrayList; import java.util.HashMap; @@ -92,17 +92,16 @@ public String getBuildDate() { public UpdateCheckResult updateCheck() { try { - Map headers = new HashMap<>(); - headers.put("User-Agent", "APH/Java"); - HttpPostMultipart req = new HttpPostMultipart("https://advancedplhide.ml/updatecheck", "utf-8", headers); - req.addFormField("version", getCurrentVersion()); - req.addFormField("buildNumber", getCurrentBuild()); - req.addFormField("buildDate", getBuildDate()); - req.addFormField("devUpdatechecker", getConfig().dev_updatechecker() + ""); - String response = req.finish(); + Map req = new HashMap(); + req.put("version", getCurrentVersion()); + req.put("buildNumber", getCurrentBuild()); + req.put("buildDate", getBuildDate()); + req.put("devUpdatechecker", getConfig().dev_updatechecker() + ""); + String response = HttpRequest.post("https://advancedplhide.ml/updatecheck").form(req).body(); JSONObject json = new JSONObject(response); - return new UpdateCheckResult(json.getInt("versions_behind"), json.isNull("versions_behind") ? null : json.getString("message"), json.isNull("type") ? "INFO" : json.getString("type"), json.getString("downloadUrl")); + return new UpdateCheckResult(json.getInt("versions_behind"), json.isNull("message") ? null : json.getString("message"), json.isNull("type") ? "INFO" : json.getString("type"), json.getString("downloadUrl")); } catch (Exception e) { + e.printStackTrace(); return null; } } From b396c762db60a5f215aa5b43b349564e75581af6 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 17:08:31 +0200 Subject: [PATCH 04/28] reformat code --- .../bungee/AdvancedPlHideBungee.java | 3 ++- .../StringSubCommandCompleterList.java | 8 ++++--- .../listener/packet/PacketListener.java | 4 ++-- README.md | 15 ++++++++++--- .../StringSubCommandCompleterList.java | 5 +++-- .../listener/packet/PacketListener.java | 9 ++++---- .../velocity/AdvancedPlHideVelocity.java | 21 +++++++++---------- .../OfferSubCommandCompleterList.java | 8 ++++--- .../listener/packet/PacketListener.java | 6 +++--- .../advancedplhide/CommandCompleterList.java | 1 + .../advancedplhide/CompleterModifier.java | 2 +- .../SubCommandCompleterList.java | 3 ++- gradle.properties | 1 - 13 files changed, 51 insertions(+), 35 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java index d2f496d..55868dc 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java @@ -102,7 +102,8 @@ public void performStartUpdateCheck() { if (result == null) { getLogger().severe("Could not check for updates"); return; - } String msg = result.getVersionsBehind() == 0 ? + } + String msg = result.getVersionsBehind() == 0 ? ChatColor.translateAlternateColorCodes('&', Constants.DEFAULT_UP_TO_DATE) : ChatColor.translateAlternateColorCodes('&', Constants.DEFAULT_BEHIND.replace("{versions}", result.getVersionsBehind() + "") .replace("{download}", result.getUpdateUrl())); diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java index e8717fd..1fbe604 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java @@ -32,6 +32,7 @@ public class StringSubCommandCompleterList extends SubCommandCompleterList { private final String command; private final String[] args; private final List suggestions; + public StringSubCommandCompleterList(List suggestions, String notCompleted) { this.suggestions = suggestions; for (String suggestion : suggestions) { @@ -43,9 +44,9 @@ public StringSubCommandCompleterList(List suggestions, String notComplet for (String s : split) { if (!s.equalsIgnoreCase("/" + command)) { if (notCompleted.endsWith(" ")) - list.add(s); + list.add(s); else { - if (!s.equals(split[split.length -1])) { + if (!s.equals(split[split.length - 1])) { list.add(s); } } @@ -70,7 +71,8 @@ public String getName() { } public boolean remove(Object e) { - if (!(e instanceof SubCommandCompleter)) throw new IllegalArgumentException("May only remove a SubCommandCompleter"); + if (!(e instanceof SubCommandCompleter)) + throw new IllegalArgumentException("May only remove a SubCommandCompleter"); SubCommandCompleter completer = (SubCommandCompleter) e; for (String suggestion : new ArrayList<>(suggestions)) { if (suggestion.equalsIgnoreCase(completer.getText())) { diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java index 996dc51..1fd22e4 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java @@ -76,7 +76,7 @@ public void packetSend(PacketSendEvent e) { if (!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { StringCommandCompleterList list = new StringCommandCompleterList(packet.getCommands()); CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - }else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { StringSubCommandCompleterList list = new StringSubCommandCompleterList(packet.getCommands(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); @@ -85,7 +85,7 @@ public void packetSend(PacketSendEvent e) { if (!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { SuggestionCommandCompleterList list = new SuggestionCommandCompleterList(packet.getSuggestions()); CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission("plhide.whitelist-mode")); - }else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")){ + } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(e.packet().getSuggestions(), notCompleted); CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.cancelled(true); diff --git a/README.md b/README.md index 734bc06..171ce03 100644 --- a/README.md +++ b/README.md @@ -3,13 +3,19 @@ AdvancePlHide + [Document (not finshed)]:https://img.shields.io/badge/-Document-blue.svg?logo=Wikipedia&style=for-the-badge&logoColor=black + [Discord]:https://img.shields.io/badge/-Discord-5865F2.svg?logo=discord&style=for-the-badge&logoColor=white + [Spigot]:https://img.shields.io/badge/-SpigotMC-ef9023.svg?logo=Accenture&style=for-the-badge&logoColor=grey [SpigotRating]:https://img.shields.io/spiget/rating/98645?style=flat-square + [GitHubStar]:https://img.shields.io/github/stars/BlueTree242/AdvancedPlHide + [TestedVersion]: https://img.shields.io/spiget/tested-versions/98645?label=Tested%20on&style=flat-square + [CodeSize]:https://img.shields.io/github/languages/code-size/BlueTree242/AdvancedPlHide [![Discord]](https://discordsrvutils.xyz/support) @@ -19,9 +25,10 @@ ## Table of Contents + * [Introduction](#introduction) - * [Reasons](#Reasons) - * [Features](#features) + * [Reasons](#Reasons) + * [Features](#features) * [Requirements](#Requirements) * [Installation](#Installation) @@ -41,9 +48,10 @@ ### Requirements * Java 11 or higher -* ProtocolLib (Spigot) +* ProtocolLib (Spigot) * Protocolize (Proxy) * Luckperms or some other perm plugin + ### Supported Platforms * Spigot/Paper or any forks. @@ -51,6 +59,7 @@ * Velocity ### Installation + When you Download AdvancedPlHide Also download ProtocolLib. When using a proxy AdvancedPlHide needs Protocolize diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java index 1339152..e5da98c 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java @@ -31,6 +31,7 @@ public class StringSubCommandCompleterList extends SubCommandCompleterList { private final String command; private final String[] args; + public StringSubCommandCompleterList(String[] suggestions, String notCompleted) { for (String suggestion : suggestions) { add(new StringSubCommandCompleter(this, suggestion)); @@ -41,9 +42,9 @@ public StringSubCommandCompleterList(String[] suggestions, String notCompleted) for (String s : split) { if (!s.equalsIgnoreCase("/" + command)) { if (notCompleted.endsWith(" ")) - list.add(s); + list.add(s); else { - if (!s.equals(split[split.length -1])) { + if (!s.equals(split[split.length - 1])) { list.add(s); } } diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java index d172ba6..3bfdb89 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java @@ -74,7 +74,8 @@ private void onTabcomplete(PacketEvent e) { SuggestionCommandCompleterList suggestions = new SuggestionCommandCompleterList(suggestionsOrigin); CompleterModifier.handleCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission("plhide.whitelist-mode")); matchModifier.write(0, suggestions.export()); - } { + } + { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(suggestionsOrigin, notCompleted); CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); @@ -85,7 +86,7 @@ private void onTabcomplete(PacketEvent e) { StructureModifier matchModifier = e.getPacket().getSpecificModifier(String[].class); String[] suggestionsOrigin = matchModifier.read(0); String notCompleted = this.commandsWaiting.get(e.getPlayer().getUniqueId()); - if (notCompleted == null){ + if (notCompleted == null) { notCompleted = "/"; } commandsWaiting.remove(e.getPlayer().getUniqueId()); @@ -118,9 +119,9 @@ private void onCommands(PacketEvent e) { public void onPacketReceiving(PacketEvent e) { if (e.isCancelled()) return; if (e.getPacketType() == PacketType.Play.Client.TAB_COMPLETE) { - String s = e.getPacket().getStrings() + String s = e.getPacket().getStrings() .read(0); - this.commandsWaiting.put(e.getPlayer().getUniqueId(),s); + this.commandsWaiting.put(e.getPlayer().getUniqueId(), s); } } } diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index f658c78..c4e0e4e 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -95,6 +95,16 @@ public static Group getGroupForPlayer(Player player) { return group; } + private static byte[] readFully(InputStream input) throws IOException { + byte[] buffer = new byte[8192]; + int bytesRead; + ByteArrayOutputStream output = new ByteArrayOutputStream(); + while ((bytesRead = input.read(buffer)) != -1) { + output.write(buffer, 0, bytesRead); + } + return output.toByteArray(); + } + public void loadGroups() { groups = new ArrayList<>(); config.groups().forEach((name, val) -> { @@ -138,17 +148,6 @@ public String getVersionConfig() { throw new UncheckedIOException(e); } } - private static byte[] readFully(InputStream input) throws IOException - { - byte[] buffer = new byte[8192]; - int bytesRead; - ByteArrayOutputStream output = new ByteArrayOutputStream(); - while ((bytesRead = input.read(buffer)) != -1) - { - output.write(buffer, 0, bytesRead); - } - return output.toByteArray(); - } @Override public Type getType() { diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java index 83428dc..dc221c2 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java @@ -33,6 +33,7 @@ public class OfferSubCommandCompleterList extends SubCommandCompleterList { private final List suggestions; private final String command; private final String[] args; + public OfferSubCommandCompleterList(List suggestions, String notCompleted) { this.suggestions = suggestions; for (TabCompleteResponse.Offer suggestion : suggestions) { @@ -44,9 +45,9 @@ public OfferSubCommandCompleterList(List suggestions, for (String s : split) { if (!s.equalsIgnoreCase("/" + command)) { if (notCompleted.endsWith(" ")) - list.add(s); + list.add(s); else { - if (!s.equals(split[split.length -1])) { + if (!s.equals(split[split.length - 1])) { list.add(s); } } @@ -72,7 +73,8 @@ public String getName() { @Override public boolean remove(Object e) { - if (!(e instanceof SubCommandCompleter)) throw new IllegalArgumentException("May only remove a SubCommandCompleter"); + if (!(e instanceof SubCommandCompleter)) + throw new IllegalArgumentException("May only remove a SubCommandCompleter"); SubCommandCompleter completer = (SubCommandCompleter) e; for (TabCompleteResponse.Offer suggestion : new ArrayList<>(suggestions)) { if (suggestion.getText().equalsIgnoreCase(completer.getText())) { diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java index c4ecbd2..0c38b25 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java @@ -70,16 +70,16 @@ public void packetSend(PacketSendEvent e) { if (!notCompleted.contains(" ") && notCompleted.startsWith("/")) { OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), legacy); CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - }else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { - if ((!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) ) { + if ((!notCompleted.contains(" ") && notCompleted.trim().startsWith("/"))) { OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), legacy); CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - }else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java index ebf9aeb..1c4c829 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java @@ -43,6 +43,7 @@ public void forEach(Consumer e) { /** * Never use this method, most likely won't affect the list final result + * * @deprecated 90% won't affect the list final result */ @Deprecated diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java index cefb122..ab80689 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java @@ -30,6 +30,7 @@ public class CompleterModifier { private static final List BAD_COMMANDS = Arrays.asList("ver", "version", "plugins", "bukkit:plugins", "bukkit:ver", "bukkit:version", "about", "bukkit:about"); + public static void removePluginPrefix(CommandCompleterList list) { for (CommandCompleter completer : new ArrayList<>(list)) { if (completer.getName().contains(":")) completer.remove(); @@ -78,7 +79,6 @@ public static void applyWhitelist(SubCommandCompleterList list, ConfSubCompleter } - public static void applyBlacklist(CommandCompleterList list, List toBlacklist) { List commands = new ArrayList<>(); List plugins = new ArrayList<>(); diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java index 03c2415..23106b6 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java @@ -48,7 +48,6 @@ public void forEach(Consumer e) { public abstract String[] getArgs(); /** - * * @param completer sub completer to use * @return {@link SubCommandCompleterList#getArgs()} but ends with the text of the sub completer */ @@ -75,6 +74,7 @@ public void removeAll() { /** * Checks if the packet (or event) should be cancelled + * * @return if this should be cancelled, currently true only when list is empty * @throws IllegalStateException if this isn't supposed to be for a cancellable event/packet */ @@ -84,6 +84,7 @@ public boolean isCancelled() { /** * Never use this method, most likely won't affect the list final result + * * @deprecated 90% won't affect the list final result */ @Deprecated diff --git a/gradle.properties b/gradle.properties index 74c8f9b..c3a301a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,7 +19,6 @@ # . # END # - group=tk.bluetree242 name=AdvancedPlHide version=2.2-DEV From 5891187605b0cb221fef70b295e4611c42532163 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 20:58:59 +0200 Subject: [PATCH 05/28] fix updatechecker again --- .../tk/bluetree242/advancedplhide/Platform.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java index d06908d..23add16 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java @@ -29,9 +29,7 @@ import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * Platform is the platform the plugin runs on, we can also call it the plugin core as it contains some methods related to the plugin itself too @@ -92,12 +90,12 @@ public String getBuildDate() { public UpdateCheckResult updateCheck() { try { - Map req = new HashMap(); - req.put("version", getCurrentVersion()); - req.put("buildNumber", getCurrentBuild()); - req.put("buildDate", getBuildDate()); - req.put("devUpdatechecker", getConfig().dev_updatechecker() + ""); - String response = HttpRequest.post("https://advancedplhide.ml/updatecheck").form(req).body(); + HttpRequest req = HttpRequest.post("https://advancedplhide.ml/updatecheck"); + req.part("version", getCurrentVersion()); + req.part("buildNumber", getCurrentBuild()); + req.part("buildDate", getBuildDate()); + req.part("devUpdatechecker", getConfig().dev_updatechecker() + ""); + String response = req.body(); JSONObject json = new JSONObject(response); return new UpdateCheckResult(json.getInt("versions_behind"), json.isNull("message") ? null : json.getString("message"), json.isNull("type") ? "INFO" : json.getString("type"), json.getString("downloadUrl")); } catch (Exception e) { From 9e15905ac4bc3bf698492b30bfc04df40c8728df Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 20:59:18 +0200 Subject: [PATCH 06/28] bump version (i forgot to do that a long time ago) --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index c3a301a..316817c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -21,5 +21,5 @@ # group=tk.bluetree242 name=AdvancedPlHide -version=2.2-DEV +version=2.3-DEV description=Remove Most ways of finding your plugins on your minecraft Server! \ No newline at end of file From 3b519d26d70af951171f1aed03f0d88f3e15ed23 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 21:36:05 +0200 Subject: [PATCH 07/28] remove useless class and improve code for spigot, and add "?" command to bad commands --- .../listener/packet/PacketListener.java | 17 +-- .../advancedplhide/CompleterModifier.java | 2 +- .../utils/HttpPostMultipart.java | 144 ------------------ 3 files changed, 7 insertions(+), 156 deletions(-) delete mode 100644 core/src/main/java/tk/bluetree242/advancedplhide/utils/HttpPostMultipart.java diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java index 3bfdb89..c1c35c5 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java @@ -63,13 +63,13 @@ public void onPacketSending(PacketEvent e) { } private void onTabcomplete(PacketEvent e) { + String notCompleted = this.commandsWaiting.get(e.getPlayer().getUniqueId()); + commandsWaiting.remove(e.getPlayer().getUniqueId()); + if (notCompleted == null) notCompleted = "/"; + if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; if (!core.isLegacy()) { StructureModifier matchModifier = e.getPacket().getSpecificModifier(Suggestions.class); Suggestions suggestionsOrigin = matchModifier.read(0); - String notCompleted = this.commandsWaiting.get(e.getPlayer().getUniqueId()); - commandsWaiting.remove(e.getPlayer().getUniqueId()); - if (notCompleted == null) notCompleted = "/"; - if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted.trim(); if (!notCompleted.contains(" ")) { SuggestionCommandCompleterList suggestions = new SuggestionCommandCompleterList(suggestionsOrigin); CompleterModifier.handleCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission("plhide.whitelist-mode")); @@ -85,16 +85,11 @@ private void onTabcomplete(PacketEvent e) { } else { StructureModifier matchModifier = e.getPacket().getSpecificModifier(String[].class); String[] suggestionsOrigin = matchModifier.read(0); - String notCompleted = this.commandsWaiting.get(e.getPlayer().getUniqueId()); - if (notCompleted == null) { - notCompleted = "/"; - } - commandsWaiting.remove(e.getPlayer().getUniqueId()); - if (!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + if (!notCompleted.contains(" ")) { StringCommandCompleterList suggestions = new StringCommandCompleterList(suggestionsOrigin); CompleterModifier.handleCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); matchModifier.write(0, suggestions.export()); - } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else { StringSubCommandCompleterList suggestions = new StringSubCommandCompleterList(suggestionsOrigin, notCompleted); CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java index ab80689..0edf610 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java @@ -29,7 +29,7 @@ import java.util.List; public class CompleterModifier { - private static final List BAD_COMMANDS = Arrays.asList("ver", "version", "plugins", "bukkit:plugins", "bukkit:ver", "bukkit:version", "about", "bukkit:about"); + private static final List BAD_COMMANDS = Arrays.asList("ver", "version", "plugins", "bukkit:plugins", "bukkit:ver", "bukkit:version", "about", "bukkit:about", "?", "minecraft:?"); public static void removePluginPrefix(CommandCompleterList list) { for (CommandCompleter completer : new ArrayList<>(list)) { diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/HttpPostMultipart.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/HttpPostMultipart.java deleted file mode 100644 index 688d5b7..0000000 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/HttpPostMultipart.java +++ /dev/null @@ -1,144 +0,0 @@ -/* - * LICENSE - * AdvancedPlHide - * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 - * ------------- - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program. If not, see - * . - * END - */ - -package tk.bluetree242.advancedplhide.utils; - -import java.io.*; -import java.net.HttpURLConnection; -import java.net.URL; -import java.net.URLConnection; -import java.util.Iterator; -import java.util.Map; -import java.util.UUID; - -public class HttpPostMultipart { - private static final String LINE = "\r\n"; - private final String boundary; - private HttpURLConnection httpConn; - private String charset; - private OutputStream outputStream; - private PrintWriter writer; - - /** - * This constructor initializes a new HTTP POST request with content type - * is set to multipart/form-data - * - * @param requestURL - * @param charset - * @param headers - * @throws IOException - */ - public HttpPostMultipart(String requestURL, String charset, Map headers) throws IOException { - this.charset = charset; - boundary = UUID.randomUUID().toString(); - URL url = new URL(requestURL); - httpConn = (HttpURLConnection) url.openConnection(); - httpConn.setUseCaches(false); - httpConn.setDoOutput(true); // indicates POST method - httpConn.setDoInput(true); - httpConn.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary); - if (headers != null && headers.size() > 0) { - Iterator it = headers.keySet().iterator(); - while (it.hasNext()) { - String key = it.next(); - String value = headers.get(key); - httpConn.setRequestProperty(key, value); - } - } - outputStream = httpConn.getOutputStream(); - writer = new PrintWriter(new OutputStreamWriter(outputStream, charset), true); - } - - /** - * Adds a form field to the request - * - * @param name field name - * @param value field value - */ - public void addFormField(String name, String value) { - writer.append("--" + boundary).append(LINE); - writer.append("Content-Disposition: form-data; name=\"" + name + "\"").append(LINE); - writer.append("Content-Type: text/plain; charset=" + charset).append(LINE); - writer.append(LINE); - writer.append(value).append(LINE); - writer.flush(); - } - - /** - * Adds a upload file section to the request - * - * @param fieldName - * @param uploadFile - * @throws IOException - */ - public void addFilePart(String fieldName, File uploadFile) - throws IOException { - String fileName = uploadFile.getName(); - writer.append("--" + boundary).append(LINE); - writer.append("Content-Disposition: form-data; name=\"" + fieldName + "\"; filename=\"" + fileName + "\"").append(LINE); - writer.append("Content-Type: " + URLConnection.guessContentTypeFromName(fileName)).append(LINE); - writer.append("Content-Transfer-Encoding: binary").append(LINE); - writer.append(LINE); - writer.flush(); - - FileInputStream inputStream = new FileInputStream(uploadFile); - byte[] buffer = new byte[4096]; - int bytesRead = -1; - while ((bytesRead = inputStream.read(buffer)) != -1) { - outputStream.write(buffer, 0, bytesRead); - } - outputStream.flush(); - inputStream.close(); - writer.append(LINE); - writer.flush(); - } - - /** - * Completes the request and receives response from the server. - * - * @return String as response in case the server returned - * status OK, otherwise an exception is thrown. - * @throws IOException - */ - public String finish() throws IOException { - String response = ""; - writer.flush(); - writer.append("--" + boundary + "--").append(LINE); - writer.close(); - - // checks server's status code first - int status = httpConn.getResponseCode(); - if (status == HttpURLConnection.HTTP_OK) { - ByteArrayOutputStream result = new ByteArrayOutputStream(); - byte[] buffer = new byte[1024]; - int length; - while ((length = httpConn.getInputStream().read(buffer)) != -1) { - result.write(buffer, 0, length); - } - response = result.toString(this.charset); - httpConn.disconnect(); - } else { - throw new IOException("Server returned non-OK status: " + status); - } - return response; - } -} From 51e877bf16bacc9a5143e967ed864cc4f1bf79a9 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 21:49:58 +0200 Subject: [PATCH 08/28] Improve tab completion for bungee & velocity --- .../bungee/listener/packet/PacketListener.java | 9 +++++---- .../velocity/listener/packet/PacketListener.java | 1 + 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java index 1fd22e4..fc80d49 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java @@ -72,20 +72,21 @@ public void packetSend(PacketSendEvent e) { TabCompleteResponse packet = e.packet(); String notCompleted = this.commandsWaiting.get(e.player().uniqueId()); if (notCompleted == null) notCompleted = "/"; + if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; if (legacy) { - if (!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + if (!notCompleted.contains(" ")) { StringCommandCompleterList list = new StringCommandCompleterList(packet.getCommands()); CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else { StringSubCommandCompleterList list = new StringSubCommandCompleterList(packet.getCommands(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { - if (!notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + if (!notCompleted.contains(" ")) { SuggestionCommandCompleterList list = new SuggestionCommandCompleterList(packet.getSuggestions()); CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission("plhide.whitelist-mode")); - } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(e.packet().getSuggestions(), notCompleted); CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.cancelled(true); diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java index 0c38b25..275fa1f 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java @@ -65,6 +65,7 @@ public void packetSend(PacketSendEvent e) { } String notCompleted = commandsWaiting.get(e.player().uniqueId()); if (notCompleted == null) notCompleted = "/"; + if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; commandsWaiting.remove(player.getUniqueId()); if (legacy) { if (!notCompleted.contains(" ") && notCompleted.startsWith("/")) { From 31fe6afbfb34fd51853cb736c24a6b856198a0b9 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Mon, 25 Jul 2022 23:51:38 +0200 Subject: [PATCH 09/28] fix 1.19 support (final bundle jar did not include re-obfuscated spigot nms --- Spigot/build.gradle.kts | 6 ++---- build.gradle | 6 ++++-- core/build.gradle | 1 + 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Spigot/build.gradle.kts b/Spigot/build.gradle.kts index 5696fcd..201b1dc 100644 --- a/Spigot/build.gradle.kts +++ b/Spigot/build.gradle.kts @@ -41,12 +41,10 @@ dependencies { implementation(project(":core")) } -java { - this.disableAutoTargetJvm() +tasks.build { + dependsOn(tasks.reobfJar) } - - diff --git a/build.gradle b/build.gradle index bf58728..d7ab9e9 100644 --- a/build.gradle +++ b/build.gradle @@ -35,6 +35,8 @@ def buildNumber = project.properties['buildNumber'] == null ? "NONE" : project.p System.out.println("Build Number is " + buildNumber) def commit = project.properties['commit'] == null ? "NONE" : project.properties['commit'] System.out.println("Commit Hash is " + commit) +build.finalizedBy shadowJar + subprojects { apply plugin: 'java' apply plugin: 'maven-publish' @@ -57,6 +59,7 @@ subprojects { } java { toolchain.languageVersion.set(JavaLanguageVersion.of(17)) + disableAutoTargetJvm() } compileJava { options.release.set(8) @@ -67,7 +70,7 @@ shadowJar { } dependencies { - implementation project(":Spigot") + implementation project([path: ':Spigot', configuration: 'reobf']) implementation project(":Velocity") implementation project(":Bungee") } @@ -83,4 +86,3 @@ publishing { - diff --git a/core/build.gradle b/core/build.gradle index c14e189..4e845a7 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -40,6 +40,7 @@ rootProject.allprojects { relocate 'space.arim.dazzleconf', "tk.bluetree242.advancedplhide.dependencies.dazzleconf" relocate 'org.yaml.snakeyaml', "tk.bluetree242.advancedplhide.dependencies.yaml" relocate 'org.json', "tk.bluetree242.advancedplhide.dependencies.json" + relocate 'com.github.kevinsawicki.http', 'tk.bluetree242.advancedplhide.dependencies.http' } } From 92c86b65f97a9c9b010ef4bebdcc99a91af5e583 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 00:20:12 +0200 Subject: [PATCH 10/28] always run shadowJar --- build.gradle | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index d7ab9e9..2e9dfb7 100644 --- a/build.gradle +++ b/build.gradle @@ -30,16 +30,15 @@ repositories { mavenCentral() } - def buildNumber = project.properties['buildNumber'] == null ? "NONE" : project.properties['buildNumber'] System.out.println("Build Number is " + buildNumber) def commit = project.properties['commit'] == null ? "NONE" : project.properties['commit'] System.out.println("Commit Hash is " + commit) -build.finalizedBy shadowJar - +build.dependsOn shadowJar subprojects { apply plugin: 'java' apply plugin: 'maven-publish' + apply plugin: 'com.github.johnrengelman.shadow' project.jar { archivesBaseName = 'AdvancedPlHide-' + project.name } From 5c50d163af53321b0735117bfbdb0a36efa5c49f Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 02:28:27 +0200 Subject: [PATCH 11/28] little change on updatecheck prefix --- .../advancedplhide/bungee/listener/event/EventListener.java | 2 +- .../advancedplhide/spigot/listener/event/EventListener.java | 4 ++-- .../advancedplhide/velocity/listener/event/EventListener.java | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java index 4cc7b7c..1d6a06e 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java @@ -65,7 +65,7 @@ public void onPlayerJoin(PostLoginEvent e) { if (result == null) return; String msg = result.getVersionsBehind() == 0 ? null : ChatColor.translateAlternateColorCodes('&', "&e[APH-&2Bungee&e] " + Constants.DEFAULT_BEHIND.replace("{versions}", result.getVersionsBehind() + "").replace("{download}", result.getUpdateUrl())); if (result.getMessage() != null) { - msg = ChatColor.translateAlternateColorCodes('&', "&e[APH-&2Bungee&e] &c" + result.getMessage()); + msg = ChatColor.translateAlternateColorCodes('&', "&e[APH&2Bungee&e] &c" + result.getMessage()); } if (msg != null) { e.getPlayer().sendMessage(msg); diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java index 7dc06fb..d301f98 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java @@ -54,11 +54,11 @@ public void onPlayerCommand(PlayerCommandPreprocessEvent e) { public void onPlayerJoin(PlayerJoinEvent e) { if (e.getPlayer().hasPermission("plhide.updatechecker")) { Bukkit.getScheduler().runTask(core, () -> { - UpdateCheckResult result = Platform.get().get().updateCheck(); + UpdateCheckResult result = Platform.get().updateCheck(); if (result == null) return; String msg = result.getVersionsBehind() == 0 ? null : ChatColor.translateAlternateColorCodes('&', "&e[APH-&2Spigot&e] " + Constants.DEFAULT_BEHIND.replace("{versions}", result.getVersionsBehind() + "").replace("{download}", result.getUpdateUrl())); if (result.getMessage() != null) { - msg = ChatColor.translateAlternateColorCodes('&', "&e[APH-&2Spigot&e] &c" + result.getMessage()); + msg = ChatColor.translateAlternateColorCodes('&', "&e[APH&2Spigot&e] &c" + result.getMessage()); } if (msg != null) { e.getPlayer().sendMessage(msg); diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java index 6787ae6..cfff69e 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java @@ -47,7 +47,7 @@ public void onPlayerJoin(PostLoginEvent e) { if (result == null) return; Component msg = result.getVersionsBehind() == 0 ? null : LegacyComponentSerializer.legacy('&').deserialize("&e[APH-&2Velocity&e] " + Constants.DEFAULT_BEHIND.replace("{versions}", result.getVersionsBehind() + "").replace("{download}", result.getUpdateUrl())); if (result.getMessage() != null) { - msg = LegacyComponentSerializer.legacy('&').deserialize("&e[APH-&2Velocity&e] &c" + result.getMessage()); + msg = LegacyComponentSerializer.legacy('&').deserialize("&e[APH&2Velocity&e] &c" + result.getMessage()); } if (msg != null) { msg = msg.clickEvent(ClickEvent.clickEvent(ClickEvent.Action.OPEN_URL, result.getUpdateUrl())); From 15aefc29cc4ce5ec452fc91ba141e2293d59273d Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 02:30:53 +0200 Subject: [PATCH 12/28] update copyright --- .../bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java | 2 +- .../advancedplhide/bungee/AdvancedPlHideCommand.java | 2 +- .../main/java/tk/bluetree242/advancedplhide/bungee/Metrics.java | 2 +- .../bungee/impl/completer/StringCommandCompleter.java | 2 +- .../bungee/impl/completer/StringCommandCompleterList.java | 2 +- .../bungee/impl/subcompleter/StringSubCommandCompleter.java | 2 +- .../bungee/impl/subcompleter/StringSubCommandCompleterList.java | 2 +- .../advancedplhide/bungee/listener/event/EventListener.java | 2 +- .../advancedplhide/bungee/listener/packet/PacketListener.java | 2 +- Spigot/build.gradle.kts | 2 +- .../advancedplhide/spigot/AdvancedPlHideCommand.java | 2 +- .../bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java | 2 +- .../main/java/tk/bluetree242/advancedplhide/spigot/Metrics.java | 2 +- .../spigot/impl/completer/StringCommandCompleter.java | 2 +- .../spigot/impl/completer/StringCommandCompleterList.java | 2 +- .../spigot/impl/subcompleter/StringSubCommandCompleter.java | 2 +- .../spigot/impl/subcompleter/StringSubCommandCompleterList.java | 2 +- .../advancedplhide/spigot/listener/event/EventListener.java | 2 +- .../advancedplhide/spigot/listener/packet/ModernUtils.java | 2 +- .../advancedplhide/spigot/listener/packet/PacketListener.java | 2 +- .../advancedplhide/velocity/AdvancedPlHideCommand.java | 2 +- .../advancedplhide/velocity/AdvancedPlHideVelocity.java | 2 +- .../java/tk/bluetree242/advancedplhide/velocity/Metrics.java | 2 +- .../velocity/impl/completer/OfferCommandCompleter.java | 2 +- .../velocity/impl/completer/OfferCompleterList.java | 2 +- .../velocity/impl/subcompleter/OfferSubCommandCompleter.java | 2 +- .../impl/subcompleter/OfferSubCommandCompleterList.java | 2 +- .../advancedplhide/velocity/listener/event/EventListener.java | 2 +- .../advancedplhide/velocity/listener/packet/PacketListener.java | 2 +- .../main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java | 2 +- .../java/tk/bluetree242/advancedplhide/CommandCompleter.java | 2 +- .../tk/bluetree242/advancedplhide/CommandCompleterList.java | 2 +- .../java/tk/bluetree242/advancedplhide/CompleterModifier.java | 2 +- core/src/main/java/tk/bluetree242/advancedplhide/Group.java | 2 +- core/src/main/java/tk/bluetree242/advancedplhide/Platform.java | 2 +- .../java/tk/bluetree242/advancedplhide/SubCommandCompleter.java | 2 +- .../tk/bluetree242/advancedplhide/SubCommandCompleterList.java | 2 +- .../java/tk/bluetree242/advancedplhide/config/ConfManager.java | 2 +- .../main/java/tk/bluetree242/advancedplhide/config/Config.java | 2 +- .../tk/bluetree242/advancedplhide/config/DefaultGroupImpl.java | 2 +- .../advancedplhide/config/subcompleter/ConfSubCompleter.java | 2 +- .../config/subcompleter/ConfSubCompleterList.java | 2 +- .../advancedplhide/exceptions/ConfigurationLoadException.java | 2 +- .../advancedplhide/impl/completer/RootCommandCompleter.java | 2 +- .../advancedplhide/impl/completer/RootNodeCommandCompleter.java | 2 +- .../impl/completer/SuggestionCommandCompleter.java | 2 +- .../impl/completer/SuggestionCommandCompleterList.java | 2 +- .../bluetree242/advancedplhide/impl/group/GroupCompleter.java | 2 +- .../impl/subcompleter/SuggestionSubCommandCompleter.java | 2 +- .../impl/subcompleter/SuggestionSubCommandCompleterList.java | 2 +- .../advancedplhide/impl/version/UpdateCheckResult.java | 2 +- .../java/tk/bluetree242/advancedplhide/utils/Constants.java | 2 +- .../main/java/tk/bluetree242/advancedplhide/utils/UsedMap.java | 2 +- gradle.properties | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 2 +- 56 files changed, 56 insertions(+), 56 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java index 55868dc..46057af 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java index c6b8109..fcb170a 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/Metrics.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/Metrics.java index 494b6ab..7162a0d 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/Metrics.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/Metrics.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleter.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleter.java index fdd181c..97ee2a2 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleter.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleterList.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleterList.java index c8f60a8..73b8834 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleterList.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/completer/StringCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleter.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleter.java index e74acb2..40b24cb 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleter.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java index 1fbe604..0d5799e 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/impl/subcompleter/StringSubCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java index 1d6a06e..36aa004 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java index fc80d49..df7670d 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/build.gradle.kts b/Spigot/build.gradle.kts index 201b1dc..0e95f6a 100644 --- a/Spigot/build.gradle.kts +++ b/Spigot/build.gradle.kts @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java index f87469a..c912218 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java index ee1b71d..a14fc6b 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/Metrics.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/Metrics.java index a6ee52b..91fffd5 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/Metrics.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/Metrics.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleter.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleter.java index b7862c6..90b2bbb 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleter.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleterList.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleterList.java index 1330062..fa84b76 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleterList.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/completer/StringCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleter.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleter.java index dfdf111..9741fa5 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleter.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java index e5da98c..e1b0afd 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/impl/subcompleter/StringSubCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java index d301f98..84146ac 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java index ad89c02..67b3593 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/ModernUtils.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java index c1c35c5..7f482bd 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java index 1c93f4d..5f9ffbf 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index c4e0e4e..4545044 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/Metrics.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/Metrics.java index d34f838..f9afb8c 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/Metrics.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/Metrics.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCommandCompleter.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCommandCompleter.java index dc095e7..fa6cda3 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCommandCompleter.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCompleterList.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCompleterList.java index a119086..d73ebfb 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCompleterList.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/completer/OfferCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleter.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleter.java index 97a95a5..1515e80 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleter.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java index dc221c2..070021e 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/impl/subcompleter/OfferSubCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java index cfff69e..e2a91e0 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java index 275fa1f..65012c4 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java b/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java index 439df95..9ea0687 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleter.java index bb4548b..67cb0f4 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java index 1c4c829..a2caa47 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java index 0edf610..b6536e9 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Group.java b/core/src/main/java/tk/bluetree242/advancedplhide/Group.java index 0084b16..8a6e02d 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Group.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Group.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java index 23add16..71a101e 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleter.java index 31b3fa0..c755119 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java index 23106b6..d5c717e 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/SubCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/ConfManager.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/ConfManager.java index 165cfae..29b18ef 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/ConfManager.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/ConfManager.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java index a3e05ac..014d3c3 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/DefaultGroupImpl.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/DefaultGroupImpl.java index 811066c..71a09a3 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/DefaultGroupImpl.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/DefaultGroupImpl.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java index 16bb15e..d4946ce 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java index b7e1641..a3db847 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java b/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java index 52bc847..b5a30a0 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootCommandCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootCommandCompleter.java index beeecc9..2a14326 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootCommandCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootNodeCommandCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootNodeCommandCompleter.java index ebbf153..e622f9d 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootNodeCommandCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/RootNodeCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleter.java index b452ec9..dbc55d5 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleterList.java index 3f04d8f..de0b53d 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/completer/SuggestionCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/group/GroupCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/group/GroupCompleter.java index 159b12a..8709907 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/group/GroupCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/group/GroupCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleter.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleter.java index c8d04f0..ffd15fc 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleter.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleter.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java index 548e2da..dbe618d 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/subcompleter/SuggestionSubCommandCompleterList.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/impl/version/UpdateCheckResult.java b/core/src/main/java/tk/bluetree242/advancedplhide/impl/version/UpdateCheckResult.java index b8ad916..1c2c513 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/impl/version/UpdateCheckResult.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/impl/version/UpdateCheckResult.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java index 6b25428..76692c0 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/UsedMap.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/UsedMap.java index 0158901..38d3114 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/UsedMap.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/utils/UsedMap.java @@ -2,7 +2,7 @@ * LICENSE * AdvancedPlHide * ------------- - * Copyright (C) 2021 - 2021 BlueTree242 + * Copyright (C) 2021 - 2022 BlueTree242 * ------------- * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as diff --git a/gradle.properties b/gradle.properties index 316817c..7b9dfd9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ # LICENSE # AdvancedPlHide # ------------- -# Copyright (C) 2021 - 2021 BlueTree242 +# Copyright (C) 2021 - 2022 BlueTree242 # ------------- # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c95cec4..ec010e6 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -2,7 +2,7 @@ # LICENSE # AdvancedPlHide # ------------- -# Copyright (C) 2021 - 2021 BlueTree242 +# Copyright (C) 2021 - 2022 BlueTree242 # ------------- # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as diff --git a/gradlew b/gradlew index 84a186a..748ea29 100644 --- a/gradlew +++ b/gradlew @@ -4,7 +4,7 @@ # LICENSE # AdvancedPlHide # ------------- -# Copyright (C) 2021 - 2021 BlueTree242 +# Copyright (C) 2021 - 2022 BlueTree242 # ------------- # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as From 7661a6360ead29bb2ac2427ad15f680c1f9bc5fb Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 03:14:39 +0200 Subject: [PATCH 13/28] config comment changes --- .../main/java/tk/bluetree242/advancedplhide/config/Config.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java index 014d3c3..e34e70c 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/Config.java @@ -31,7 +31,7 @@ import java.util.List; import java.util.Map; -@ConfHeader("# https://github.com/BlueTree242/AdvancedPlHide/wiki/") +@ConfHeader("# You should read this before doing anything with the plugin, to understand how stuff work: https://github.com/BlueTree242/AdvancedPlHide/wiki/") public interface Config { @AnnotationBasedSorter.Order(10) From 2a5dd31b91d97ae3d19da6948c6db495a959d175 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 03:30:04 +0200 Subject: [PATCH 14/28] always shadowJar also for sub projects --- build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle b/build.gradle index 2e9dfb7..6e188d2 100644 --- a/build.gradle +++ b/build.gradle @@ -63,6 +63,7 @@ subprojects { compileJava { options.release.set(8) } + build.dependsOn shadowJar } shadowJar { classifier '' From 41342fad3b67822ceb43e3b0337be88b2278e01b Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 03:41:04 +0200 Subject: [PATCH 15/28] no removing of notCompleted from the map when retrieved, leave it there --- .../advancedplhide/spigot/listener/packet/PacketListener.java | 1 - .../advancedplhide/velocity/listener/packet/PacketListener.java | 1 - 2 files changed, 2 deletions(-) diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java index 7f482bd..57e61fe 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java @@ -64,7 +64,6 @@ public void onPacketSending(PacketEvent e) { private void onTabcomplete(PacketEvent e) { String notCompleted = this.commandsWaiting.get(e.getPlayer().getUniqueId()); - commandsWaiting.remove(e.getPlayer().getUniqueId()); if (notCompleted == null) notCompleted = "/"; if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; if (!core.isLegacy()) { diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java index 65012c4..64308ef 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java @@ -66,7 +66,6 @@ public void packetSend(PacketSendEvent e) { String notCompleted = commandsWaiting.get(e.player().uniqueId()); if (notCompleted == null) notCompleted = "/"; if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; - commandsWaiting.remove(player.getUniqueId()); if (legacy) { if (!notCompleted.contains(" ") && notCompleted.startsWith("/")) { OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), legacy); From beba3a5494082b5449349c6946129fabb7379a62 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 03:44:11 +0200 Subject: [PATCH 16/28] improve description & fix description in bungee and spigot being description of resources task not the project --- build.gradle | 2 +- gradle.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 6e188d2..4d3d209 100644 --- a/build.gradle +++ b/build.gradle @@ -51,7 +51,7 @@ subprojects { filter ReplaceTokens, tokens: [version : version, build : buildNumber, commit : commit, - description: description, + description: project.description, buildDate : System.currentTimeMillis() + "" ] } diff --git a/gradle.properties b/gradle.properties index 7b9dfd9..735f3d6 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,4 +22,4 @@ group=tk.bluetree242 name=AdvancedPlHide version=2.3-DEV -description=Remove Most ways of finding your plugins on your minecraft Server! \ No newline at end of file +description=A Plugin that Allows you to remove parts of tab completion, and hide plugins from the tabcompleter! \ No newline at end of file From fa41948276810b28e893df47dcbb3d1b5f2e9a06 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 11:57:29 +0200 Subject: [PATCH 17/28] less class name duplicates and some code reformat --- .../bungee/AdvancedPlHideBungee.java | 16 ++++------ ...Listener.java => BungeeEventListener.java} | 4 +-- ...istener.java => BungeePacketListener.java} | 12 +++---- .../spigot/AdvancedPlHideSpigot.java | 22 ++++--------- ...Listener.java => SpigotEventListener.java} | 4 +-- ...istener.java => SpigotPacketListener.java} | 6 ++-- .../velocity/AdvancedPlHideCommand.java | 32 ++++++++----------- .../velocity/AdvancedPlHideVelocity.java | 17 +++------- ...stener.java => VelocityEventListener.java} | 2 +- ...tener.java => VelocityPacketListener.java} | 8 ++--- .../tk/bluetree242/advancedplhide/Group.java | 2 +- .../bluetree242/advancedplhide/Platform.java | 4 +-- .../ConfigurationLoadException.java | 4 +-- 13 files changed, 53 insertions(+), 80 deletions(-) rename Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/{EventListener.java => BungeeEventListener.java} (96%) rename Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/{PacketListener.java => BungeePacketListener.java} (92%) rename Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/{EventListener.java => SpigotEventListener.java} (96%) rename Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/{PacketListener.java => SpigotPacketListener.java} (97%) rename Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/{EventListener.java => VelocityEventListener.java} (99%) rename Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/{PacketListener.java => VelocityPacketListener.java} (93%) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java index 46057af..320a4ae 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java @@ -31,8 +31,8 @@ import net.md_5.bungee.api.plugin.Plugin; import tk.bluetree242.advancedplhide.Group; import tk.bluetree242.advancedplhide.Platform; -import tk.bluetree242.advancedplhide.bungee.listener.event.EventListener; -import tk.bluetree242.advancedplhide.bungee.listener.packet.PacketListener; +import tk.bluetree242.advancedplhide.bungee.listener.event.BungeeEventListener; +import tk.bluetree242.advancedplhide.bungee.listener.packet.BungeePacketListener; import tk.bluetree242.advancedplhide.config.ConfManager; import tk.bluetree242.advancedplhide.config.Config; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; @@ -42,15 +42,12 @@ import java.io.IOException; import java.io.UncheckedIOException; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; public class AdvancedPlHideBungee extends Plugin implements Listener { public Config config; protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); - private PacketListener listener; - private Map map = new HashMap<>(); + private BungeePacketListener listener; private List groups = new ArrayList<>(); public static Group getGroupForPlayer(ProxiedPlayer player) { @@ -62,15 +59,14 @@ public static Group getGroupForPlayer(ProxiedPlayer player) { groups.add(group); } } - Group group = groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); - return group; + return groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); } public void onEnable() { reloadConfig(); - Protocolize.listenerProvider().registerListener(listener = new PacketListener(this)); + Protocolize.listenerProvider().registerListener(listener = new BungeePacketListener()); Platform.setPlatform(new Impl()); - getProxy().getPluginManager().registerListener(this, new EventListener(this)); + getProxy().getPluginManager().registerListener(this, new BungeeEventListener(this)); ProxyServer.getInstance().getPluginManager().registerCommand(this, new AdvancedPlHideCommand(this)); new Metrics(this, 13709); ProxyServer.getInstance().getConsole().sendMessage(ChatColor.translateAlternateColorCodes('&', Constants.startupMessage())); diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java similarity index 96% rename from Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java rename to Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java index 36aa004..889bce4 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/EventListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java @@ -34,11 +34,11 @@ import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; -public class EventListener implements Listener { +public class BungeeEventListener implements Listener { private final AdvancedPlHideBungee core; - public EventListener(AdvancedPlHideBungee core) { + public BungeeEventListener(AdvancedPlHideBungee core) { this.core = core; } diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java similarity index 92% rename from Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java rename to Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java index df7670d..3ea7768 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/PacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java @@ -44,15 +44,13 @@ import java.util.UUID; -public class PacketListener extends AbstractPacketListener { +public class BungeePacketListener extends AbstractPacketListener { private final UsedMap commandsWaiting = new UsedMap<>(); - private final AdvancedPlHideBungee core; - public PacketListener(AdvancedPlHideBungee core) { + public BungeePacketListener() { super(TabCompleteResponse.class, Direction.UPSTREAM, 0); - this.core = core; - Protocolize.listenerProvider().registerListener(new PacketListener.RequestListener()); - Protocolize.listenerProvider().registerListener(new PacketListener.CommandsListener()); + Protocolize.listenerProvider().registerListener(new BungeePacketListener.RequestListener()); + Protocolize.listenerProvider().registerListener(new CommandsListener()); } @@ -112,7 +110,7 @@ public void packetSend(PacketSendEvent e) { } } - public class CommandsListener extends AbstractPacketListener { + public static class CommandsListener extends AbstractPacketListener { protected CommandsListener() { super(Commands.class, Direction.UPSTREAM, 0); diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java index a14fc6b..0ab7862 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java @@ -34,16 +34,14 @@ import org.bukkit.event.Listener; import org.bukkit.plugin.Plugin; import org.bukkit.plugin.java.JavaPlugin; -import tk.bluetree242.advancedplhide.CommandCompleter; import tk.bluetree242.advancedplhide.Group; import tk.bluetree242.advancedplhide.Platform; import tk.bluetree242.advancedplhide.config.ConfManager; import tk.bluetree242.advancedplhide.config.Config; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; -import tk.bluetree242.advancedplhide.impl.group.GroupCompleter; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; -import tk.bluetree242.advancedplhide.spigot.listener.event.EventListener; -import tk.bluetree242.advancedplhide.spigot.listener.packet.PacketListener; +import tk.bluetree242.advancedplhide.spigot.listener.event.SpigotEventListener; +import tk.bluetree242.advancedplhide.spigot.listener.packet.SpigotPacketListener; import tk.bluetree242.advancedplhide.utils.Constants; import java.io.IOException; @@ -57,7 +55,7 @@ public class AdvancedPlHideSpigot extends JavaPlugin implements Listener { public Config config; protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); private ProtocolManager protocolManager; - private PacketListener listener = new PacketListener(this); + private final SpigotPacketListener listener = new SpigotPacketListener(this); private boolean legacy = false; private List groups; @@ -70,8 +68,7 @@ public static Group getGroupForPlayer(Player player) { groups.add(group); } } - Group group = groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); - return group; + return groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); } public void onLoad() { @@ -81,8 +78,8 @@ public void onLoad() { public void onEnable() { reloadConfig(); - protocolManager.addPacketListener(new PacketListener(this)); - getServer().getPluginManager().registerEvents(new EventListener(this), this); + protocolManager.addPacketListener(new SpigotPacketListener(this)); + getServer().getPluginManager().registerEvents(new SpigotEventListener(this), this); String str = Bukkit.getServer().getClass().getPackage().getName(); str = str.substring(str.lastIndexOf("v")); legacy = (str.equals("v1_8_R3") || str.contains("v1_9_R") || str.contains("v1_10_R1") || str.contains("v1_11_R1") || str.contains("v1_12_R1")); @@ -137,10 +134,6 @@ public List getGroups() { public void loadGroups() { groups = new ArrayList<>(); config.groups().forEach((name, val) -> { - List tabcomplete = new ArrayList<>(); - for (String s : val.tabcomplete()) { - tabcomplete.add(new GroupCompleter(s)); - } if (getGroup(name) == null) groups.add(new Group(name, val.tabcomplete())); else { @@ -173,8 +166,7 @@ public CommandMap getCommandMap() { final Field bukkitCommandMap = Bukkit.getServer().getClass().getDeclaredField("commandMap"); bukkitCommandMap.setAccessible(true); - CommandMap commandMap = (CommandMap) bukkitCommandMap.get(Bukkit.getServer()); - return commandMap; + return (CommandMap) bukkitCommandMap.get(Bukkit.getServer()); } catch (Exception e) { return null; } diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java similarity index 96% rename from Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java rename to Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java index 84146ac..d4a4757 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/EventListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java @@ -33,10 +33,10 @@ import tk.bluetree242.advancedplhide.spigot.AdvancedPlHideSpigot; import tk.bluetree242.advancedplhide.utils.Constants; -public class EventListener implements Listener { +public class SpigotEventListener implements Listener { private final AdvancedPlHideSpigot core; - public EventListener(AdvancedPlHideSpigot core) { + public SpigotEventListener(AdvancedPlHideSpigot core) { this.core = core; } diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java similarity index 97% rename from Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java rename to Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java index 57e61fe..8c50b77 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/PacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java @@ -43,12 +43,12 @@ import java.util.Arrays; import java.util.UUID; -public class PacketListener extends PacketAdapter { +public class SpigotPacketListener extends PacketAdapter { private final UsedMap commandsWaiting = new UsedMap<>(); - private AdvancedPlHideSpigot core; + private final AdvancedPlHideSpigot core; - public PacketListener(AdvancedPlHideSpigot core) { + public SpigotPacketListener(AdvancedPlHideSpigot core) { super(core, ListenerPriority.HIGHEST, Arrays.asList(PacketType.Play.Server.TAB_COMPLETE, PacketType.Play.Client.TAB_COMPLETE, PacketType.Play.Server.COMMANDS), ListenerOptions.ASYNC); this.core = core; } diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java index 5f9ffbf..bada2f2 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java @@ -35,7 +35,7 @@ import java.util.concurrent.CompletableFuture; public class AdvancedPlHideCommand implements SimpleCommand { - private AdvancedPlHideVelocity core; + private final AdvancedPlHideVelocity core; public AdvancedPlHideCommand(AdvancedPlHideVelocity core) { this.core = core; @@ -49,27 +49,23 @@ public void execute(Invocation e) { sender.sendMessage(LegacyComponentSerializer.legacy('&').deserialize("&aRunning AdvancedPlHide v.&e" + AdvancedPlHideVelocity.VERSION)); return; } else { - if (args.length >= 1) { - if (args[0].equalsIgnoreCase("reload")) { - if (!sender.hasPermission("plhide.reload")) { - sender.sendMessage(Component.text("You don't have permission to run this command").color(NamedTextColor.RED)); - return; - } else { - core.server.getScheduler().buildTask(core, () -> { - try { - Platform.get().reloadConfig(); - sender.sendMessage(Component.text("Configuration Reloaded").color(NamedTextColor.GREEN)); - } catch (ConfigurationLoadException ev) { - sender.sendMessage(Component.text("Could not reload " + ev.getConfigName()).color(NamedTextColor.RED)); - } - }).schedule(); - return; - } + if (args[0].equalsIgnoreCase("reload")) { + if (!sender.hasPermission("plhide.reload")) { + sender.sendMessage(Component.text("You don't have permission to run this command").color(NamedTextColor.RED)); + } else { + core.server.getScheduler().buildTask(core, () -> { + try { + Platform.get().reloadConfig(); + sender.sendMessage(Component.text("Configuration Reloaded").color(NamedTextColor.GREEN)); + } catch (ConfigurationLoadException ev) { + sender.sendMessage(Component.text("Could not reload " + ev.getConfigName()).color(NamedTextColor.RED)); + } + }).schedule(); } + return; } } sender.sendMessage(Component.text("SubCommand not found").color(NamedTextColor.RED)); - return; } @Override diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index 4545044..a5e0ee3 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -33,17 +33,15 @@ import dev.simplix.protocolize.api.Protocolize; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.slf4j.Logger; -import tk.bluetree242.advancedplhide.CommandCompleter; import tk.bluetree242.advancedplhide.Group; import tk.bluetree242.advancedplhide.Platform; import tk.bluetree242.advancedplhide.config.ConfManager; import tk.bluetree242.advancedplhide.config.Config; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; -import tk.bluetree242.advancedplhide.impl.group.GroupCompleter; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; -import tk.bluetree242.advancedplhide.velocity.listener.event.EventListener; -import tk.bluetree242.advancedplhide.velocity.listener.packet.PacketListener; +import tk.bluetree242.advancedplhide.velocity.listener.event.VelocityEventListener; +import tk.bluetree242.advancedplhide.velocity.listener.packet.VelocityPacketListener; import javax.inject.Inject; import java.io.ByteArrayOutputStream; @@ -91,8 +89,7 @@ public static Group getGroupForPlayer(Player player) { groups.add(group); } } - Group group = groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); - return group; + return groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); } private static byte[] readFully(InputStream input) throws IOException { @@ -108,10 +105,6 @@ private static byte[] readFully(InputStream input) throws IOException { public void loadGroups() { groups = new ArrayList<>(); config.groups().forEach((name, val) -> { - List tabcomplete = new ArrayList<>(); - for (String s : val.tabcomplete()) { - tabcomplete.add(new GroupCompleter(s)); - } if (getGroup(name) == null) groups.add(new Group(name, val.tabcomplete())); else { @@ -166,8 +159,8 @@ public void onProxyInitialization(ProxyInitializeEvent e) { .aliases("aphv", "apv", "plhidev", "phv") .build(); server.getCommandManager().register(meta, new AdvancedPlHideCommand(this)); - server.getEventManager().register(this, new EventListener()); - Protocolize.listenerProvider().registerListener(new PacketListener(this)); + server.getEventManager().register(this, new VelocityEventListener()); + Protocolize.listenerProvider().registerListener(new VelocityPacketListener(this)); metricsFactory.make(this, 13708); server.getConsoleCommandSource().sendMessage(LegacyComponentSerializer.legacy('&').deserialize(Constants.startupMessage())); performStartUpdateCheck(); diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java similarity index 99% rename from Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java rename to Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java index e2a91e0..82f4a17 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/EventListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java @@ -37,7 +37,7 @@ import tk.bluetree242.advancedplhide.utils.Constants; import tk.bluetree242.advancedplhide.velocity.AdvancedPlHideVelocity; -public class EventListener { +public class VelocityEventListener { @Subscribe public void onPlayerJoin(PostLoginEvent e) { diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java similarity index 93% rename from Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java rename to Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java index 64308ef..d6d1616 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/PacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java @@ -39,14 +39,14 @@ import java.util.UUID; -public class PacketListener extends AbstractPacketListener { +public class VelocityPacketListener extends AbstractPacketListener { private final UsedMap commandsWaiting = new UsedMap<>(); private final AdvancedPlHideVelocity core; - public PacketListener(AdvancedPlHideVelocity core) { + public VelocityPacketListener(AdvancedPlHideVelocity core) { super(TabCompleteResponse.class, Direction.UPSTREAM, 0); this.core = core; - Protocolize.listenerProvider().registerListener(new PacketListener.RequestListener()); + Protocolize.listenerProvider().registerListener(new VelocityPacketListener.RequestListener()); } @@ -59,7 +59,7 @@ public void packetReceive(PacketReceiveEvent e) { public void packetSend(PacketSendEvent e) { boolean legacy = e.player().protocolVersion() <= 340; Player player = core.server.getPlayer(e.player().uniqueId()).orElse(null); - if (!player.isActive()) { + if (player == null || !player.isActive()) { e.cancelled(true); return; } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Group.java b/core/src/main/java/tk/bluetree242/advancedplhide/Group.java index 8a6e02d..62d9e7f 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Group.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Group.java @@ -38,7 +38,7 @@ public class Group { private final String name; private final List completers; private final ConfSubCompleterList subCompleters; - private List originCompleters; + private final List originCompleters; public Group(String name, List completers) { this.originCompleters = completers; diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java index 71a101e..8b46f1b 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java @@ -62,9 +62,7 @@ public static void setPlatform(Platform val) { public Group mergeGroups(List groups) { List tabcomplete = new ArrayList<>(); for (Group group : groups) { - for (String completer : group.getOriginCompleters()) { - tabcomplete.add(completer); - } + tabcomplete.addAll(group.getOriginCompleters()); } List names = new ArrayList<>(); for (Group group : groups) { diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java b/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java index b5a30a0..70d759d 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/exceptions/ConfigurationLoadException.java @@ -26,8 +26,8 @@ public class ConfigurationLoadException extends RuntimeException { - private Throwable cause; - private String confname; + private final Throwable cause; + private final String confname; public ConfigurationLoadException(Throwable ex, String confname) { this.cause = ex; From 2db8e1d9f22f293d3f8a0357f0c223d9f71c5416 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 12:02:43 +0200 Subject: [PATCH 18/28] include build number in startup message --- .../main/java/tk/bluetree242/advancedplhide/utils/Constants.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java index 76692c0..52fbcaa 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java @@ -37,6 +37,7 @@ public static String startupMessage() { "| &cName: &rAdvancedPlHide\n&r" + "| &cDevelopers: &rBlueTree242\n&r" + "| &cVersion: &r" + Platform.get().getCurrentVersion() + "\n&r" + + (Platform.get().getCurrentBuild() != null ? "| &cBuild Number: &r#" + Platform.get().getCurrentBuild() + "\n&r" : "") + "| &cRunning on: &r" + Platform.get().getType().getName() + "\n&r" + "| &cSupport:\n&r" + "| &cGithub: &rhttps://github.com/BlueTree242/AdvancedPlHide/issues\n" + From 21519817c06747ef4e83277ce527ceeffbbd6ccd Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 12:03:56 +0200 Subject: [PATCH 19/28] fix build number always showing even if none in startup message --- .../java/tk/bluetree242/advancedplhide/utils/Constants.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java index 52fbcaa..4498479 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java @@ -37,7 +37,7 @@ public static String startupMessage() { "| &cName: &rAdvancedPlHide\n&r" + "| &cDevelopers: &rBlueTree242\n&r" + "| &cVersion: &r" + Platform.get().getCurrentVersion() + "\n&r" + - (Platform.get().getCurrentBuild() != null ? "| &cBuild Number: &r#" + Platform.get().getCurrentBuild() + "\n&r" : "") + + (!Platform.get().getCurrentBuild().equals("NONE") ? "| &cBuild Number: &r#" + Platform.get().getCurrentBuild() + "\n&r" : "") + "| &cRunning on: &r" + Platform.get().getType().getName() + "\n&r" + "| &cSupport:\n&r" + "| &cGithub: &rhttps://github.com/BlueTree242/AdvancedPlHide/issues\n" + From d6a14898d07725b5a0dc74e0dcc272f245447b9f Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 12:09:08 +0200 Subject: [PATCH 20/28] small code improvements --- .../listener/packet/VelocityPacketListener.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java index d6d1616..e57a824 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java @@ -67,19 +67,19 @@ public void packetSend(PacketSendEvent e) { if (notCompleted == null) notCompleted = "/"; if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; if (legacy) { - if (!notCompleted.contains(" ") && notCompleted.startsWith("/")) { - OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), legacy); + if (!notCompleted.contains(" ") ) { + OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), true); CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { - if ((!notCompleted.contains(" ") && notCompleted.trim().startsWith("/"))) { - OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), legacy); + if ((!notCompleted.contains(" "))) { + OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), false); CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - } else if (notCompleted.contains(" ") && notCompleted.trim().startsWith("/")) { + } else { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); From 4d16590fc2cbab5d4b317119e948b6f909bd832b Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 12:10:06 +0200 Subject: [PATCH 21/28] full code reformat --- .../listener/packet/BungeePacketListener.java | 40 +++++++++---------- .../spigot/AdvancedPlHideSpigot.java | 2 +- .../packet/VelocityPacketListener.java | 2 +- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java index 3ea7768..32e41b3 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java @@ -75,7 +75,7 @@ public void packetSend(PacketSendEvent e) { if (!notCompleted.contains(" ")) { StringCommandCompleterList list = new StringCommandCompleterList(packet.getCommands()); CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); - } else { + } else { StringSubCommandCompleterList list = new StringSubCommandCompleterList(packet.getCommands(), notCompleted); CompleterModifier.handleSubCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); @@ -84,7 +84,7 @@ public void packetSend(PacketSendEvent e) { if (!notCompleted.contains(" ")) { SuggestionCommandCompleterList list = new SuggestionCommandCompleterList(packet.getSuggestions()); CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission("plhide.whitelist-mode")); - } else { + } else { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(e.packet().getSuggestions(), notCompleted); CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.cancelled(true); @@ -92,24 +92,6 @@ public void packetSend(PacketSendEvent e) { } } - public class RequestListener extends AbstractPacketListener { - - protected RequestListener() { - super(TabCompleteRequest.class, Direction.UPSTREAM, Integer.MAX_VALUE); - } - - @Override - public void packetReceive(PacketReceiveEvent e) { - if (!e.cancelled()) - commandsWaiting.put(e.player().uniqueId(), e.packet().getCursor()); - } - - @Override - public void packetSend(PacketSendEvent e) { - - } - } - public static class CommandsListener extends AbstractPacketListener { protected CommandsListener() { @@ -133,5 +115,23 @@ public void packetSend(PacketSendEvent e) { CompleterModifier.handleCompleter(completer, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } } + + public class RequestListener extends AbstractPacketListener { + + protected RequestListener() { + super(TabCompleteRequest.class, Direction.UPSTREAM, Integer.MAX_VALUE); + } + + @Override + public void packetReceive(PacketReceiveEvent e) { + if (!e.cancelled()) + commandsWaiting.put(e.player().uniqueId(), e.packet().getCursor()); + } + + @Override + public void packetSend(PacketSendEvent e) { + + } + } } diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java index 0ab7862..a43e411 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java @@ -52,10 +52,10 @@ public class AdvancedPlHideSpigot extends JavaPlugin implements Listener { + private final SpigotPacketListener listener = new SpigotPacketListener(this); public Config config; protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); private ProtocolManager protocolManager; - private final SpigotPacketListener listener = new SpigotPacketListener(this); private boolean legacy = false; private List groups; diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java index e57a824..5caf723 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java @@ -67,7 +67,7 @@ public void packetSend(PacketSendEvent e) { if (notCompleted == null) notCompleted = "/"; if (!notCompleted.trim().startsWith("/")) notCompleted = "/" + notCompleted; if (legacy) { - if (!notCompleted.contains(" ") ) { + if (!notCompleted.contains(" ")) { OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), true); CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { From 4cc80b9d3a40794d21ab1f18419530ed8804a602 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 12:14:01 +0200 Subject: [PATCH 22/28] more warning fixes --- .../bungee/AdvancedPlHideCommand.java | 30 ++++++++----------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java index fcb170a..1dc83b1 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java @@ -45,26 +45,22 @@ public void execute(CommandSender sender, String[] args) { sender.sendMessage(ChatColor.GREEN + "Running AdvancedPlHide v." + ChatColor.YELLOW + core.getDescription().getVersion()); return; } else { - if (args.length >= 1) { - if (args[0].equalsIgnoreCase("reload")) { - if (!sender.hasPermission("plhide.reload")) { - sender.sendMessage(ChatColor.RED + "You don't have permission to run this command"); - return; - } else { - ProxyServer.getInstance().getScheduler().schedule(core, () -> { - try { - Platform.get().reloadConfig(); - sender.sendMessage(ChatColor.GREEN + "Configuration Reloaded"); - } catch (ConfigurationLoadException e) { - sender.sendMessage(ChatColor.RED + "Could not reload " + e.getConfigName()); - } - }, 0, TimeUnit.SECONDS); - return; - } + if (args[0].equalsIgnoreCase("reload")) { + if (!sender.hasPermission("plhide.reload")) { + sender.sendMessage(ChatColor.RED + "You don't have permission to run this command"); + } else { + ProxyServer.getInstance().getScheduler().schedule(core, () -> { + try { + Platform.get().reloadConfig(); + sender.sendMessage(ChatColor.GREEN + "Configuration Reloaded"); + } catch (ConfigurationLoadException e) { + sender.sendMessage(ChatColor.RED + "Could not reload " + e.getConfigName()); + } + }, 0, TimeUnit.SECONDS); } + return; } } sender.sendMessage(ChatColor.RED + "SubCommand not found"); - return; } } From 7fda0d299a331b077a9706222494355c7ef4b844 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 16:13:39 +0200 Subject: [PATCH 23/28] some code improvements --- Bungee/build.gradle | 1 - .../bungee/AdvancedPlHideBungee.java | 44 +++++++------------ .../bungee/AdvancedPlHideCommand.java | 4 +- .../listener/event/BungeeEventListener.java | 6 +-- .../listener/packet/BungeePacketListener.java | 17 +++---- Spigot/build.gradle.kts | 1 - .../spigot/AdvancedPlHideCommand.java | 32 +++++++------- .../spigot/AdvancedPlHideSpigot.java | 39 ++++++---------- .../listener/event/SpigotEventListener.java | 6 +-- .../listener/packet/SpigotPacketListener.java | 12 ++--- Velocity/build.gradle | 1 - .../velocity/AdvancedPlHideCommand.java | 4 +- .../velocity/AdvancedPlHideVelocity.java | 36 +++++---------- .../listener/event/VelocityEventListener.java | 10 +++-- .../packet/VelocityPacketListener.java | 8 ++-- .../advancedplhide/AdvancedPlHide.java | 6 +-- .../advancedplhide/CompleterModifier.java | 6 +-- .../{Platform.java => PlatformPlugin.java} | 35 ++++++++++----- .../advancedplhide/utils/Constants.java | 8 ++-- 19 files changed, 126 insertions(+), 150 deletions(-) rename core/src/main/java/tk/bluetree242/advancedplhide/{Platform.java => PlatformPlugin.java} (79%) diff --git a/Bungee/build.gradle b/Bungee/build.gradle index 6b24599..430f36e 100644 --- a/Bungee/build.gradle +++ b/Bungee/build.gradle @@ -18,7 +18,6 @@ repositories { dependencies { implementation project(":core") - implementation 'space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2' compileOnly 'dev.simplix:protocolize-api:2.1.0' compileOnly 'net.md-5:bungeecord-api:1.15-SNAPSHOT' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0' diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java index 320a4ae..be94f41 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java @@ -30,42 +30,37 @@ import net.md_5.bungee.api.plugin.Listener; import net.md_5.bungee.api.plugin.Plugin; import tk.bluetree242.advancedplhide.Group; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.bungee.listener.event.BungeeEventListener; import tk.bluetree242.advancedplhide.bungee.listener.packet.BungeePacketListener; -import tk.bluetree242.advancedplhide.config.ConfManager; -import tk.bluetree242.advancedplhide.config.Config; -import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; +import java.io.File; import java.io.IOException; import java.io.UncheckedIOException; import java.util.ArrayList; import java.util.List; public class AdvancedPlHideBungee extends Plugin implements Listener { - public Config config; - protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); private BungeePacketListener listener; private List groups = new ArrayList<>(); - - public static Group getGroupForPlayer(ProxiedPlayer player) { - Platform core = Platform.get(); + private final AdvancedPlHideBungee.Impl platformPlugin = new Impl(); + public Group getGroupForPlayer(ProxiedPlayer player) { if (player.hasPermission("plhide.no-group")) return null; List groups = new ArrayList<>(); - for (Group group : core.getGroups()) { + for (Group group : platformPlugin.getGroups()) { if (player.hasPermission("plhide.group." + group.getName())) { groups.add(group); } } - return groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); + return groups.isEmpty() ? platformPlugin.getGroup("default") : platformPlugin.mergeGroups(groups); } public void onEnable() { - reloadConfig(); - Protocolize.listenerProvider().registerListener(listener = new BungeePacketListener()); - Platform.setPlatform(new Impl()); + PlatformPlugin.get().reloadConfig(); + Protocolize.listenerProvider().registerListener(listener = new BungeePacketListener(this)); + PlatformPlugin.setPlatform(new Impl()); getProxy().getPluginManager().registerListener(this, new BungeeEventListener(this)); ProxyServer.getInstance().getPluginManager().registerCommand(this, new AdvancedPlHideCommand(this)); new Metrics(this, 13709); @@ -79,7 +74,7 @@ public void onDisable() { public void loadGroups() { groups = new ArrayList<>(); - config.groups().forEach((name, val) -> { + platformPlugin.getConfig().groups().forEach((name, val) -> { if (getGroup(name) == null) groups.add(new Group(name, val.tabcomplete())); else { @@ -131,24 +126,16 @@ public List getGroups() { return groups; } - public void reloadConfig() { - confManager.reloadConfig(); - config = confManager.getConfigData(); - loadGroups(); - - } - - - public class Impl extends Platform { + public class Impl extends PlatformPlugin { @Override - public Config getConfig() { - return config; + public void loadGroups() { + AdvancedPlHideBungee.this.loadGroups(); } @Override - public void reloadConfig() throws ConfigurationLoadException { - AdvancedPlHideBungee.this.reloadConfig(); + public File getDataFolder() { + return AdvancedPlHideBungee.this.getDataFolder(); } @Override @@ -163,7 +150,6 @@ public Group getGroup(String name) { @Override public String getPluginForCommand(String s) { - return null; } diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java index 1dc83b1..394fa2f 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideCommand.java @@ -26,7 +26,7 @@ import net.md_5.bungee.api.CommandSender; import net.md_5.bungee.api.ProxyServer; import net.md_5.bungee.api.plugin.Command; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import java.util.concurrent.TimeUnit; @@ -51,7 +51,7 @@ public void execute(CommandSender sender, String[] args) { } else { ProxyServer.getInstance().getScheduler().schedule(core, () -> { try { - Platform.get().reloadConfig(); + PlatformPlugin.get().reloadConfig(); sender.sendMessage(ChatColor.GREEN + "Configuration Reloaded"); } catch (ConfigurationLoadException e) { sender.sendMessage(ChatColor.RED + "Could not reload " + e.getConfigName()); diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java index 889bce4..da32e36 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/event/BungeeEventListener.java @@ -29,7 +29,7 @@ import net.md_5.bungee.api.event.PostLoginEvent; import net.md_5.bungee.api.plugin.Listener; import net.md_5.bungee.event.EventHandler; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.bungee.AdvancedPlHideBungee; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; @@ -51,7 +51,7 @@ public void onChat(ChatEvent e) { String cmd = e.getMessage().toLowerCase().split(" ")[0]; if (cmd.equalsIgnoreCase("/plugins") || cmd.equalsIgnoreCase("/pl") || cmd.equalsIgnoreCase("/bukkit:pl") || cmd.equalsIgnoreCase("/bukkit:plugins")) { e.setCancelled(true); - sender.sendMessage(ChatColor.translateAlternateColorCodes('&', Platform.get().getConfig().pl_message())); + sender.sendMessage(ChatColor.translateAlternateColorCodes('&', PlatformPlugin.get().getConfig().pl_message())); } } } @@ -61,7 +61,7 @@ public void onChat(ChatEvent e) { public void onPlayerJoin(PostLoginEvent e) { if (e.getPlayer().hasPermission("plhide.updatechecker")) { ProxyServer.getInstance().getScheduler().runAsync(core, () -> { - UpdateCheckResult result = Platform.get().updateCheck(); + UpdateCheckResult result = PlatformPlugin.get().updateCheck(); if (result == null) return; String msg = result.getVersionsBehind() == 0 ? null : ChatColor.translateAlternateColorCodes('&', "&e[APH-&2Bungee&e] " + Constants.DEFAULT_BEHIND.replace("{versions}", result.getVersionsBehind() + "").replace("{download}", result.getUpdateUrl())); if (result.getMessage() != null) { diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java index 32e41b3..c42fd78 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java @@ -46,9 +46,10 @@ public class BungeePacketListener extends AbstractPacketListener { private final UsedMap commandsWaiting = new UsedMap<>(); - - public BungeePacketListener() { + private final AdvancedPlHideBungee core; + public BungeePacketListener(AdvancedPlHideBungee core) { super(TabCompleteResponse.class, Direction.UPSTREAM, 0); + this.core = core; Protocolize.listenerProvider().registerListener(new BungeePacketListener.RequestListener()); Protocolize.listenerProvider().registerListener(new CommandsListener()); } @@ -74,25 +75,25 @@ public void packetSend(PacketSendEvent e) { if (legacy) { if (!notCompleted.contains(" ")) { StringCommandCompleterList list = new StringCommandCompleterList(packet.getCommands()); - CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { StringSubCommandCompleterList list = new StringSubCommandCompleterList(packet.getCommands(), notCompleted); - CompleterModifier.handleSubCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { if (!notCompleted.contains(" ")) { SuggestionCommandCompleterList list = new SuggestionCommandCompleterList(packet.getSuggestions()); - CompleterModifier.handleCompleter(list, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission("plhide.whitelist-mode")); + CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission("plhide.whitelist-mode")); } else { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(e.packet().getSuggestions(), notCompleted); - CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.cancelled(true); } } } - public static class CommandsListener extends AbstractPacketListener { + public class CommandsListener extends AbstractPacketListener { protected CommandsListener() { super(Commands.class, Direction.UPSTREAM, 0); @@ -112,7 +113,7 @@ public void packetSend(PacketSendEvent e) { } Commands packet = e.packet(); RootNodeCommandCompleter completer = new RootNodeCommandCompleter(packet.getRoot()); - CompleterModifier.handleCompleter(completer, AdvancedPlHideBungee.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(completer, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } } diff --git a/Spigot/build.gradle.kts b/Spigot/build.gradle.kts index 0e95f6a..bd03a75 100644 --- a/Spigot/build.gradle.kts +++ b/Spigot/build.gradle.kts @@ -33,7 +33,6 @@ repositories { dependencies { paperDevBundle("1.19-R0.1-SNAPSHOT") - implementation("space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2") testImplementation("org.junit.jupiter:junit-jupiter-api:5.7.0") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.7.0") compileOnly("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java index c912218..4282e70 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideCommand.java @@ -27,7 +27,7 @@ import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import java.util.ArrayList; @@ -47,22 +47,20 @@ public boolean onCommand(CommandSender sender, Command command, String label, St sender.sendMessage(ChatColor.GREEN + "Running AdvancedPlHide v." + ChatColor.YELLOW + core.getDescription().getVersion()); return true; } else { - if (args.length >= 1) { - if (args[0].equalsIgnoreCase("reload")) { - if (!sender.hasPermission("plhide.reload")) { - sender.sendMessage(ChatColor.RED + "You don't have permission to run this command"); - return true; - } else { - Bukkit.getScheduler().runTaskAsynchronously(core, () -> { - try { - Platform.get().reloadConfig(); - sender.sendMessage(ChatColor.GREEN + "Configuration Reloaded"); - } catch (ConfigurationLoadException e) { - sender.sendMessage(ChatColor.RED + "Could not reload " + e.getConfigName()); - } - }); - return true; - } + if (args[0].equalsIgnoreCase("reload")) { + if (!sender.hasPermission("plhide.reload")) { + sender.sendMessage(ChatColor.RED + "You don't have permission to run this command"); + return true; + } else { + Bukkit.getScheduler().runTaskAsynchronously(core, () -> { + try { + PlatformPlugin.get().reloadConfig(); + sender.sendMessage(ChatColor.GREEN + "Configuration Reloaded"); + } catch (ConfigurationLoadException e) { + sender.sendMessage(ChatColor.RED + "Could not reload " + e.getConfigName()); + } + }); + return true; } } } diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java index a43e411..f0fc9a2 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java @@ -35,15 +35,13 @@ import org.bukkit.plugin.Plugin; import org.bukkit.plugin.java.JavaPlugin; import tk.bluetree242.advancedplhide.Group; -import tk.bluetree242.advancedplhide.Platform; -import tk.bluetree242.advancedplhide.config.ConfManager; -import tk.bluetree242.advancedplhide.config.Config; -import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.spigot.listener.event.SpigotEventListener; import tk.bluetree242.advancedplhide.spigot.listener.packet.SpigotPacketListener; import tk.bluetree242.advancedplhide.utils.Constants; +import java.io.File; import java.io.IOException; import java.io.UncheckedIOException; import java.lang.reflect.Field; @@ -53,31 +51,29 @@ public class AdvancedPlHideSpigot extends JavaPlugin implements Listener { private final SpigotPacketListener listener = new SpigotPacketListener(this); - public Config config; - protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); private ProtocolManager protocolManager; private boolean legacy = false; private List groups; + private final AdvancedPlHideSpigot.Impl platformPlugin = new Impl(); - public static Group getGroupForPlayer(Player player) { - Platform core = Platform.get(); + public Group getGroupForPlayer(Player player) { if (player.hasPermission("plhide.no-group")) return null; List groups = new ArrayList<>(); - for (Group group : core.getGroups()) { + for (Group group : platformPlugin.getGroups()) { if (player.hasPermission("plhide.group." + group.getName())) { groups.add(group); } } - return groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); + return groups.isEmpty() ? platformPlugin.getGroup("platformPlugin") : platformPlugin.mergeGroups(groups); } public void onLoad() { protocolManager = ProtocolLibrary.getProtocolManager(); - Platform.setPlatform(new Impl()); + PlatformPlugin.setPlatform(platformPlugin); } public void onEnable() { - reloadConfig(); + platformPlugin.reloadConfig(); protocolManager.addPacketListener(new SpigotPacketListener(this)); getServer().getPluginManager().registerEvents(new SpigotEventListener(this), this); String str = Bukkit.getServer().getClass().getPackage().getName(); @@ -133,7 +129,7 @@ public List getGroups() { public void loadGroups() { groups = new ArrayList<>(); - config.groups().forEach((name, val) -> { + platformPlugin.getConfig().groups().forEach((name, val) -> { if (getGroup(name) == null) groups.add(new Group(name, val.tabcomplete())); else { @@ -154,13 +150,6 @@ public Group getGroup(String name) { return null; } - @Override - public void reloadConfig() throws ConfigurationLoadException { - confManager.reloadConfig(); - config = confManager.getConfigData(); - loadGroups(); - } - public CommandMap getCommandMap() { try { final Field bukkitCommandMap = Bukkit.getServer().getClass().getDeclaredField("commandMap"); @@ -173,16 +162,16 @@ public CommandMap getCommandMap() { } - public class Impl extends Platform { + public class Impl extends PlatformPlugin { @Override - public Config getConfig() { - return config; + public void loadGroups() { + AdvancedPlHideSpigot.this.loadGroups(); } @Override - public void reloadConfig() throws ConfigurationLoadException { - AdvancedPlHideSpigot.this.reloadConfig(); + public File getDataFolder() { + return AdvancedPlHideSpigot.this.getDataFolder(); } @Override diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java index d4a4757..2785feb 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/event/SpigotEventListener.java @@ -28,7 +28,7 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerCommandPreprocessEvent; import org.bukkit.event.player.PlayerJoinEvent; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.spigot.AdvancedPlHideSpigot; import tk.bluetree242.advancedplhide.utils.Constants; @@ -46,7 +46,7 @@ public void onPlayerCommand(PlayerCommandPreprocessEvent e) { String cmd = e.getMessage().toLowerCase().split(" ")[0]; if (cmd.equalsIgnoreCase("/plugins") || cmd.equalsIgnoreCase("/pl") || cmd.equalsIgnoreCase("/bukkit:pl") || cmd.equalsIgnoreCase("/bukkit:plugins")) { e.setCancelled(true); - e.getPlayer().sendMessage(ChatColor.translateAlternateColorCodes('&', Platform.get().getConfig().pl_message())); + e.getPlayer().sendMessage(ChatColor.translateAlternateColorCodes('&', PlatformPlugin.get().getConfig().pl_message())); } } @@ -54,7 +54,7 @@ public void onPlayerCommand(PlayerCommandPreprocessEvent e) { public void onPlayerJoin(PlayerJoinEvent e) { if (e.getPlayer().hasPermission("plhide.updatechecker")) { Bukkit.getScheduler().runTask(core, () -> { - UpdateCheckResult result = Platform.get().updateCheck(); + UpdateCheckResult result = PlatformPlugin.get().updateCheck(); if (result == null) return; String msg = result.getVersionsBehind() == 0 ? null : ChatColor.translateAlternateColorCodes('&', "&e[APH-&2Spigot&e] " + Constants.DEFAULT_BEHIND.replace("{versions}", result.getVersionsBehind() + "").replace("{download}", result.getUpdateUrl())); if (result.getMessage() != null) { diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java index 8c50b77..79606b8 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java @@ -71,12 +71,12 @@ private void onTabcomplete(PacketEvent e) { Suggestions suggestionsOrigin = matchModifier.read(0); if (!notCompleted.contains(" ")) { SuggestionCommandCompleterList suggestions = new SuggestionCommandCompleterList(suggestionsOrigin); - CompleterModifier.handleCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission("plhide.whitelist-mode")); + CompleterModifier.handleCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission("plhide.whitelist-mode")); matchModifier.write(0, suggestions.export()); } { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(suggestionsOrigin, notCompleted); - CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); matchModifier.write(0, suggestions.export()); } @@ -86,11 +86,11 @@ private void onTabcomplete(PacketEvent e) { String[] suggestionsOrigin = matchModifier.read(0); if (!notCompleted.contains(" ")) { StringCommandCompleterList suggestions = new StringCommandCompleterList(suggestionsOrigin); - CompleterModifier.handleCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); matchModifier.write(0, suggestions.export()); } else { StringSubCommandCompleterList suggestions = new StringSubCommandCompleterList(suggestionsOrigin, notCompleted); - CompleterModifier.handleSubCompleter(suggestions, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); matchModifier.write(0, suggestions.export()); } @@ -102,11 +102,11 @@ private void onCommands(PacketEvent e) { RootCommandNode nodeOrigin = matchModifier.readSafely(0); if (nodeOrigin == null) { //modern game, 1.19+ - ModernUtils.handleModern(e, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + ModernUtils.handleModern(e, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); return; } RootNodeCommandCompleter node = new RootNodeCommandCompleter(nodeOrigin); - CompleterModifier.handleCompleter(node, AdvancedPlHideSpigot.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(node, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); matchModifier.write(0, node.export()); } diff --git a/Velocity/build.gradle b/Velocity/build.gradle index 9efdd9b..7ff83ea 100644 --- a/Velocity/build.gradle +++ b/Velocity/build.gradle @@ -48,7 +48,6 @@ repositories { dependencies { implementation project(":core") - implementation 'space.arim.dazzleconf:dazzleconf-ext-snakeyaml:1.2.0-M2' compileOnly 'com.velocitypowered:velocity-api:3.0.1' annotationProcessor 'com.velocitypowered:velocity-api:3.0.1' compileOnly 'com.velocitypowered:velocity-proxy:3.0.1' diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java index bada2f2..1decb41 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideCommand.java @@ -27,7 +27,7 @@ import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import java.util.ArrayList; @@ -55,7 +55,7 @@ public void execute(Invocation e) { } else { core.server.getScheduler().buildTask(core, () -> { try { - Platform.get().reloadConfig(); + PlatformPlugin.get().reloadConfig(); sender.sendMessage(Component.text("Configuration Reloaded").color(NamedTextColor.GREEN)); } catch (ConfigurationLoadException ev) { sender.sendMessage(Component.text("Could not reload " + ev.getConfigName()).color(NamedTextColor.RED)); diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index a5e0ee3..0154e19 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -34,20 +34,16 @@ import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.slf4j.Logger; import tk.bluetree242.advancedplhide.Group; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.config.ConfManager; import tk.bluetree242.advancedplhide.config.Config; -import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; import tk.bluetree242.advancedplhide.velocity.listener.event.VelocityEventListener; import tk.bluetree242.advancedplhide.velocity.listener.packet.VelocityPacketListener; import javax.inject.Inject; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.UncheckedIOException; +import java.io.*; import java.nio.file.Path; import java.util.ArrayList; import java.util.List; @@ -59,15 +55,13 @@ version = AdvancedPlHideVelocity.VERSION, authors = {"BlueTree242"}, dependencies = {@Dependency(id = "protocolize")}) -public class AdvancedPlHideVelocity extends Platform { +public class AdvancedPlHideVelocity extends PlatformPlugin { public static final String DESCRIPTION = "{description}"; public static final String VERSION = "{version}"; public final ProxyServer server; public final Logger logger; public final Path dataDirectory; private final Metrics.Factory metricsFactory; - public Config config; - protected ConfManager confManager; private List groups = new ArrayList<>(); @Inject @@ -77,19 +71,18 @@ public AdvancedPlHideVelocity(ProxyServer server, Logger logger, @DataDirectory this.logger = logger; this.dataDirectory = dataDirectory; confManager = ConfManager.create(dataDirectory, "config.yml", Config.class); - Platform.setPlatform(this); + PlatformPlugin.setPlatform(this); } - public static Group getGroupForPlayer(Player player) { - Platform core = Platform.get(); + public Group getGroupForPlayer(Player player) { if (player.hasPermission("plhide.no-group")) return null; List groups = new ArrayList<>(); - for (Group group : core.getGroups()) { + for (Group group : getGroups()) { if (player.hasPermission("plhide.group." + group.getName())) { groups.add(group); } } - return groups.isEmpty() ? core.getGroup("default") : core.mergeGroups(groups); + return groups.isEmpty() ? getGroup("default") : mergeGroups(groups); } private static byte[] readFully(InputStream input) throws IOException { @@ -104,7 +97,7 @@ private static byte[] readFully(InputStream input) throws IOException { public void loadGroups() { groups = new ArrayList<>(); - config.groups().forEach((name, val) -> { + getConfig().groups().forEach((name, val) -> { if (getGroup(name) == null) groups.add(new Group(name, val.tabcomplete())); else { @@ -159,17 +152,13 @@ public void onProxyInitialization(ProxyInitializeEvent e) { .aliases("aphv", "apv", "plhidev", "phv") .build(); server.getCommandManager().register(meta, new AdvancedPlHideCommand(this)); - server.getEventManager().register(this, new VelocityEventListener()); + server.getEventManager().register(this, new VelocityEventListener(this)); Protocolize.listenerProvider().registerListener(new VelocityPacketListener(this)); metricsFactory.make(this, 13708); server.getConsoleCommandSource().sendMessage(LegacyComponentSerializer.legacy('&').deserialize(Constants.startupMessage())); performStartUpdateCheck(); } - @Override - public Config getConfig() { - return config; - } public void performStartUpdateCheck() { UpdateCheckResult result = updateCheck(); @@ -198,12 +187,9 @@ public void performStartUpdateCheck() { } } - @Override - public void reloadConfig() throws ConfigurationLoadException { - confManager.reloadConfig(); - config = confManager.getConfigData(); - loadGroups(); + public File getDataFolder() { + return dataDirectory.toFile(); } diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java index 82f4a17..7333c02 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/event/VelocityEventListener.java @@ -31,13 +31,17 @@ import net.kyori.adventure.text.event.ClickEvent; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import tk.bluetree242.advancedplhide.CompleterModifier; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; import tk.bluetree242.advancedplhide.impl.completer.RootNodeCommandCompleter; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; import tk.bluetree242.advancedplhide.velocity.AdvancedPlHideVelocity; public class VelocityEventListener { + private final AdvancedPlHideVelocity core; + public VelocityEventListener(AdvancedPlHideVelocity core) { + this.core = core; + } @Subscribe public void onPlayerJoin(PostLoginEvent e) { @@ -63,7 +67,7 @@ public void onCommandExecute(CommandExecuteEvent e) { String cmd = "/" + e.getCommand().split(" ")[0]; if (cmd.equalsIgnoreCase("/plugins") || cmd.equalsIgnoreCase("/pl") || cmd.equalsIgnoreCase("/bukkit:pl") || cmd.equalsIgnoreCase("/bukkit:plugins")) { if (!e.getCommandSource().hasPermission("plhide.command.use")) { - Component response = LegacyComponentSerializer.legacy('&').deserialize(Platform.get().getConfig().pl_message()); + Component response = LegacyComponentSerializer.legacy('&').deserialize(PlatformPlugin.get().getConfig().pl_message()); e.getCommandSource().sendMessage(response); e.setResult(CommandExecuteEvent.CommandResult.denied()); } @@ -73,6 +77,6 @@ public void onCommandExecute(CommandExecuteEvent e) { @Subscribe public void onCommands(PlayerAvailableCommandsEvent e) { RootNodeCommandCompleter node = new RootNodeCommandCompleter(e.getRootNode()); - CompleterModifier.handleCompleter(node, AdvancedPlHideVelocity.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(node, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } } diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java index 5caf723..f855f42 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java @@ -69,19 +69,19 @@ public void packetSend(PacketSendEvent e) { if (legacy) { if (!notCompleted.contains(" ")) { OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), true); - CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); - CompleterModifier.handleSubCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { if ((!notCompleted.contains(" "))) { OfferCompleterList list = new OfferCompleterList(e.packet().getOffers(), false); - CompleterModifier.handleCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); - CompleterModifier.handleSubCompleter(list, AdvancedPlHideVelocity.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java b/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java index 9ea0687..ad41cae 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/AdvancedPlHide.java @@ -25,9 +25,9 @@ public class AdvancedPlHide { /** * @return The Plugin main instance core - * @see Platform + * @see PlatformPlugin */ - public static Platform get() { - return Platform.get(); + public static PlatformPlugin get() { + return PlatformPlugin.get(); } } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java index b6536e9..095b62f 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java @@ -39,7 +39,7 @@ public static void removePluginPrefix(CommandCompleterList list) { public static void handleCompleter(CommandCompleterList list, Group playerGroup, boolean whitelist) { - if (Platform.get().getConfig().remove_plugin_prefix()) + if (PlatformPlugin.get().getConfig().remove_plugin_prefix()) removePluginPrefix(list); if (playerGroup != null) { @@ -93,7 +93,7 @@ public static void applyBlacklist(CommandCompleterList list, List(list)) { if (commands.contains(completer.getName())) { completer.remove(); - } else if (plugins.contains(Platform.get().getPluginForCommand(completer.getName()))) { + } else if (plugins.contains(PlatformPlugin.get().getPluginForCommand(completer.getName()))) { completer.remove(); } } @@ -112,7 +112,7 @@ public static void applyWhitelist(CommandCompleterList list, List(list)) { if (!commands.contains(completer.getName())) { - if (!plugins.contains(Platform.get().getPluginForCommand(completer.getName()))) + if (!plugins.contains(PlatformPlugin.get().getPluginForCommand(completer.getName()))) completer.remove(); } } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java b/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java similarity index 79% rename from core/src/main/java/tk/bluetree242/advancedplhide/Platform.java rename to core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java index 8b46f1b..fecdbc5 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/Platform.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java @@ -24,10 +24,12 @@ import com.github.kevinsawicki.http.HttpRequest; import org.json.JSONObject; +import tk.bluetree242.advancedplhide.config.ConfManager; import tk.bluetree242.advancedplhide.config.Config; import tk.bluetree242.advancedplhide.exceptions.ConfigurationLoadException; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; +import java.io.File; import java.util.ArrayList; import java.util.List; @@ -35,23 +37,36 @@ * Platform is the platform the plugin runs on, we can also call it the plugin core as it contains some methods related to the plugin itself too * * @see AdvancedPlHide#get() - * @see Platform#get() + * @see PlatformPlugin#get() */ -public abstract class Platform { - private static Platform platform = null; +public abstract class PlatformPlugin { + private static PlatformPlugin platformPlugin = null; - public static Platform get() { - return platform; + protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); + private Config config; + + public static PlatformPlugin get() { + return platformPlugin; + } + + public static void setPlatform(PlatformPlugin val) { + if (platformPlugin != null) throw new IllegalStateException("Platform already set"); + platformPlugin = val; + } + + public Config getConfig() { + return config; } - public static void setPlatform(Platform val) { - if (platform != null) throw new IllegalStateException("Platform already set"); - platform = val; + public void reloadConfig() throws ConfigurationLoadException { + confManager.reloadConfig(); + config = confManager.getConfigData(); + loadGroups(); } - public abstract Config getConfig(); + public abstract void loadGroups(); - public abstract void reloadConfig() throws ConfigurationLoadException; + public abstract File getDataFolder(); public abstract List getGroups(); diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java index 4498479..1fe7dc7 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java @@ -22,7 +22,7 @@ package tk.bluetree242.advancedplhide.utils; -import tk.bluetree242.advancedplhide.Platform; +import tk.bluetree242.advancedplhide.PlatformPlugin; public class Constants { public static final String DEFAULT_UP_TO_DATE = "&aYou are up to date"; @@ -36,9 +36,9 @@ public static String startupMessage() { "| &cInformation:\n&r" + "| &cName: &rAdvancedPlHide\n&r" + "| &cDevelopers: &rBlueTree242\n&r" + - "| &cVersion: &r" + Platform.get().getCurrentVersion() + "\n&r" + - (!Platform.get().getCurrentBuild().equals("NONE") ? "| &cBuild Number: &r#" + Platform.get().getCurrentBuild() + "\n&r" : "") + - "| &cRunning on: &r" + Platform.get().getType().getName() + "\n&r" + + "| &cVersion: &r" + PlatformPlugin.get().getCurrentVersion() + "\n&r" + + (!PlatformPlugin.get().getCurrentBuild().equals("NONE") ? "| &cBuild Number: &r#" + PlatformPlugin.get().getCurrentBuild() + "\n&r" : "") + + "| &cRunning on: &r" + PlatformPlugin.get().getType().getName() + "\n&r" + "| &cSupport:\n&r" + "| &cGithub: &rhttps://github.com/BlueTree242/AdvancedPlHide/issues\n" + "| &cDiscord: &rhttps://advancedplhide.ml/support\n" + From 7dfef5737bc1e62b8963b82cf2a8ea85e7d37c7b Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 16:35:44 +0200 Subject: [PATCH 24/28] spigot provide default group if player got no groups on them --- .../spigot/AdvancedPlHideSpigot.java | 2 +- .../velocity/AdvancedPlHideVelocity.java | 34 ++++++++----------- .../advancedplhide/PlatformPlugin.java | 2 +- 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java index f0fc9a2..594333f 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java @@ -64,7 +64,7 @@ public Group getGroupForPlayer(Player player) { groups.add(group); } } - return groups.isEmpty() ? platformPlugin.getGroup("platformPlugin") : platformPlugin.mergeGroups(groups); + return groups.isEmpty() ? platformPlugin.getGroup("default") : platformPlugin.mergeGroups(groups); } public void onLoad() { diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index 0154e19..c00237b 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -35,8 +35,6 @@ import org.slf4j.Logger; import tk.bluetree242.advancedplhide.Group; import tk.bluetree242.advancedplhide.PlatformPlugin; -import tk.bluetree242.advancedplhide.config.ConfManager; -import tk.bluetree242.advancedplhide.config.Config; import tk.bluetree242.advancedplhide.impl.version.UpdateCheckResult; import tk.bluetree242.advancedplhide.utils.Constants; import tk.bluetree242.advancedplhide.velocity.listener.event.VelocityEventListener; @@ -70,10 +68,24 @@ public AdvancedPlHideVelocity(ProxyServer server, Logger logger, @DataDirectory this.server = server; this.logger = logger; this.dataDirectory = dataDirectory; - confManager = ConfManager.create(dataDirectory, "config.yml", Config.class); PlatformPlugin.setPlatform(this); } + @Subscribe + public void onProxyInitialization(ProxyInitializeEvent e) { + reloadConfig(); + CommandMeta meta = server.getCommandManager().metaBuilder("advancedplhidevelocity") + // Specify other aliases (optional) + .aliases("aphv", "apv", "plhidev", "phv") + .build(); + server.getCommandManager().register(meta, new AdvancedPlHideCommand(this)); + server.getEventManager().register(this, new VelocityEventListener(this)); + Protocolize.listenerProvider().registerListener(new VelocityPacketListener(this)); + metricsFactory.make(this, 13708); + server.getConsoleCommandSource().sendMessage(LegacyComponentSerializer.legacy('&').deserialize(Constants.startupMessage())); + performStartUpdateCheck(); + } + public Group getGroupForPlayer(Player player) { if (player.hasPermission("plhide.no-group")) return null; List groups = new ArrayList<>(); @@ -144,22 +156,6 @@ public List getGroups() { return groups; } - @Subscribe - public void onProxyInitialization(ProxyInitializeEvent e) { - reloadConfig(); - CommandMeta meta = server.getCommandManager().metaBuilder("advancedplhidevelocity") - // Specify other aliases (optional) - .aliases("aphv", "apv", "plhidev", "phv") - .build(); - server.getCommandManager().register(meta, new AdvancedPlHideCommand(this)); - server.getEventManager().register(this, new VelocityEventListener(this)); - Protocolize.listenerProvider().registerListener(new VelocityPacketListener(this)); - metricsFactory.make(this, 13708); - server.getConsoleCommandSource().sendMessage(LegacyComponentSerializer.legacy('&').deserialize(Constants.startupMessage())); - performStartUpdateCheck(); - } - - public void performStartUpdateCheck() { UpdateCheckResult result = updateCheck(); if (result == null) { diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java b/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java index fecdbc5..fc1d890 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java @@ -42,7 +42,7 @@ public abstract class PlatformPlugin { private static PlatformPlugin platformPlugin = null; - protected ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); + private final ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); private Config config; public static PlatformPlugin get() { From 979405b2b129fab1f17a60971185be3726bd5de0 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 20:04:24 +0200 Subject: [PATCH 25/28] add "~" to sub args support --- .../config/subcompleter/ConfSubCompleterList.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java index a3db847..a9bfc8f 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java @@ -41,7 +41,7 @@ public ConfSubCompleterList ofCommand(String cmd) { } /** - * This method tries to find commands with this args, respects * + * This method tries to find commands with this args, respects * and ~ * * @param args args of the command * @return list of sub completers that have this args @@ -53,10 +53,8 @@ public ConfSubCompleterList ofArgs(String[] args) { int length = 0; if (completer.getArgs().length == args.length) { for (String arg : completer.getArgs()) { - if (equal != false) { - if (args[length].equalsIgnoreCase(arg) || arg.equals("*")) { - equal = true; - } else equal = false; + if (equal) { + equal = !(arg.equals("~")) && (args[length].equalsIgnoreCase(arg) || arg.equals("*")); } length++; } From b73706f38bb50f2d74c0075643fd4ee6e69c7eee Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 20:35:53 +0200 Subject: [PATCH 26/28] remove sub whitelist mode permission --- .../bungee/listener/packet/BungeePacketListener.java | 4 ++-- .../spigot/listener/packet/SpigotPacketListener.java | 4 ++-- .../velocity/listener/packet/VelocityPacketListener.java | 4 ++-- .../java/tk/bluetree242/advancedplhide/utils/Constants.java | 1 - 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java index c42fd78..34a9d57 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/listener/packet/BungeePacketListener.java @@ -78,7 +78,7 @@ public void packetSend(PacketSendEvent e) { CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { StringSubCommandCompleterList list = new StringSubCommandCompleterList(packet.getCommands(), notCompleted); - CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { @@ -87,7 +87,7 @@ public void packetSend(PacketSendEvent e) { CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission("plhide.whitelist-mode")); } else { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(e.packet().getSuggestions(), notCompleted); - CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.cancelled(true); } } diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java index 79606b8..a0f8be1 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/listener/packet/SpigotPacketListener.java @@ -76,7 +76,7 @@ private void onTabcomplete(PacketEvent e) { } { SuggestionSubCommandCompleterList suggestions = new SuggestionSubCommandCompleterList(suggestionsOrigin, notCompleted); - CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); matchModifier.write(0, suggestions.export()); } @@ -90,7 +90,7 @@ private void onTabcomplete(PacketEvent e) { matchModifier.write(0, suggestions.export()); } else { StringSubCommandCompleterList suggestions = new StringSubCommandCompleterList(suggestionsOrigin, notCompleted); - CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(suggestions, core.getGroupForPlayer(e.getPlayer()), e.getPlayer().hasPermission(Constants.WHITELIST_MODE_PERMISSION)); if (suggestions.isCancelled()) e.setCancelled(true); matchModifier.write(0, suggestions.export()); } diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java index f855f42..683e10d 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/listener/packet/VelocityPacketListener.java @@ -72,7 +72,7 @@ public void packetSend(PacketSendEvent e) { CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); - CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } else { @@ -81,7 +81,7 @@ public void packetSend(PacketSendEvent e) { CompleterModifier.handleCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); } else { OfferSubCommandCompleterList list = new OfferSubCommandCompleterList(e.packet().getOffers(), notCompleted); - CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.SUB_WHITELIST_MODE_PERMISSION)); + CompleterModifier.handleSubCompleter(list, core.getGroupForPlayer(player), player.hasPermission(Constants.WHITELIST_MODE_PERMISSION)); if (list.isCancelled()) e.cancelled(true); } } diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java index 1fe7dc7..050cb08 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/utils/Constants.java @@ -28,7 +28,6 @@ public class Constants { public static final String DEFAULT_UP_TO_DATE = "&aYou are up to date"; public static final String DEFAULT_BEHIND = "&cYou are {versions} Behind. Please Update ASAP. Download from {download}"; public static final String WHITELIST_MODE_PERMISSION = "plhide.whitelist-mode"; - public static final String SUB_WHITELIST_MODE_PERMISSION = "plhide.sub-whitelist-mode"; public static String startupMessage() { return "" + From 11f8648ff075ed7779667757290dae61338af6a8 Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 20:54:47 +0200 Subject: [PATCH 27/28] remove ~ as it is useless, and whitelist mode does nothing with sub args if user did not mention anything about the command --- .../java/tk/bluetree242/advancedplhide/CompleterModifier.java | 2 +- .../config/subcompleter/ConfSubCompleterList.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java index 095b62f..5665e19 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/CompleterModifier.java @@ -69,7 +69,7 @@ public static void applyBlacklist(SubCommandCompleterList list, ConfSubCompleter } public static void applyWhitelist(SubCommandCompleterList list, ConfSubCompleterList originConfList) { - if (originConfList.isEmpty()) return; + if (list.isEmpty()) return; for (SubCommandCompleter completer : new ArrayList<>(list)) { ConfSubCompleterList confList = originConfList.ofArgs(list.getArgs(completer)); if (confList.isEmpty()) { diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java index a9bfc8f..85f3350 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/config/subcompleter/ConfSubCompleterList.java @@ -54,7 +54,7 @@ public ConfSubCompleterList ofArgs(String[] args) { if (completer.getArgs().length == args.length) { for (String arg : completer.getArgs()) { if (equal) { - equal = !(arg.equals("~")) && (args[length].equalsIgnoreCase(arg) || arg.equals("*")); + equal = args[length].equalsIgnoreCase(arg) || arg.equals("*"); } length++; } From 6659976237d06786a274ff99fdff766cf9fa21cb Mon Sep 17 00:00:00 2001 From: BlueTree242 Date: Tue, 26 Jul 2022 21:23:58 +0200 Subject: [PATCH 28/28] fix velocity not starting --- .../advancedplhide/bungee/AdvancedPlHideBungee.java | 8 ++++++-- .../advancedplhide/spigot/AdvancedPlHideSpigot.java | 1 + .../advancedplhide/velocity/AdvancedPlHideVelocity.java | 1 + .../tk/bluetree242/advancedplhide/PlatformPlugin.java | 7 ++++++- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java index be94f41..fbf7d7b 100644 --- a/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java +++ b/Bungee/src/main/java/tk/bluetree242/advancedplhide/bungee/AdvancedPlHideBungee.java @@ -57,10 +57,14 @@ public Group getGroupForPlayer(ProxiedPlayer player) { return groups.isEmpty() ? platformPlugin.getGroup("default") : platformPlugin.mergeGroups(groups); } + public void onLoad() { + PlatformPlugin.setPlatform(new Impl()); + platformPlugin.initConfigManager(); + } + public void onEnable() { - PlatformPlugin.get().reloadConfig(); + platformPlugin.reloadConfig(); Protocolize.listenerProvider().registerListener(listener = new BungeePacketListener(this)); - PlatformPlugin.setPlatform(new Impl()); getProxy().getPluginManager().registerListener(this, new BungeeEventListener(this)); ProxyServer.getInstance().getPluginManager().registerCommand(this, new AdvancedPlHideCommand(this)); new Metrics(this, 13709); diff --git a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java index 594333f..31cb427 100644 --- a/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java +++ b/Spigot/src/main/java/tk/bluetree242/advancedplhide/spigot/AdvancedPlHideSpigot.java @@ -70,6 +70,7 @@ public Group getGroupForPlayer(Player player) { public void onLoad() { protocolManager = ProtocolLibrary.getProtocolManager(); PlatformPlugin.setPlatform(platformPlugin); + platformPlugin.initConfigManager(); } public void onEnable() { diff --git a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java index c00237b..cb9bdf8 100644 --- a/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java +++ b/Velocity/src/main/java/tk/bluetree242/advancedplhide/velocity/AdvancedPlHideVelocity.java @@ -69,6 +69,7 @@ public AdvancedPlHideVelocity(ProxyServer server, Logger logger, @DataDirectory this.logger = logger; this.dataDirectory = dataDirectory; PlatformPlugin.setPlatform(this); + initConfigManager(); } @Subscribe diff --git a/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java b/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java index fc1d890..5ea53dd 100644 --- a/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java +++ b/core/src/main/java/tk/bluetree242/advancedplhide/PlatformPlugin.java @@ -42,9 +42,10 @@ public abstract class PlatformPlugin { private static PlatformPlugin platformPlugin = null; - private final ConfManager confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); + private ConfManager confManager; private Config config; + public static PlatformPlugin get() { return platformPlugin; } @@ -64,6 +65,10 @@ public void reloadConfig() throws ConfigurationLoadException { loadGroups(); } + public void initConfigManager() { + confManager = ConfManager.create(getDataFolder().toPath(), "config.yml", Config.class); + } + public abstract void loadGroups(); public abstract File getDataFolder();