diff --git a/.idea/misc.xml b/.idea/misc.xml index 31c067e..2cefd2b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,3 @@ - diff --git a/pom.xml b/pom.xml index b8c1a9a..531be8a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ net.t2code T2CodeLib - 15.8_dev + 15.8 @@ -27,8 +27,8 @@ maven-compiler-plugin 3.8.1 - ${java.version} - ${java.version} + 9 + 9 diff --git a/src/main/java/net/t2code/t2codelib/SPIGOT/api/commands/T2Ccmd.java b/src/main/java/net/t2code/t2codelib/SPIGOT/api/commands/T2Ccmd.java index cabd1bf..4e01474 100644 --- a/src/main/java/net/t2code/t2codelib/SPIGOT/api/commands/T2Ccmd.java +++ b/src/main/java/net/t2code/t2codelib/SPIGOT/api/commands/T2Ccmd.java @@ -1,25 +1,71 @@ package net.t2code.t2codelib.SPIGOT.api.commands; +import net.t2code.t2codelib.SPIGOT.api.debug.T2Cdebug; import net.t2code.t2codelib.SPIGOT.system.T2CbungeeCommandSenderReciver; +import net.t2code.t2codelib.SPIGOT.system.T2CodeLibMain; import org.bukkit.Bukkit; import org.bukkit.entity.Player; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Unmodifiable; + +import java.rmi.MarshalledObject; +import java.util.Map; public class T2Ccmd { - public static void console(String cmd) { - if (cmd.contains("!onBungee")){ - T2CbungeeCommandSenderReciver.sendToBungee(null, cmd.replace("!onBungee", ""), true); - }else Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), cmd); + public static void console(String cmdInput) { + Map.Entry map = delay(cmdInput); + int delay = map.getValue(); + String cmd = map.getKey(); + Bukkit.getScheduler().runTaskLater(T2CodeLibMain.getPlugin(), new Runnable() { + @Override + public void run() { + if (cmd.contains("!onBungee")) { + T2CbungeeCommandSenderReciver.sendToBungee(null, cmd.replace("!onBungee", ""), true); + } else Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), cmd); + } + }, delay); } - public static void player(Player player, String cmd) { - if (cmd.contains("!asConsole")) { - if (cmd.contains("!onBungee")) { - T2CbungeeCommandSenderReciver.sendToBungee(player, cmd.replace("!asConsole", "").replace("!onBungee", ""), true); - } else console(cmd.replace("!asConsole", "")); - } else { - if (cmd.contains("!onBungee")) { - T2CbungeeCommandSenderReciver.sendToBungee(player, cmd.replace("!onBungee", ""), false); - } else player.chat("/" + cmd); - } + public static void player(Player player, String cmdInput) { + Map.Entry map = delay(cmdInput); + int delay = map.getValue(); + String cmd = map.getKey(); + Bukkit.getScheduler().runTaskLater(T2CodeLibMain.getPlugin(), new Runnable() { + @Override + public void run() { + if (cmd.contains("!asConsole")) { + if (cmd.contains("!onBungee")) { + T2CbungeeCommandSenderReciver.sendToBungee(player, cmd.replace("!asConsole", "").replace("!onBungee", ""), true); + } else console(cmd.replace("!asConsole", "")); + } else { + if (cmd.contains("!onBungee")) { + T2CbungeeCommandSenderReciver.sendToBungee(player, cmd.replace("!onBungee", ""), false); + } else player.chat("/" + cmd); + } + } + }, delay); } + + private static Map.Entry delay(@NotNull String cmdInput) { + T2Cdebug.debugmsg(T2CodeLibMain.getPlugin(), "Input: " + cmdInput); + int delay = 0; + String cmd; + if (cmdInput.contains("!delay:")) { + int i = cmdInput.indexOf("!delay:") + 7; + String s2 = cmdInput.substring(i); + int i2 = 1; + if(s2.contains(" ")) { + i2 = s2.indexOf(" "); + }else{ + i2 = s2.length(); + } + delay = Integer.parseInt(cmdInput.substring(i, i + i2)); + cmd = cmdInput.replace("!delay:" + delay, ""); + + } else cmd = cmdInput; + + return Map.entry(cmd, delay); + } + + }