ban я вроде сделал, но когда нету игрока, то выдает NullPointerException хотя вроде я проверяю, если игрок == null или если он не в бане то return false;
и unban точно также.
Вот код ban
А вот unban
и unban точно также.
Вот код ban
Java:
Main main;
public CmdBan(Main main)
{
this.main = main;
main.getCommand("ban").setExecutor(this);
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
if(!(sender instanceof Player))
{
return false;
}
if(!sender.hasPermission("ZendeX.Bans"))
{
sender.sendMessage("§cУ вас нет прав!");
return false;
}
if(args.length != 2)
{
sender.sendMessage("§cИспользуйте: /ban (Nickname) (Reason)");
return false;
}
Player p = (Player) sender;
Player target = Bukkit.getPlayer(args[0]);
String reason = args[1];
if(target.hasPermission("ZendeX.Mod") && p.hasPermission("ZendeX.Helper"))
{
p.sendMessage("§cУ вас нет прав!");
return false;
}
if(target.hasPermission("ZendeX.Owner") && p.hasPermission("ZendeX.Helper"))
{
p.sendMessage("§cУ вас нет прав!");
return false;
}
if(target.hasPermission("ZendeX.Admin") && p.hasPermission("ZendeX.Helper"))
{
p.sendMessage("§cУ вас нет прав!");
return false;
}
if(target.hasPermission("ZendeX.Owner") && p.hasPermission("ZendeX.Mod"))
{
p.sendMessage("§cУ вас нет прав!");
return false;
}
if(target.hasPermission("ZendeX.Admin") && p.hasPermission("ZendeX.Mod"))
{
p.sendMessage("§cУ вас нет прав!");
return false;
}
if(target.hasPermission("ZendeX.Admin") && p.hasPermission("ZendeX.Owner"))
{
p.sendMessage("§cУ вас нет прав!");
return false;
}
if(target.toString() == p.toString())
{
p.sendMessage("§cВы не можете забанить самого себя!");
return false;
}
if(target == null || !target.isOnline())
{
sender.sendMessage("§cИгрок не найден!");
return false;
}
if(reason.contains("1.4"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §81.4(Реклама серверов)\n\n§fПокупка разбана: §9zendex.su");
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
return true;
} else if(reason.contains("1.9"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §81.9(Передача аккаунта)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.0"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.0(Продажа аккаунта)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.1"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.1(Читы)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.2"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.2(Багоюз)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.3"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.3(Тим на solo режимах)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.4"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.4(ОбЪединение в тиму из нескольких комманд)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.5"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.5(Умалчивание о нарушениях в команде)\n\n§fПокупка разбана: §9zendex.su");
return true;
}else if(reason.contains("2.6"))
{
p.sendMessage("§7Игрок §8" + target + "§7 успешно забанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + p + "§f заблокировал нарушителя §c" + target + "§f за §c" + reason);
}
}
Bukkit.getBanList(BanList.Type.NAME).addBan(target.getName(), null, null, null);
target.kickPlayer("§7Вы были забанены игроком §8" + p + "§7 §8НАВСЕГДА §7за §82.6(Обман персонала)\n\n§fПокупка разбана: §9zendex.su");
return true;
Java:
if(!sender.hasPermission("ZendeX.Bans"))
{
sender.sendMessage("§cУ вас нет прав!");
return false;
}
if(args.length != 1)
{
sender.sendMessage("§cИспользуйте: /unban (Nickname)");
return false;
}
Player target = Bukkit.getPlayer(args[0]);
if(!Bukkit.getBanList(BanList.Type.NAME).isBanned(target.getName().toString()) || target == null)
{
System.out.println("Игрок не в бане или его не существует!");
}
sender.sendMessage("§7Игрок §8" + target + "§7 был разбанен.");
for(Player players : Bukkit.getOnlinePlayers())
{
if(players.hasPermission("ZendeX.Admin") || players.hasPermission("ZendeX.Owner") || players.hasPermission("ZendeX.Mod") || players.hasPermission("ZendeX.Helper") || players.hasPermission("ZendeX.JrHelper"))
{
players.sendMessage("§9МОДЕРАЦИЯ §8| §fПерсонал §b" + sender + "§f разблокировал нарушителя §c" + target);
}
}
Bukkit.getBanList(BanList.Type.NAME).pardon(target.getName().toString());
return true;