diff --git a/pom.xml b/pom.xml
index 907c268..4abfa2d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
net.t2code
Alias
- 1.4
+ 1.5
jar
T2C-Alias
@@ -57,6 +57,16 @@
+
+
+ spigot-repo
+ https://hub.spigotmc.org/nexus/content/repositories/snapshots/
+
+
+
+ minecraft-repo
+ https://libraries.minecraft.net/
+
T2Code
https://repo.t2code.net/repository/T2Code/
@@ -68,10 +78,24 @@
+
+
+ org.spigotmc
+ spigot-api
+ 1.20.6-R0.1-SNAPSHOT
+ provided
+
+
+
+ com.mojang
+ authlib
+ 1.5.21
+ provided
+
net.t2code
T2CodeLib
- 15.7
+ 16.5
provided
@@ -87,12 +111,8 @@
3.0
provided
-
- net.t2code.minecraft.1_13.r1
- spigot
- 1.13r1
- provided
-
+
+
org.projectlombok
lombok
diff --git a/src/main/java/net/t2code/alias/Spigot/Main.java b/src/main/java/net/t2code/alias/Spigot/Main.java
index 137d0c4..12f7f4f 100644
--- a/src/main/java/net/t2code/alias/Spigot/Main.java
+++ b/src/main/java/net/t2code/alias/Spigot/Main.java
@@ -3,8 +3,6 @@ package net.t2code.alias.Spigot;
import lombok.Getter;
import net.t2code.alias.Spigot.objects.AliasObject;
import net.t2code.alias.Spigot.objects.SubAliasObject;
-import net.t2code.alias.Spigot.system.BukkitCommandWrap;
-import net.t2code.alias.Spigot.system.BukkitCommandWrap_Useless;
import net.t2code.alias.Spigot.system.Load;
import net.t2code.alias.Util;
import net.t2code.t2codelib.SPIGOT.api.messages.T2Ctemplate;
@@ -38,11 +36,11 @@ public final class Main extends JavaPlugin {
public static ArrayList allSubAliases = new ArrayList<>();
public static ArrayList allForSubAliases = new ArrayList<>();
- private BukkitCommandWrap bukkitCommandWrap = null;
-
- public BukkitCommandWrap getBukkitCommandWrap() {
- return this.bukkitCommandWrap;
- }
+ // private BukkitCommandWrap bukkitCommandWrap = null;
+ //
+ // public BukkitCommandWrap getBukkitCommandWrap() {
+ // return this.bukkitCommandWrap;
+ // }
@@ -53,12 +51,12 @@ public final class Main extends JavaPlugin {
autor = plugin.getDescription().getAuthors();
version = plugin.getDescription().getVersion();
if (pluginNotFound("T2CodeLib", 96388, Util.getRequiredT2CodeLibVersion())) return;
- try {
- Class.forName("com.mojang.brigadier.CommandDispatcher");
- this.bukkitCommandWrap = new BukkitCommandWrap();
- } catch (ClassNotFoundException | NoClassDefFoundError e) {
- this.bukkitCommandWrap = new BukkitCommandWrap_Useless();
- }
+ // try {
+ // Class.forName("com.mojang.brigadier.CommandDispatcher");
+ // this.bukkitCommandWrap = new BukkitCommandWrap();
+ // } catch (ClassNotFoundException | NoClassDefFoundError e) {
+ // this.bukkitCommandWrap = new BukkitCommandWrap_Useless();
+ // }
if (T2CmcVersion.isMc1_13()) {
guiCode = "";
} else guiCode = "§6§8§9§r";
diff --git a/src/main/java/net/t2code/alias/Spigot/cmdManagement/AliasCmdExecuter.java b/src/main/java/net/t2code/alias/Spigot/cmdManagement/AliasCmdExecuter.java
index 0e42bee..4d7cd17 100644
--- a/src/main/java/net/t2code/alias/Spigot/cmdManagement/AliasCmdExecuter.java
+++ b/src/main/java/net/t2code/alias/Spigot/cmdManagement/AliasCmdExecuter.java
@@ -70,7 +70,7 @@ public class AliasCmdExecuter implements CommandExecutor, TabCompleter {
Player p = (Player) sender;
if (args.length == 1) {
for (String command : arg1.keySet()) {
- Boolean passend = true;
+ boolean passend = true;
for (int i = 0; i < args[0].length(); i++) {
if (args[0].length() >= command.length()) {
passend = false;
diff --git a/src/main/java/net/t2code/alias/Spigot/config/alias/CreateExampleAliasConfig.java b/src/main/java/net/t2code/alias/Spigot/config/alias/CreateExampleAliasConfig.java
index 9117c98..9d62705 100644
--- a/src/main/java/net/t2code/alias/Spigot/config/alias/CreateExampleAliasConfig.java
+++ b/src/main/java/net/t2code/alias/Spigot/config/alias/CreateExampleAliasConfig.java
@@ -8,6 +8,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
import java.io.File;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -21,24 +22,27 @@ public class CreateExampleAliasConfig {
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config);
T2Cconfig.set("Alias.Enable", true, yamlConfiguration);
- T2Cconfig.set("Alias.AliasList", Arrays.asList("aliasexample1"),yamlConfiguration);
+ T2Cconfig.set("Alias.AliasList", Arrays.asList("aliasexample1","t2caliasexample"),yamlConfiguration);
T2Cconfig.set("Alias.Permission.Necessary", true, yamlConfiguration);
T2Cconfig.set("Alias.Permission.Permission", "t2code.alias.use.", yamlConfiguration);
T2Cconfig.set("Alias.Permission.CustomNoPermissionMSG", "", yamlConfiguration);
+ T2Cconfig.set("Alias.Cooldown.Global", 0, yamlConfiguration);
+ T2Cconfig.set("Alias.Cooldown.Player", 0, yamlConfiguration);
+
T2Cconfig.set("Alias.Cost.Enable", false,yamlConfiguration);
T2Cconfig.set("Alias.Cost.Confirm", true,yamlConfiguration);
T2Cconfig.set("Alias.Cost.Price", 0.0,yamlConfiguration);
T2Cconfig.set("Alias.Cost.AllowByPass", true,yamlConfiguration);
- T2Cconfig.set("Alias.Command.Enable", true, yamlConfiguration);
+ T2Cconfig.set("Alias.Command.Enable", false, yamlConfiguration);
T2Cconfig.set("Alias.Command.CommandAsConsole", true, yamlConfiguration);
T2Cconfig.set("Alias.Command.BungeeCommand", false, yamlConfiguration);
- T2Cconfig.set("Alias.Command.Commands", Arrays.asList("say hi"), yamlConfiguration);
+ T2Cconfig.set("Alias.Command.Commands", Arrays.asList(), yamlConfiguration);
- T2Cconfig.set("Alias.Message.Enable", false, yamlConfiguration);
- T2Cconfig.set("Alias.Message.Messages", Arrays.asList(), yamlConfiguration);
+ T2Cconfig.set("Alias.Message.Enable", true, yamlConfiguration);
+ T2Cconfig.set("Alias.Message.Messages", Arrays.asList("This is a test alias", "With this you can use several functions such as colored text, Use Command'>clickable texts, For example Warps'>shorten commands of other plugins and much more.", "http://dc.t2code.net'>If you have any questions, please contact our support Discord."), yamlConfiguration);
T2Cconfig.set("Alias.Admin.Enable", false, yamlConfiguration);
T2Cconfig.set("Alias.Admin.Permission", "t2code.alias.admin", yamlConfiguration);
diff --git a/src/main/java/net/t2code/alias/Spigot/config/alias/SelectAlias.java b/src/main/java/net/t2code/alias/Spigot/config/alias/SelectAlias.java
index 2d935fe..1f30999 100644
--- a/src/main/java/net/t2code/alias/Spigot/config/alias/SelectAlias.java
+++ b/src/main/java/net/t2code/alias/Spigot/config/alias/SelectAlias.java
@@ -4,14 +4,12 @@ import com.google.common.base.Preconditions;
import net.t2code.alias.Spigot.Main;
import net.t2code.alias.Spigot.system.AliasRegister;
import net.t2code.alias.Spigot.objects.AliasObject;
-import net.t2code.alias.Spigot.system.BukkitCommandWrap_Useless;
import net.t2code.alias.Util;
import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend;
import net.t2code.t2codelib.SPIGOT.api.messages.T2Ctemplate;
import org.bukkit.Bukkit;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;
-import org.bukkit.entity.Player;
import java.io.File;
import java.io.FileNotFoundException;
@@ -65,6 +63,9 @@ public class SelectAlias {
}
String permissionMSG = yamlConfiguration.getString("Alias.Permission.CustomNoPermissionMSG");
+ Integer cooldownGlobal = yamlConfiguration.getInt("Alias.Cooldown.Global");
+ Integer cooldownPlayer = yamlConfiguration.getInt("Alias.Cooldown.Player");
+
Boolean costEnable = yamlConfiguration.getBoolean("Alias.Cost.Enable");
if (yamlConfiguration.get("Alias.Cost.Confirm") == null) {
AliasConfigConverter.convertAddCostConfirm(yamlConfiguration, config_gui, false);
@@ -100,9 +101,9 @@ public class SelectAlias {
List consoleMessages = yamlConfiguration.getStringList("Alias.Console.Message.Messages");
Main.allAliases.addAll(aliasList);
- AliasObject alias = new AliasObject(aliasEnable, aliasList, permNecessary, permission, permissionMSG, costEnable, costConfirm, costPrice, costAllowBypass, commandEnable, commandAsConsole, bungeeCommand,
- command, messageEnable, messages, adminEnable, adminPermission, adminCommandEnable, adminCommandAsConsole, adminBungeeCommand, adminCommands,
- adminMessageEnable, adminMessages, consoleEnable, consoleCommandEnable, consoleBungeeCommand, consoleCommands, consoleMessageEnable, consoleMessages);
+ AliasObject alias = new AliasObject(aliasEnable, aliasList, permNecessary, permission, permissionMSG, cooldownGlobal, cooldownPlayer, costEnable, costConfirm, costPrice, costAllowBypass, commandEnable,
+ commandAsConsole, bungeeCommand, command, messageEnable, messages, adminEnable, adminPermission, adminCommandEnable, adminCommandAsConsole, adminBungeeCommand, adminCommands, adminMessageEnable,
+ adminMessages, consoleEnable, consoleCommandEnable, consoleBungeeCommand, consoleCommands, consoleMessageEnable, consoleMessages);
for (String al : aliasList) {
Main.aliasHashMap.put(al, alias);
}
diff --git a/src/main/java/net/t2code/alias/Spigot/config/subAlias/SelectSubAlias.java b/src/main/java/net/t2code/alias/Spigot/config/subAlias/SelectSubAlias.java
index 2e0d7aa..8fd35dd 100644
--- a/src/main/java/net/t2code/alias/Spigot/config/subAlias/SelectSubAlias.java
+++ b/src/main/java/net/t2code/alias/Spigot/config/subAlias/SelectSubAlias.java
@@ -66,6 +66,9 @@ public class SelectSubAlias {
}
String permissionMSG = yamlConfiguration.getString("SubAlias.Permission.CustomNoPermissionMSG");
+ Integer cooldownGlobal = yamlConfiguration.getInt("Alias.Cooldown.Global");
+ Integer cooldownPlayer = yamlConfiguration.getInt("Alias.Cooldown.Player");
+
Boolean costEnable = yamlConfiguration.getBoolean("SubAlias.Cost.Enable");
if (yamlConfiguration.get("SubAlias.Cost.Confirm") == null) {
AliasConfigConverter.convertAddCostConfirm(yamlConfiguration, config_gui, true);
@@ -100,9 +103,9 @@ public class SelectSubAlias {
Boolean consoleMessageEnable = yamlConfiguration.getBoolean("SubAlias.Console.Message.Enable");
List consoleMessages = yamlConfiguration.getStringList("SubAlias.Console.Message.Messages");
- SubAliasObject subAlias = new SubAliasObject(aliasEnable, subAliasList, subAliasFor, subAliasArg, permNecessary, permission, permissionMSG, costEnable,costConfirm, costPrice, costAllowBypass, commandEnable, commandAsConsole, bungeeCommand,
- command, messageEnable, messages, adminEnable, adminPermission, adminCommandEnable, adminCommandAsConsole, adminBungeeCommand, adminCommands,
- adminMessageEnable, adminMessages, consoleEnable, consoleCommandEnable, consoleBungeeCommand, consoleCommands, consoleMessageEnable, consoleMessages);
+ SubAliasObject subAlias = new SubAliasObject(aliasEnable, subAliasList, subAliasFor, subAliasArg, permNecessary, permission, permissionMSG, cooldownGlobal, cooldownPlayer, costEnable, costConfirm,
+ costPrice, costAllowBypass, commandEnable, commandAsConsole, bungeeCommand, command, messageEnable, messages, adminEnable, adminPermission, adminCommandEnable, adminCommandAsConsole,
+ adminBungeeCommand, adminCommands, adminMessageEnable, adminMessages, consoleEnable, consoleCommandEnable, consoleBungeeCommand, consoleCommands, consoleMessageEnable, consoleMessages);
for (String sal : subAliasList) {
Main.subAliasHashMap.put(sal, subAlias);
}
diff --git a/src/main/java/net/t2code/alias/Spigot/objects/AliasObject.java b/src/main/java/net/t2code/alias/Spigot/objects/AliasObject.java
index 4d329c2..b113477 100644
--- a/src/main/java/net/t2code/alias/Spigot/objects/AliasObject.java
+++ b/src/main/java/net/t2code/alias/Spigot/objects/AliasObject.java
@@ -10,6 +10,9 @@ public class AliasObject {
public String permission;
public String permissionMSG;
+ public Integer cooldownGlobal;
+ public Integer cooldownPlayer;
+
public Boolean costEnable;
public Boolean costConfirm;
public Double costPrice;
@@ -44,6 +47,9 @@ public class AliasObject {
String permission,
String permissionMSG,
+ Integer cooldownGlobal,
+ Integer cooldownPlayer,
+
Boolean costEnable,
Boolean costConfirm,
Double costPrice,
@@ -77,6 +83,9 @@ public class AliasObject {
this.permission = permission;
this.permissionMSG = permissionMSG;
+ this.cooldownGlobal = cooldownGlobal;
+ this.cooldownPlayer = cooldownPlayer;
+
this.costEnable = costEnable;
this.costConfirm = costConfirm;
this.costPrice = costPrice;
diff --git a/src/main/java/net/t2code/alias/Spigot/objects/Cooldown.java b/src/main/java/net/t2code/alias/Spigot/objects/Cooldown.java
new file mode 100644
index 0000000..e24364f
--- /dev/null
+++ b/src/main/java/net/t2code/alias/Spigot/objects/Cooldown.java
@@ -0,0 +1,15 @@
+package net.t2code.alias.Spigot.objects;
+
+import java.util.UUID;
+
+public class Cooldown {
+
+ public UUID player;
+ public Long long_;
+
+ public Cooldown(UUID player,
+ Long long_) {
+ this.player = player;
+ this.long_ = long_;
+ }
+}
diff --git a/src/main/java/net/t2code/alias/Spigot/objects/SubAliasObject.java b/src/main/java/net/t2code/alias/Spigot/objects/SubAliasObject.java
index 1c4a655..69fca60 100644
--- a/src/main/java/net/t2code/alias/Spigot/objects/SubAliasObject.java
+++ b/src/main/java/net/t2code/alias/Spigot/objects/SubAliasObject.java
@@ -12,6 +12,9 @@ public class SubAliasObject {
public String permission;
public String permissionMSG;
+ public Integer cooldownGlobal;
+ public Integer cooldownPlayer;
+
public Boolean costEnable;
public Boolean costConfirm;
public Double costPrice;
@@ -48,6 +51,9 @@ public class SubAliasObject {
String permission,
String permissionMSG,
+ Integer cooldownGlobal,
+ Integer cooldownPlayer,
+
Boolean costEnable,
Boolean costConfirm,
Double costPrice,
@@ -83,6 +89,9 @@ public class SubAliasObject {
this.permission = permission;
this.permissionMSG = permissionMSG;
+ this.cooldownGlobal = cooldownGlobal;
+ this.cooldownPlayer = cooldownPlayer;
+
this.costEnable = costEnable;
this.costConfirm = costConfirm;
this.costPrice = costPrice;
diff --git a/src/main/java/net/t2code/alias/Spigot/system/AliasRegister.java b/src/main/java/net/t2code/alias/Spigot/system/AliasRegister.java
index a560a74..92fa9ce 100644
--- a/src/main/java/net/t2code/alias/Spigot/system/AliasRegister.java
+++ b/src/main/java/net/t2code/alias/Spigot/system/AliasRegister.java
@@ -30,7 +30,7 @@ public class AliasRegister {
if (!(T2CmcVersion.isMc1_8() || T2CmcVersion.isMc1_9() || T2CmcVersion.isMc1_10() || T2CmcVersion.isMc1_11() || T2CmcVersion.isMc1_12())) {
- Main.getPlugin().getBukkitCommandWrap().sync();
+ // Main.getPlugin().getBukkitCommandWrap().sync();
if (Bukkit.getOnlinePlayers().size() >= 1)
for (Player player : Bukkit.getOnlinePlayers()) player.updateCommands();
}
@@ -83,8 +83,5 @@ public class AliasRegister {
} else T2Csend.warning(Main.getPlugin(), " §4AliasHashmap is null! - " + alias);
}
- private static void wrap(String alias, CommandMap commandMap) {
- Command cmd = commandMap.getCommand(alias);
- Main.getPlugin().getBukkitCommandWrap().wrap(cmd, alias);
- }
+
}
diff --git a/src/main/java/net/t2code/alias/Spigot/system/AliasRegisterPermissions.java b/src/main/java/net/t2code/alias/Spigot/system/AliasRegisterPermissions.java
index 30284b4..648132d 100644
--- a/src/main/java/net/t2code/alias/Spigot/system/AliasRegisterPermissions.java
+++ b/src/main/java/net/t2code/alias/Spigot/system/AliasRegisterPermissions.java
@@ -12,23 +12,23 @@ public class AliasRegisterPermissions {
for (AliasObject aliasObject : Main.aliasHashMap.values()) {
- for (String alias : aliasObject.aliasList){
- if (Bukkit.getPluginManager().getPermission(aliasObject.permission.replace("",alias).toLowerCase()) == null) {
- T2Cregister.permission(aliasObject.permission.replace("",alias).toLowerCase(), Main.getPlugin());
+ for (String alias : aliasObject.aliasList) {
+ if (aliasObject.permission != null && Bukkit.getPluginManager().getPermission(aliasObject.permission.replace("", alias).toLowerCase()) == null) {
+ T2Cregister.permission(aliasObject.permission.replace("", alias).toLowerCase(), Main.getPlugin());
}
- if (Bukkit.getPluginManager().getPermission(aliasObject.adminPermission.replace("",alias).toLowerCase()) == null) {
- T2Cregister.permission(aliasObject.adminPermission.replace("",alias).toLowerCase(), Main.getPlugin());
+ if (aliasObject.adminPermission != null && Bukkit.getPluginManager().getPermission(aliasObject.adminPermission.replace("", alias).toLowerCase()) == null) {
+ T2Cregister.permission(aliasObject.adminPermission.replace("", alias).toLowerCase(), Main.getPlugin());
}
}
}
for (SubAliasObject subAliasObject : Main.subAliasHashMap.values()) {
- for (String alias : subAliasObject.subAliasList){
- if (Bukkit.getPluginManager().getPermission(subAliasObject.permission.replace("",alias).toLowerCase()) == null) {
- T2Cregister.permission(subAliasObject.permission.replace("",alias).toLowerCase(), Main.getPlugin());
+ for (String alias : subAliasObject.subAliasList) {
+ if (subAliasObject.permission != null && Bukkit.getPluginManager().getPermission(subAliasObject.permission.replace("", alias).toLowerCase()) == null) {
+ T2Cregister.permission(subAliasObject.permission.replace("", alias).toLowerCase(), Main.getPlugin());
}
- if (Bukkit.getPluginManager().getPermission(subAliasObject.adminPermission.replace("",alias).toLowerCase()) == null) {
- T2Cregister.permission(subAliasObject.adminPermission.replace("",alias).toLowerCase(), Main.getPlugin());
+ if (subAliasObject.adminPermission != null && Bukkit.getPluginManager().getPermission(subAliasObject.adminPermission.replace("", alias).toLowerCase()) == null) {
+ T2Cregister.permission(subAliasObject.adminPermission.replace("", alias).toLowerCase(), Main.getPlugin());
}
}
}
diff --git a/src/main/java/net/t2code/alias/Spigot/system/BCommandSenderReciver.java b/src/main/java/net/t2code/alias/Spigot/system/BCommandSenderReciver.java
index cb1d8e8..e4b5799 100644
--- a/src/main/java/net/t2code/alias/Spigot/system/BCommandSenderReciver.java
+++ b/src/main/java/net/t2code/alias/Spigot/system/BCommandSenderReciver.java
@@ -1,6 +1,7 @@
package net.t2code.alias.Spigot.system;
import net.t2code.alias.Spigot.Main;
+import net.t2code.t2codelib.SPIGOT.system.T2CbungeeCommandSenderReciver;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@@ -12,31 +13,7 @@ import java.io.IOException;
public class BCommandSenderReciver {
public static void sendToBungee(CommandSender sender, String information, Boolean console) {
- ByteArrayOutputStream stream = new ByteArrayOutputStream();
- DataOutputStream output = new DataOutputStream(stream);
- try {
- if (console) {
- output.writeUTF("T2Code-Console");
- } else {
- if (sender instanceof Player) {
- output.writeUTF(sender.getName());
- } else {
- output.writeUTF("T2Code-Console");
- }
- }
- output.writeUTF(information);
- } catch (IOException e) {
- e.printStackTrace();
- }
- if (sender instanceof Player) {
- Player player = (Player) sender;
- player.sendPluginMessage(Main.getPlugin(), "t2c:bcmd", stream.toByteArray());
- }else {
- for(Player player : Bukkit.getOnlinePlayers()){
- player.sendPluginMessage(Main.getPlugin(), "t2c:bcmd", stream.toByteArray());
- return;
- }
- }
+ T2CbungeeCommandSenderReciver.sendToBungee(sender,information,console);
}
}
diff --git a/src/main/java/net/t2code/alias/Spigot/system/BukkitCommandWrap.java b/src/main/java/net/t2code/alias/Spigot/system/BukkitCommandWrap.java
deleted file mode 100644
index 5ebee2c..0000000
--- a/src/main/java/net/t2code/alias/Spigot/system/BukkitCommandWrap.java
+++ /dev/null
@@ -1,247 +0,0 @@
-package net.t2code.alias.Spigot.system;
-
-import com.mojang.brigadier.tree.CommandNode;
-import com.mojang.brigadier.tree.RootCommandNode;
-import org.bukkit.Bukkit;
-import org.bukkit.command.Command;
-
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-public class BukkitCommandWrap {
- private Field bField;
- private Method removeCommandMethod;
- private String nmsVersion;
- private Class minecraftServerClass;
- private Method aMethod;
- private Method getServerMethod;
- private Field vanillaCommandDispatcherField;
- private Method getCommandDispatcherMethod;
- private Method registerMethod;
- private Method syncCommandsMethod;
- private Constructor bukkitcommandWrapperConstructor;
-
- public BukkitCommandWrap() {
- try {
- this.nmsVersion = Bukkit.getServer().getClass().getPackage().getName().replace(".", ",").split(",")[3];
- } catch (ArrayIndexOutOfBoundsException e) {
- e.printStackTrace();
- this.nmsVersion = null;
- }
- }
-
- public void wrap(Command command, String alias) {
- if (this.nmsVersion == null) return;
- if (this.minecraftServerClass == null) try {
- this.minecraftServerClass = Class.forName("net.minecraft.server." + this.nmsVersion + ".MinecraftServer");
- } catch (ClassNotFoundException e) {
- try {
- this.minecraftServerClass = Class.forName("net.minecraft.server.MinecraftServer");
- } catch (ClassNotFoundException classNotFoundException) {
- classNotFoundException.addSuppressed(e);
- classNotFoundException.printStackTrace();
- return;
- }
- }
-
- if (this.getServerMethod == null) try {
- this.getServerMethod = this.minecraftServerClass.getMethod("getServer");
- this.getServerMethod.setAccessible(true);
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- return;
- }
-
- Object minecraftServer;
- try {
- minecraftServer = this.getServerMethod.invoke(this.minecraftServerClass);
- } catch (IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.vanillaCommandDispatcherField == null) try {
- this.vanillaCommandDispatcherField = this.minecraftServerClass.getDeclaredField("vanillaCommandDispatcher");
- this.vanillaCommandDispatcherField.setAccessible(true);
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- return;
- }
-
- Object commandDispatcher = null;
- try {
- commandDispatcher = this.vanillaCommandDispatcherField.get(minecraftServer);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.bField == null) try {
- this.bField = Class.forName("net.minecraft.commands.CommandDispatcher").getDeclaredField("g");
- this.bField.setAccessible(true);
- } catch (NoSuchFieldException | ClassNotFoundException e) {
- e.printStackTrace();
- return;
- }
-
- com.mojang.brigadier.CommandDispatcher b;
- try {
- b = (com.mojang.brigadier.CommandDispatcher) this.bField.get(commandDispatcher);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.aMethod == null) try {
- this.aMethod = commandDispatcher.getClass().getDeclaredMethod("a");
- this.aMethod.setAccessible(true);
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.bukkitcommandWrapperConstructor == null) try {
- this.bukkitcommandWrapperConstructor = Class.forName("org.bukkit.craftbukkit." + this.nmsVersion + ".command.BukkitCommandWrapper").getDeclaredConstructor(Class.forName("org.bukkit.craftbukkit." + this.nmsVersion + ".CraftServer"), Command.class);
- this.bukkitcommandWrapperConstructor.setAccessible(true);
- } catch (NoSuchMethodException | ClassNotFoundException e) {
- e.printStackTrace();
- return;
- }
-
- Object commandWrapper;
-
- try {
- commandWrapper = this.bukkitcommandWrapperConstructor.newInstance(Bukkit.getServer(), command);
- } catch (InstantiationException | IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- return;
- }
-
- Object a;
-
- try {
- a = this.aMethod.invoke(commandDispatcher);
- } catch (IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.registerMethod == null) try {
- this.registerMethod = Class.forName("org.bukkit.craftbukkit." + this.nmsVersion + ".command.BukkitCommandWrapper").getMethod("register", com.mojang.brigadier.CommandDispatcher.class, String.class);
- this.registerMethod.setAccessible(true);
- } catch (NoSuchMethodException | ClassNotFoundException e) {
- e.printStackTrace();
- return;
- }
-
- try {
- this.registerMethod.invoke(commandWrapper, a, alias);
- } catch (IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- }
- }
-
- public void sync() {
- if (this.syncCommandsMethod == null) try {
- this.syncCommandsMethod = Class.forName("org.bukkit.craftbukkit." + this.nmsVersion + ".CraftServer").getDeclaredMethod("syncCommands");
- this.syncCommandsMethod.setAccessible(true);
- } catch (NoSuchMethodException | ClassNotFoundException e) {
- e.printStackTrace();
- return;
- }
-
- try {
- this.syncCommandsMethod.invoke(Bukkit.getServer());
- } catch (IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- }
- }
-
- public void unwrap(String command) {
- if (this.nmsVersion == null) return;
- if (this.minecraftServerClass == null) try {
- this.minecraftServerClass = Class.forName("net.minecraft.server." + this.nmsVersion + ".MinecraftServer");
- } catch (ClassNotFoundException e) {
- try {
- this.minecraftServerClass = Class.forName("net.minecraft.server.MinecraftServer");
- } catch (ClassNotFoundException classNotFoundException) {
- classNotFoundException.printStackTrace();
- classNotFoundException.addSuppressed(e);
- return;
- }
- }
- if (this.getServerMethod == null) try {
- this.getServerMethod = this.minecraftServerClass.getMethod("getServer");
- this.getServerMethod.setAccessible(true);
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- return;
- }
-
- Object server;
-
- try {
- server = this.getServerMethod.invoke(this.minecraftServerClass);
- } catch (IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.vanillaCommandDispatcherField == null) try {
- this.vanillaCommandDispatcherField = this.minecraftServerClass.getDeclaredField("vanillaCommandDispatcher");
- this.vanillaCommandDispatcherField.setAccessible(true);
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- return;
- }
-
- Object commandDispatcher = null;
- try {
- commandDispatcher = this.vanillaCommandDispatcherField.get(server);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.bField == null) try {
- this.bField = Class.forName("net.minecraft.server." + this.nmsVersion + ".CommandDispatcher").getDeclaredField("b");
- this.bField.setAccessible(true);
- } catch (NoSuchFieldException | ClassNotFoundException e) {
- if (this.bField == null) try {
- this.bField = Class.forName("net.minecraft.commands.CommandDispatcher").getDeclaredField("g");
- this.bField.setAccessible(true);
- } catch (NoSuchFieldException | ClassNotFoundException ex) {
- ex.addSuppressed(e);
- e.printStackTrace();
- return;
- }
- }
-
- com.mojang.brigadier.CommandDispatcher b;
- try {
- b = (com.mojang.brigadier.CommandDispatcher) this.bField.get(commandDispatcher);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- return;
- }
-
- if (this.removeCommandMethod == null) try {
- try {
- this.removeCommandMethod = RootCommandNode.class.getDeclaredMethod("removeCommand", String.class);
- } catch (NoSuchMethodException | NoSuchMethodError ex) {
- this.removeCommandMethod = CommandNode.class.getDeclaredMethod("removeCommand", String.class);
- }
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- return;
- }
-
- try {
- this.removeCommandMethod.invoke(b.getRoot(), command);
- } catch (IllegalAccessException | InvocationTargetException e) {
- e.printStackTrace();
- }
- }
-}
diff --git a/src/main/java/net/t2code/alias/Spigot/system/BukkitCommandWrap_Useless.java b/src/main/java/net/t2code/alias/Spigot/system/BukkitCommandWrap_Useless.java
deleted file mode 100644
index 0815c4c..0000000
--- a/src/main/java/net/t2code/alias/Spigot/system/BukkitCommandWrap_Useless.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package net.t2code.alias.Spigot.system;
-
-import org.bukkit.command.Command;
-
-public class BukkitCommandWrap_Useless extends BukkitCommandWrap {
-
- public BukkitCommandWrap_Useless() {
- }
-
- @Override
- public void wrap(Command command, String alias) {
- }
-
- @Override
- public void unwrap(String command) {
- }
-}