Настройка строки для конфигурации (Bukkit) - PullRequest
0 голосов
/ 08 марта 2020

Так что в настоящее время я делаю плагин для переделки функций mineplex, и я застрял, когда попал на запреты, потому что я пытался сделать так, чтобы, когда вы кого-то забанили, он вставлял в конфигурацию строку с именем, которое вы сказали в аргументах & & тогда строка будет иметь значение «banned». Однако, когда я выполняю команду, она сообщает сообщение, выдает внутреннюю ошибку и не устанавливает строку string, кто-нибудь знает почему? (Ошибка на getConfig.set)

if (cmd.getName().equalsIgnoreCase("ban")) {
        Player p = Bukkit.getPlayer(args[0]);
        if (args.length == 0) {

            sender.sendMessage("&9GWEN> &7Specify a player to ban");
        } else {
            Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&',
                    "&9GWEN> &7" + args[0] + " &7has been banned. I am always watching."));
            getConfig().set(p.getName(), "banned");
            if(!(p == null)) {
                p.kickPlayer("You have been banned by a mod");
            }
        }
    }

ОБНОВЛЕНИЕ: Итак, я переделал код, вот новый код .. Нет ошибок, но это не меняет конфигурацию

            Player p = Bukkit.getPlayer(args[0]);
            if (args.length == 0) {
                sender.sendMessage("&9GWEN> &7Specify a player to ban");
            } else {
                if(!(p == null)) {
                    p.kickPlayer("You have been banned by a mod");
                }
                Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&',
                        "&9GWEN> &7" + args[0] + " &7has been banned. I am always watching."));
                this.getConfig().set(args[0], "banned");
                saveDefaultConfig();
            }
        }```

1 Ответ

0 голосов
/ 17 марта 2020

Я думаю, что вы хотите, чтобы saveConfig() вместо saveDefaultConfig()

Spigot JavaDocs сказал это относительно saveDefaultConfig() https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/plugin/Plugin.html#saveDefaultConfig -

Сохраняет необработанное содержимое файла config.yml по умолчанию в папку, доступную для getConfig (). Это должно произойти автоматически, если config.yml уже существует.

...