package fr.astraxxtv.ecpl.commands; import java.util.ArrayList; import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerQuitEvent; public class Vanish implements CommandExecutor { private ArrayList vanished = new ArrayList<>(); @Override public boolean onCommand(CommandSender sender, Command cnd, String label, String[] args) { if (sender instanceof Player) { Player player = (Player) sender; if(player.hasPermission("EclypseCord.vaish")) { if(args.length == 0) { if(!vanished.contains(player)) { vanished.add(player); for(Player players : Bukkit.getOnlinePlayers()) { players.hidePlayer(player); } player.sendMessage("Vanish ON !"); } if(vanished.contains(player)) { vanished.remove(player); for(Player players : Bukkit.getOnlinePlayers()) { players.showPlayer(player); } sender.sendMessage("Vanish OFF !"); return false; } }else if(args.length == 1) { if(args[0].equalsIgnoreCase("on")) { if(vanished.contains(player)) { player.sendMessage("Vous êtes déjà Vanish"); return false; } vanished.add(player); for(Player players : Bukkit.getOnlinePlayers()) { players.hidePlayer(player); } player.sendMessage("Vanish ON !"); return false; }else if(args[0].equalsIgnoreCase("off")) { if(vanished.contains(player)) { player.sendMessage("Vous n'êtes pas vanish"); return false; } vanished.remove(player); for(Player players : Bukkit.getOnlinePlayers()) { players.showPlayer(player); } player.sendMessage("Vous venez de vous dévanish"); return false; } Player target = Bukkit.getPlayer(args[0]); if(target == null) { player.sendMessage("/vanish "); return false; } if(!vanished.contains(target)) { vanished.add(target); for(Player players : Bukkit.getOnlinePlayers()) { players.hidePlayer(target); } player.sendMessage("Vous venez de vanish" + args[0] + "!"); target.sendMessage("Vous venez d'être vanish"); return false; } if(vanished.contains(target)) { vanished.remove(target); for(Player players : Bukkit.getOnlinePlayers()) { players.showPlayer(target); } player.sendMessage("Vous venez de dévanish" + args[0] + "!"); target.sendMessage("Vous venez d'être dévanish !"); return false; } }else { player.sendMessage("/vanish "); return false; } } } else { sender.sendMessage("Vous devez être un joueur pour pouvoir faire cette commande."); } return false; } @EventHandler public void OnJoin(PlayerJoinEvent event) { for(Player player : vanished) { event.getPlayer().hidePlayer(player); } } @EventHandler public void onquit(PlayerQuitEvent event) { vanished.remove(event.getPlayer()); } }