- Баллы
- 76
- Имя в Minecraft
- f3azzy
Привет!
Нужно чтобы игроку с определённым ником при входе блокировали все действия, чтобы он не смог двигаться, сломать/поставить блок, написать команду или что либо сделать.
Но так же можно было этот "эффект" снять, через консоль, я тут сделал как то, вроде работает, даёт при входе все нужные "эффекты", но вот снять их, не получается, что у меня не так?
code:
Нужно чтобы игроку с определённым ником при входе блокировали все действия, чтобы он не смог двигаться, сломать/поставить блок, написать команду или что либо сделать.
Но так же можно было этот "эффект" снять, через консоль, я тут сделал как то, вроде работает, даёт при входе все нужные "эффекты", но вот снять их, не получается, что у меня не так?
code:
Код:
public class guard implements Listener, CommandExecutor{
ArrayList<Player> guard = new ArrayList<Player>();
@EventHandler
public void guardind(PlayerJoinEvent e) {
Player p = e.getPlayer();
if(p.getName().equals("timqxikzz") || p.getName().equals("shqrkzz")) {
guard.add(p);
p.sendMessage("§cYou need confirmation.");
}
}
@EventHandler
public void move(PlayerMoveEvent e) {
Player p = e.getPlayer();
if (guard.contains(p)) {
p.sendMessage("§cYou need confirmation.");
e.setCancelled(true);
}
}
@EventHandler
public void cmd(PlayerCommandPreprocessEvent e) {
Player p = e.getPlayer();
if (guard.contains(p)) {
p.sendMessage("§cYou need confirmation.");
e.setCancelled(true);
}
}
@EventHandler
public void cmd(BlockPlaceEvent e) {
Player p = e.getPlayer();
if (guard.contains(p)) {
p.sendMessage("§cYou need confirmation.");
e.setCancelled(true);
}
}
@EventHandler
public void cmd(BlockBreakEvent e) {
Player p = e.getPlayer();
if (guard.contains(p)) {
p.sendMessage("§cYou need confirmation.");
e.setCancelled(true);
}
}
@EventHandler
public void cmd(AsyncPlayerChatEvent e) {
Player p = e.getPlayer();
if (guard.contains(p)) {
p.sendMessage("§cYou need confirmation.");
e.setCancelled(true);
}
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if(!sender.hasPermission("server.adms")) {
return true;
}
if(args.length == 0) {
return true;
}
String name = args[0];
Player target = Bukkit.getPlayer(name);
if(target == null) {
return true;
}
guard.add(target);
guard.remove(target);
target.sendMessage("§aYou are allowed access");
return true;
}
}