package fr.leziko.maintenance.command; import fr.leziko.maintenance.Main; import org.bukkit.Bukkit; import org.bukkit.OfflinePlayer; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.Player; import java.io.File; import java.io.IOException; public class CommandMaintenance implements CommandExecutor { private final Main main; public CommandMaintenance(Main main) { this.main = main; } @Override public boolean onCommand(CommandSender sender, Command cmd, String msg, String[] args) { Player player = (Player) sender; if (msg.equalsIgnoreCase("maintenance")) { if (args.length == 0) { player.sendMessage("§7§m----------------------------------------------"); player.sendMessage("§2/maintenance §aon §7| Permet d'activer la maintenance"); player.sendMessage("§2/maintenance §aoff §7| Permet de désactiver la maintenance"); player.sendMessage("§2/maintenance §aadd §7| Permet d'ajouter un joueur"); player.sendMessage("§2/maintenance §adel §7| Permet de supprimer un joueur"); player.sendMessage("§7§m----------------------------------------------"); }else if(args.length >= 1){ if(args[0].equalsIgnoreCase("add")){ OfflinePlayer target = Bukkit.getOfflinePlayer(args[1]); if(target instanceof Player) { if(!Main.list.contains(target)){ Main.list.add(target); player.sendMessage("§6§l[§9§lMaintenance§6§l] §aTu as ajouté §b" + target.getName() + " §aà la §bMaintenance §a!"); FileConfiguration config = main.getConfig(); config.set("liste.maintenanceliste", Main.list); try { config.save(new File(main.getDataFolder(), "config.yml")); } catch (IOException e) { e.printStackTrace(); } }else{ player.sendMessage("§6§l[§9§lMaintenance§6§l] §cTu as déjà ajouté §b" + target.getName() + " §cà la §bMaintenance §a!"); } }else{ player.sendMessage("§6§l[§9§lMaintenance§6§l] §cSeuls les §b§lJoueurs §cpeuvent être dans la liste !"); } }else if(args[0].equalsIgnoreCase("remove")){ OfflinePlayer target2 = Bukkit.getOfflinePlayer(args[1]); if(target2 instanceof Player){ if(Main.list.contains(target2)){ Main.list.remove(target2); player.sendMessage("§6§l[§9§lMaintenance§6§l] §aTu as retiré §c" + target2.getName() + " §ade la §bMaintenance §a!"); }else{ player.sendMessage("§6§l[§9§lMaintenance§6§l] §cCe joueur n'est pas dans la liste de la §bMaintenance §c!"); } }else{ player.sendMessage("§6§l[§9§lMaintenance§6§l] §cSeuls les §b§lJoueurs §cpeuvent être supprimés de la liste !"); } }else if(args[0].equalsIgnoreCase("off")){ Main.statut = false; player.sendMessage("§6§l[§9§lMaintenance§6§l] §aTu as §cdésactivé §ala §bMaintenance §a!"); }else if(args[0].equalsIgnoreCase("on")){ Main.statut = true; for(Player players : Bukkit.getOnlinePlayers()){ if(Main.statut == true){ if(!Main.list.contains(players)){ players.kickPlayer("§4Maintenance en cours..."); }else{ players.sendMessage("§6§l[§9§lMaintenance§6§l] §aVous n'êtes pas affectés par la §bMaintenance !"); } } } } } } return false; } }