Помогите Как добавлять строчки в конфиг.

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

Kloper

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
f3azzy
Мне нужно добавлять строчки в конфиг из пустого места, хочу сделать что то типо логов
К примеру когда игрок заходит первый раз, в конфиге создаётся информация о нём, что то типо этого:

Код:
timqxikzz:
  money:
  firstIp:
  lastIp:
  logs:
    [13:37 10.08.20] First join
    [13:40 10.08.20] Break Diamond Block

Строчки First join и Break Diamond Block можно будет добавлять путём отслеживания ивентов, но каким образом их добавлять?
 
Блин. Ну буквально в соседних темах же....
 
Получить твой logs листом, закинуть в этот лист твою строку, записать лист в logs.
Но твой метод хранения таких событий - *очень плох*.
 
config.set(путь, значение)

Что сложного?
 
config.set(путь, значение)

Что сложного?
Не работает, мне нужно не заменять существующие строчки, а добавлять новые, из пустого места..
По твоему совету сейчас попробовал вот так, ничего не работало.
Код:
        String checkPlayer = plugin.getConfig().getString("Players." + p.getName());
        if(checkPlayer == null) {
            plugin.getConfig().set("Players.", p.getName());
        }
 
Не работает, мне нужно не заменять существующие строчки, а добавлять новые, из пустого места..
По твоему совету сейчас попробовал вот так, ничего не работало.
Код:
        String checkPlayer = plugin.getConfig().getString("Players." + p.getName());
        if(checkPlayer == null) {
            plugin.getConfig().set("Players.", p.getName());
        }
А сохранять конфиг кто за тебя будет?
 
Конфиг не лучшее место хранить логи, память вся забьется на сервере. Да и лист не так записывается в yml
Код:
        List<String> list = this.getConfig().getStringList("patch");
        list.add("value");
 
Конфиг не лучшее место хранить логи, память вся забьется на сервере. Да и лист не так записывается в yml
Код:
        List<String> list = this.getConfig().getStringList("patch");
        list.add("value");
Всё равно ничего не работает, вот конфиге получается вот так:
Код:
Players: {}

код:

Код:
String checkPlayer = plugin.getConfig().getString("Players." + p.getName());
        if(checkPlayer == null) {
            List<String> list = plugin.getConfig().getStringList("Players");
            list.add(p.getName());
            plugin.saveConfig();
        }
 
Всё равно ничего не работает, вот конфиге получается вот так:
Код:
Players: {}

код:

Код:
String checkPlayer = plugin.getConfig().getString("Players." + p.getName());
        if(checkPlayer == null) {
            List<String> list = plugin.getConfig().getStringList("Players");
            list.add(p.getName());
            plugin.saveConfig();
        }
ну да, а записывать лист обратно не надо, да?
Код:
plugin.getConfig().set("Players", list);
 
ну да, а записывать лист обратно не надо, да?
Код:
plugin.getConfig().set("Players", list);
Теперь оно записывается как просто фраза в конфиг, а мне нужно ещё из этого создать ещё один лист, чтобы было не так
Код:
Players:
  - timqxikzz
а так
Код:
Players:
  timqxikzz:
 
Теперь оно записывается как просто фраза в конфиг, а мне нужно ещё из этого создать ещё один лист, чтобы было не так
Код:
Players:
  - timqxikzz
а так
Код:
Players:
  timqxikzz:
Тю, так тебе так надо
Код:
plugin.getConfig().set("Players." + p.getName() + ".money", "money");
plugin.getConfig().set("Players." + p.getName() + ".firstIp", "firstIp");
plugin.getConfig().set("Players." + p.getName() + ".lastIp", "lastIp");
plugin.saveConfig();
 
Тю, так тебе так надо
Код:
plugin.getConfig().set("Players." + p.getName() + ".money", "100");
plugin.getConfig().set("Players." + p.getName() + ".firstIp", p.getAddress().getLocalHost().toString());
plugin.getConfig().set("Players." + p.getName() + ".lastIp", "lastIp");
plugin.saveConfig();
СПАСИБО!
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх