Вопрос Как работать с конфигами?

Tryingtaste

Разработчик
Пользователь
Сообщения
112
Нигде я не нашёл понятного гайда по этому.
Я хочу получать значение из файла config.yml и вписывать его. Как это можно сделать?
Можно только пожалуйста не заваливать меня кучей непонятного кода, как было в других подобных темах, который ничего не даёт тому, кто не умеет с этими конфигами работать.
Объединено

было бы удобно иметь какой то гайд, который в полной мере отвечает на этот вопрос без тучи непонятного кода с указанием "сделай так" без объяснений зачем это нужно и почему без этого не работает
 
Последнее редактирование модератором:
Решение
создаешь в проекте файл config.yml и вводишь туда, что тебе нужно

Java:
private static ГлавныйКласс instance; // переменная instance

public static Главный Класс getInstance() {
    return instance; // возвращаем переменную instance
}

public void onEnable() {
    saveDefaultConfig; // сохраняем конфиг при включении плагина (можно это сделать и при выключении, но как хочешь)
    instance = this; // присваиваем переменной instance наследие этого класса (хз правильно ли я сказал)
}


И дальше вызываешь в другом классе метод getInstance (или в главном, я хз где тебе это нужно), и давай например отправим сообщение при заходе игрока:

Java:
@EventHandler
public void join(PlayerJoinEvent e) {
  Player p = e.getPlayer()...
Последнее редактирование модератором:
создаешь в проекте файл config.yml и вводишь туда, что тебе нужно

Java:
private static ГлавныйКласс instance; // переменная instance

public static Главный Класс getInstance() {
    return instance; // возвращаем переменную instance
}

public void onEnable() {
    saveDefaultConfig; // сохраняем конфиг при включении плагина (можно это сделать и при выключении, но как хочешь)
    instance = this; // присваиваем переменной instance наследие этого класса (хз правильно ли я сказал)
}


И дальше вызываешь в другом классе метод getInstance (или в главном, я хз где тебе это нужно), и давай например отправим сообщение при заходе игрока:

Java:
@EventHandler
public void join(PlayerJoinEvent e) {
  Player p = e.getPlayer();
  p.sendMessage(ГлавныйКласс.getInstance().getConfig().getString("messages.join")); // при заходе игрока, мы отправим сообщение из конфига
}

При заходе игрока я ввел путь "messages.join", значит конфиг будет выглядеть так:

YAML:
messages:
  join: "вассап"
 
Для удобства, я написал для себя небольшое апи.

Пример использования:
Java:
public class ConfigManager {

    private final Config config;

    public ConfigManager((главный класс) main) {
        if (!main.getDataFolder().exists())
            main.getDataFolder().mkdirs();

        config = new Config("config.yml", false);
    }
}

P.s deletable - будет ли удаляться конфиг при включение плагина
 
без тучи непонятного кода с указанием "сделай так" без объяснений зачем это нужно и почему без этого не работает
Возможно, стоит просто прочесть документацию к написанному коду

Ну а вообще, есть официальный гайд
 
Последнее редактирование модератором:
То, что тебе непонятно - твоя проблема.
Изучи для начала основы java, а потом лезь писать плагины.

"он тупо печатает код,а че это за код и самое главное зачем он нужен не говорит" я только что посмотрел ролик и там все понятно.

Хотя на java пишу неделю, но уже успел разобраться с конфигами и прочими нюансами.
 
Последнее редактирование модератором:
То, что тебе непонятно - твоя проблема.
Изучи для начала основы java, а потом лезь писать плагины.

"он тупо печатает код,а че это за код и самое главное нахуя он нужен не говорит" я только что посмотрел ролик и там все понятно.

Хотя на java пишу неделю, но уже успел разобраться с конфигами и прочими нюансами.
Молодец! Возьми с полки пирожок! Ты очень умный!
 
Имеет смысл взять пример.
Кодер, который не понимает код, который пишет, никому не нужен, это факт.
есть два чела, один помог мне с конфигами, другой послал читать документацию
который нужен кому-то больше?
 
Последнее редактирование модератором:
один помог мне с конфигами
Дал тебе код, который ты скопировал, ничего не поняв. Ты ничему не научился, просто скопировал то, что для тебя - набор букв.

другой послал читать документацию
Сказал тебе включить мозги и чему-то научиться.
 
Последнее редактирование модератором:
Дал тебе код, который ты скопировал, ничего не поняв. Ты ничему не научился, просто скопировал то, что для тебя - набор букв.


Сказал тебе включить мозги и чему-то научиться.
Спустя два года - второй мне никак не помог, а лишь только засорил тред рассказами о том, какой он у мамки умный, а благодаря первому я тогда сэкономил много времени.
 
Спустя два года - второй мне никак не помог, а лишь только засорил тред рассказами о том, какой он у мамки умный, а благодаря первому я тогда сэкономил много времени.
Под каким ником он был? 1 и 2?
 
Под каким ником он был? 1 и 2?
Второй - который посоветовал мне учить жабу, и рассказал, как он за неделю всё выучил. Первый - который дал мне готовое решение.
 
Назад
Сверху Снизу