Как я могу остановить мой конфиг от переопределения новых значений? - PullRequest
0 голосов
/ 13 марта 2020

Так что я немного новичок в Bukkit API, так что, пожалуйста, go не слишком усердствуйте со мной, кроме этого, я делаю плагин, в котором я хочу, чтобы администратор мог настраивать конфигурацию. , но я столкнулся с проблемой, что независимо от того, что я делаю, он заменяет новые значения, которые кто-то пытается ввести в конфигурацию, значениями по умолчанию.

Итак, вот список, который я настроил в конфигурации по умолчанию в сам код:

PersonalBoosterTypes:
- 5#60
- 2#60
- 3#60
- 5#45
- 2#180
- 3#120
- 2#90

Теперь, если я добавлю новое значение в конфигурацию плагина, а не в коде, например, так:

PersonalBoosterTypes:
- 5#60
- 2#60
- 3#60
- 5#45
- 2#180
- 3#120
- 2#90
- 3#180 // new value

и после этого я перезагружаю сервер, он удаляет это значение и сохраняет значения по умолчанию. Я поместил этот метод в свой onEnable:

private void loadConfig() {
    this.getConfig().options().copyDefaults(true);
    this.saveConfig();
}

Есть ли другой способ загрузить значения по умолчанию без переопределения, или мне нужно вручную добавлять каждое значение по умолчанию с помощью addDefault ()?

Пожалуйста помоги! Ура, Даниэль

1 Ответ

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

После некоторого исследования я на самом деле нашел решение самостоятельно, и оно удивительно просто, все, что мне нужно было сделать, - это в моем методе onDisable, мне просто нужно было добавить эти две строки:

this.reloadConfig();
this.saveConfig();

Сначала я был удивлен, но это работает как обаяние. Надеюсь, это поможет другим найти решение проблемы

...