Помогите Обработка команд

  • Автор темы Автор темы Rbiter
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Rbiter

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Rbiter
Что с кодом не так? Уже который раз перепроверяю. Компилируется без ошибок. Но в консоле идут краши...

Код:
@EventHandler
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        // объявляем переменные
        String msg = null;
        String prefix = null;
        prefix = config.Prefix;
        msg = msg.replace("%prefix%", prefix);

        if (label.equalsIgnoreCase("bundle")) {
            if (args.length == 0) {

                // Команды доступные только игрокам!!!
                if ((sender instanceof Player)) {
                    msg = "%prefix% Введите /bundle help для подробностей.";
                    sender.sendMessage(ChatColor.translateAlternateColorCodes('&', msg));
                    if (args.length == 1) {
                        String command = args[0];
                        // Радужная брона
                        if (command.equalsIgnoreCase("rainbow")) {
                            Player p = (Player) sender;
                            if (sender.hasPermission("bundle.rainbow")) {
                                if (bundle.RainbowList.contains(p)) {
                                    msg = config.RainbowOff;
                                    p.sendMessage(ChatColor.translateAlternateColorCodes('&', msg));
                                    bundle.RainbowList.remove(p);
                                } else {
                                    msg = config.RainbowOn;
                                    p.sendMessage(ChatColor.translateAlternateColorCodes('&', msg));
                                    bundle.RainbowList.add(p);
                                }
                            } else if (!sender.hasPermission("bundle.rainbow")) {
                                msg = config.PermNotStr;
                                p.sendMessage(ChatColor.translateAlternateColorCodes('&', msg));
                            }
                        } else {
                        }
                        // Конец радужной брони
                        // /bundle help начало
                        if (command.equalsIgnoreCase("help")) {
                            Player p = (Player) sender;
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&',
                                    "&b&l=============BundleBoomPlugin============="));
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&',
                                    "&с&lРазработчик: \n &aВлад Rbiter Вальтер "));
                            p.sendMessage(ChatColor.translateAlternateColorCodes('&', "Доступные команды:"));

                            if (sender.hasPermission("bundle.rainbow")) {
                                p.sendMessage(ChatColor.translateAlternateColorCodes('&',
                                        "&c&l/bundle rainbow &f- включить/выключить радужную броню"));
                            }
                        }
                    }
                }
            }
        }
        return false;
    }

Лог краша


Код:
[23:37:52 INFO]: AcidVlad issued server command: /bundle
[23:37:52 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'bundle' in plugin bundlePlugin v0.1
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[server.jar:git-Spigot-dcd1643-d7bebef]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[server.jar:git-Spigot-dcd1643-d7bebef]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) ~[server.jar:git-Spigot-dcd1643-d7beb
        at net.minecraft.server.v1_12_R1.PlayerConnection.handleCommand(PlayerConnection.java:1399) [server.jar:git-Spigot-dcd1643
        at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1234) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:45) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.PlayerConnectionUtils$1.run(SourceFile:13) [server.jar:git-Spigot-dcd1643-d7bebef]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_201]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_201]
        at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:748) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [server.jar:git-Spigot-dcd1643-d7bebef]
        at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [server.jar:git-Spigot-dcd1643-d7bebef]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]
Caused by: java.lang.NullPointerException
        at ru.bundle.bundle.onCommand(bundle.java:59) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[server.jar:git-Spigot-dcd1643-d7bebef]
        ... 15 more
 
Все, разобрался. В коде куча ошибок... Проблема исправлена.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх