- Поддерживаемые версии
- 1.8
- 1.9
- 1.10
- 1.11
- 1.12
- 1.13
- 1.14
- 1.15
- 1.16
- 1.17
- 1.18
- 1.19
Похожая тема: https://gist.github.com/Xezard/55b81fce657d3492c2b099521976b4f9
Код:
пример использования:
вид конфигурации:
главный класс:
Скриншоты:
Код:
Java:
public class cfg {
private static FileConfiguration config;
private static File file;
public void loadYamlFile(Plugin plugin) {
file = new File(plugin.getDataFolder(), "customCfg.yml");
if (!file.exists()) { //проверка на то есть ли файл, если нет - создаётся папка и сохраняется файл.
plugin.getDataFolder().mkdirs();
plugin.saveResource("customCfg.yml", true);
}
config = YamlConfiguration.loadConfiguration(file);
}
public static FileConfiguration getConfig() {
return config;
}
public void reloadCfg(Plugin plugin) {
if(!file.exists()) { //проверка на то есть ли файл, если нет - создаётся папка и сохраняется файл.
plugin.getDataFolder().mkdirs();
plugin.saveResource("customCfg.yml", true);
}
try {
config.load(file);
Bukkit.getConsoleSender().sendMessage("Конфигурация перезагружена!");
} catch (IOException | InvalidConfigurationException e) {
Bukkit.getConsoleSender().sendMessage("Не удалось перезагрузить конфигурацию!");
}
}
пример использования:
Java:
public class cmd implements CommandExecutor {
Guide main;
public cmd(Guide main) {
main.getCommand("cmd").setExecutor(this);
this.main = main;
}
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
cfg config = new cfg(); // инициализация конфигурации в класс
if(args.length < 1) {
sender.sendMessage(ChatColor.translateAlternateColorCodes('&', cfg.getConfig().getString("message")));
return true;
}
if(args[0].equalsIgnoreCase("reload")) {
config.reloadCfg(main);
sender.sendMessage("Reloaded!");
}
return true;
}
}
вид конфигурации:
YAML:
message: '&aКонфиг успешно работает!'
главный класс:
Java:
@Override
public void onEnable() {
cfg config = new cfg();
config.loadYamlFile(this);
new cmd(this);
}
Скриншоты: