diff --git a/src/main/java/com/slprojects/slcraftplugin/Main.java b/src/main/java/com/slprojects/slcraftplugin/Main.java index 0304ecf25d46266c336e6872e11927ed9e55ad07..98c00f3850f142a11baaaec8f9e02094a5722bda 100644 --- a/src/main/java/com/slprojects/slcraftplugin/Main.java +++ b/src/main/java/com/slprojects/slcraftplugin/Main.java @@ -105,13 +105,13 @@ public final class Main extends JavaPlugin implements Listener { LinkCode linkCodeCommand = new LinkCode(this); getCommand("getLinkCode").setExecutor(linkCodeCommand); - getServer().getConsoleSender().sendMessage(ChatColor.GREEN + "SL-Craft | Plugin démarré"); + ConsoleLog.success("Plugin démarré"); } @Override public void onDisable() { // Plugin shutdown logic - getServer().getConsoleSender().sendMessage(ChatColor.RED + "SL-Craft | Plugin éteint"); + ConsoleLog.danger("Plugin désactivé, au revoir!"); getServer().getOnlinePlayers().forEach(player -> playerDataHandler.quitEvent(player)); } @@ -195,7 +195,7 @@ public final class Main extends JavaPlugin implements Listener { // Et dans la console if (e.getPlayer() == p) { - getServer().getConsoleSender().sendMessage(CompleteMessage); + ConsoleLog.info(CompleteMessage); } } // On envoie le message sur discord (on envoie le msg sans les couleur ni le formatage) @@ -237,7 +237,7 @@ public final class Main extends JavaPlugin implements Listener { con.disconnect(); returnData = response.toString(); } catch (Exception ex) { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "Impossible de se connecter à l'url " + urlString + ". Func getHttp(String urlString)"); + ConsoleLog.danger("Impossible de se connecter à l'url " + urlString + ". Func getHttp(String urlString)"); ex.printStackTrace(); } @@ -264,7 +264,7 @@ public final class Main extends JavaPlugin implements Listener { String response = getHttp(urlString); if (getConfig().getBoolean("msg-verbose")) { - getServer().getConsoleSender().sendMessage("Func AsyncChatEvent(PlayerChatEvent e), HTTP response:" + response); + ConsoleLog.info("Func AsyncChatEvent(PlayerChatEvent e), HTTP response:" + response); } } catch (UnsupportedEncodingException ex) { ConsoleLog.danger("Impossible de d'encoder les données. Func AsyncChatEvent(PlayerChatEvent e)"); @@ -281,7 +281,7 @@ public final class Main extends JavaPlugin implements Listener { try { Class.forName("org.mariadb.jdbc.MariaDbPoolDataSource"); } catch (ClassNotFoundException e) { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "Il manque le driver MariaDB!"); + ConsoleLog.danger("Il manque le driver MariaDB!"); getServer().getPluginManager().disablePlugin(this); } try { @@ -290,7 +290,7 @@ public final class Main extends JavaPlugin implements Listener { ConsoleLog.success("Connexion à la base de données réussie!"); }// ou les saisir catch (SQLException e) { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "Erreur lors de la connexion à la base de données."); + ConsoleLog.danger("Erreur lors de la connexion à la base de données."); getServer().getPluginManager().disablePlugin(this); } return conn; @@ -350,7 +350,7 @@ public final class Main extends JavaPlugin implements Listener { ps.executeQuery(); con.close(); } catch (Exception e) { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "Erreur lors de l'exécution de initDatabase(): " + e); +ConsoleLog.danger("Erreur lors de l'exécution de initDatabase(): " + e); } } } diff --git a/src/main/java/com/slprojects/slcraftplugin/commands/admins/WildReset.java b/src/main/java/com/slprojects/slcraftplugin/commands/admins/WildReset.java index d3a6993789bc219964dcec9cd74b9419740c4608..c6002d6ec81bae4e064254a857f9d509e9ea8c49 100644 --- a/src/main/java/com/slprojects/slcraftplugin/commands/admins/WildReset.java +++ b/src/main/java/com/slprojects/slcraftplugin/commands/admins/WildReset.java @@ -1,6 +1,7 @@ package com.slprojects.slcraftplugin.commands.admins; import com.slprojects.slcraftplugin.Main; +import com.slprojects.slcraftplugin.utils.ConsoleLog; import org.bukkit.ChatColor; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; @@ -38,14 +39,14 @@ public class WildReset implements CommandExecutor { if (sender instanceof Player) { sender.sendMessage("§7§o" + msg); } else { - plugin.getServer().getConsoleSender().sendMessage(msg); + ConsoleLog.info(msg); } } else { String errorMsg = "Joueur n°" + i + " (dans la liste) non trouvé. :("; if (sender instanceof Player) { sender.sendMessage("§c" + errorMsg); } else { - plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + errorMsg); + ConsoleLog.danger(errorMsg); } } } @@ -54,7 +55,7 @@ public class WildReset implements CommandExecutor { if (sender instanceof Player) { sender.sendMessage("§c" + errorMsg); } else { - plugin.getServer().getConsoleSender().sendMessage(ChatColor.RED + errorMsg); + ConsoleLog.danger(errorMsg); } } return true; diff --git a/src/main/java/com/slprojects/slcraftplugin/commands/publics/LinkCode.java b/src/main/java/com/slprojects/slcraftplugin/commands/publics/LinkCode.java index e2bdd51314818727414f1481306d4d9fedab44b6..de66ecd94735595a3347c575fc0e166ed039cc29 100644 --- a/src/main/java/com/slprojects/slcraftplugin/commands/publics/LinkCode.java +++ b/src/main/java/com/slprojects/slcraftplugin/commands/publics/LinkCode.java @@ -1,6 +1,7 @@ package com.slprojects.slcraftplugin.commands.publics; import com.slprojects.slcraftplugin.Main; +import com.slprojects.slcraftplugin.utils.ConsoleLog; import org.bukkit.ChatColor; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; @@ -66,7 +67,7 @@ public class LinkCode implements CommandExecutor { } player.sendMessage("Utilise ce code pour lier ton compte: " + ChatColor.GREEN + generatedString); player.sendMessage(ChatColor.GRAY + "Ce code à usage unique expirera dans 5 minutes."); - plugin.getServer().getConsoleSender().sendMessage("Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a généré le code " + ChatColor.GREEN + generatedString + ChatColor.RESET + ChatColor.GRAY + " - Il expirera le " + java.sql.Timestamp.valueOf(LocalDateTime.now().plusMinutes(5))); + ConsoleLog.info("Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a généré le code " + ChatColor.GREEN + generatedString + ChatColor.RESET + ChatColor.GRAY + " - Il expirera le " + java.sql.Timestamp.valueOf(LocalDateTime.now().plusMinutes(5))); } catch (Exception e) { e.printStackTrace(); diff --git a/src/main/java/com/slprojects/slcraftplugin/commands/publics/Wild.java b/src/main/java/com/slprojects/slcraftplugin/commands/publics/Wild.java index 1848fe6c50a4b26713d219864c30e1eacd676804..91360661092677f4cbcae29d3ae6ff6447e783c3 100644 --- a/src/main/java/com/slprojects/slcraftplugin/commands/publics/Wild.java +++ b/src/main/java/com/slprojects/slcraftplugin/commands/publics/Wild.java @@ -1,6 +1,7 @@ package com.slprojects.slcraftplugin.commands.publics; import com.slprojects.slcraftplugin.Main; +import com.slprojects.slcraftplugin.utils.ConsoleLog; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Location; @@ -30,7 +31,10 @@ public class Wild implements CommandExecutor { private final List<Location> wildUsersStartLocation; private final int usageCooldown; private final int usagePerDay; + private final List<String> excludedBiomes; + private final String wildWorld; + @SuppressWarnings("unchecked") public Wild(Main plugin) { // On récupère la classe parente pour les paramètres this.plugin = plugin; @@ -40,8 +44,10 @@ public class Wild implements CommandExecutor { wildUsersStartLocation = new ArrayList<>(); usageCooldown = plugin.getConfig().getInt("wild.usage-cooldown"); usagePerDay = plugin.getConfig().getInt("wild.usage-per-day"); + excludedBiomes = (List<String>) plugin.getConfig().getList("wild.excluded-biomes"); + wildWorld = plugin.getConfig().getString("wild.world"); - plugin.getServer().getConsoleSender().sendMessage("Instance de wild."); + ConsoleLog.info("Instance de wild."); } @Override @@ -61,11 +67,11 @@ public class Wild implements CommandExecutor { wildUsersStartLocation.set(playerIndex, player.getLocation()); askForTeleport(player); } else { - plugin.getServer().getConsoleSender().sendMessage("[" + plugin.getName() + "] Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a exécuté la commande " + ChatColor.GOLD + "/wild" + ChatColor.RESET + " : " + ChatColor.RED + "refusé"); + ConsoleLog.info("Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a exécuté la commande " + ChatColor.GOLD + "/wild" + ChatColor.RESET + " : " + ChatColor.RED + "refusé"); player.sendMessage("§cVous n'avez le droit qu'à §n" + usagePerDay + "§r§c téléportations aléatoires par jour."); } } else { - plugin.getServer().getConsoleSender().sendMessage("[" + plugin.getName() + "] Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a exécuté la commande " + ChatColor.GOLD + "/wild" + ChatColor.RESET + " : " + ChatColor.RED + "refusé"); + ConsoleLog.info("Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a exécuté la commande " + ChatColor.GOLD + "/wild" + ChatColor.RESET + " : " + ChatColor.RED + "refusé"); player.sendMessage("§cVous devez attendre §n" + usageCooldown + "s§r§c avant de relancer la commande."); } } @@ -74,7 +80,7 @@ public class Wild implements CommandExecutor { private void askForTeleport(Player player) { int playerIndex = wildUsersIndexes.indexOf(player.getUniqueId()); - plugin.getServer().getConsoleSender().sendMessage("[" + plugin.getName() + "] Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a exécuté la commande " + ChatColor.GOLD + "/wild" + ChatColor.RESET + " : " + ChatColor.GREEN + "accepté"); + ConsoleLog.info("Le joueur " + ChatColor.GOLD + player.getName() + ChatColor.RESET + " a exécuté la commande " + ChatColor.GOLD + "/wild" + ChatColor.RESET + " : " + ChatColor.GREEN + "accepté"); player.sendMessage("Vous allez être téléporté dans §c" + plugin.getConfig().getInt("wild.move-cooldown") + "s§r, ne bougez pas."); int delayInTicks = plugin.getConfig().getInt("wild.move-cooldown") * plugin.getConfig().getInt("ticks-per-seconds"); @@ -95,14 +101,11 @@ public class Wild implements CommandExecutor { }.runTaskLater(plugin, delayInTicks); } + // TODO : Executer ceci sur un autre thread -> Le while peut bloquer le serveur. private void teleportPlayer(Player player) { int playerIndex = wildUsersIndexes.indexOf(player.getUniqueId()); wildUsersAskNum.set(playerIndex, wildUsersAskNum.get(playerIndex) + 1); - // on récupère la liste des biomes exclus - List<String> excludedBiomes; - excludedBiomes = (List<String>) plugin.getConfig().getList("wild.excluded-biomes"); - player.sendMessage("§6Téléportation vers une coordonnée aléatoire."); // On défini le radius de téléportation @@ -117,14 +120,14 @@ public class Wild implements CommandExecutor { flag = false; x = r.nextInt(high - low) + low; z = r.nextInt(high - low) + low; - y = Bukkit.getWorld(plugin.getConfig().getString("wild.world")).getHighestBlockYAt(x, z); + y = Bukkit.getWorld(wildWorld).getHighestBlockYAt(x, z); y++; // On incrémente la pos Y pour éviter que le joueur se retrouve dans le sol for (String excludedBiome : excludedBiomes) { // Biomes non reconnus ou supprimés (deep warm ocean) try { Biome.valueOf(excludedBiome.toUpperCase()); - if (Bukkit.getWorld(plugin.getConfig().getString("wild.world")).getBiome(x, y, z).equals(Biome.valueOf(excludedBiome.toUpperCase()))) { + if (Bukkit.getWorld(wildWorld).getBiome(x, y, z).equals(Biome.valueOf(excludedBiome.toUpperCase()))) { flag = true; } } catch (Exception ignored) { @@ -133,7 +136,7 @@ public class Wild implements CommandExecutor { } // On téléporte le joueur - Location loc = new Location(Bukkit.getWorld(plugin.getConfig().getString("wild.world")), x, y, z, 0, 0); + Location loc = new Location(Bukkit.getWorld(wildWorld), x, y, z, 0, 0); player.teleport(loc); int maxVal = Math.max(abs(x), abs(z)); diff --git a/src/main/java/com/slprojects/slcraftplugin/parallelTasks/PeriodicEvent.java b/src/main/java/com/slprojects/slcraftplugin/parallelTasks/PeriodicEvent.java index f61bb8ba57fdb6a481d5e4344c409dacb6e907cd..da62f14bf139dbd67294bf89c4b73b37629e033f 100644 --- a/src/main/java/com/slprojects/slcraftplugin/parallelTasks/PeriodicEvent.java +++ b/src/main/java/com/slprojects/slcraftplugin/parallelTasks/PeriodicEvent.java @@ -1,6 +1,7 @@ package com.slprojects.slcraftplugin.parallelTasks; import com.slprojects.slcraftplugin.Main; +import com.slprojects.slcraftplugin.utils.ConsoleLog; import org.bukkit.ChatColor; import org.bukkit.scheduler.BukkitRunnable; @@ -30,7 +31,7 @@ public class PeriodicEvent { } private void periodicEvent() { - plugin.getServer().getConsoleSender().sendMessage(ChatColor.GOLD + "[SL-Craft] Évènement périodique éxecuté."); + ConsoleLog.warning("[SL-Craft] Évènement périodique éxecuté."); // S'exécute à la fin doesTheEventIsCurrentlyRunning = false; diff --git a/src/main/java/com/slprojects/slcraftplugin/utils/ConsoleLog.java b/src/main/java/com/slprojects/slcraftplugin/utils/ConsoleLog.java index e863c61c18cf348ef50692ae89279a36f8bd4c10..10b4791bd0fa402a3576f23fff5197c16bee5b98 100644 --- a/src/main/java/com/slprojects/slcraftplugin/utils/ConsoleLog.java +++ b/src/main/java/com/slprojects/slcraftplugin/utils/ConsoleLog.java @@ -7,18 +7,18 @@ import static org.bukkit.Bukkit.getServer; public class ConsoleLog { public static void info(String message) { - getServer().getConsoleSender().sendMessage("[" + Main.pluginName + "] " + message); +ConsoleLog.info("[" + Main.pluginName + "] " + message); } public static void warning(String message) { - getServer().getConsoleSender().sendMessage(ChatColor.GOLD + "[" + Main.pluginName + "] " + message); +ConsoleLog.warning("[" + Main.pluginName + "] " + message); } public static void danger(String message) { - getServer().getConsoleSender().sendMessage(ChatColor.RED + "[" + Main.pluginName + "] " + message); +ConsoleLog.danger("[" + Main.pluginName + "] " + message); } public static void success(String message) { - getServer().getConsoleSender().sendMessage(ChatColor.GREEN + "[" + Main.pluginName + "] " + message); +ConsoleLog.success("[" + Main.pluginName + "] " + message); } }