Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Конфигурационный файл всегда возвращается к стандартному

Тема в разделе "Разработка плагинов для новичков", создана пользователем Dexel, 5 май 2017.

Статус темы:
Закрыта.
  1. Автор темы
    Dexel

    Dexel Активный участник Пользователь

    Баллы:
    76
    Skype:
    the_osirius
    Вот отрывок из config.yml:
    Код:
    death: 10
    broadcast: true
    И вот код, считывающий параметр death:
    Код:
    try {
                death = Main.getDConfig().getInt("death");
            }
            catch (Exception e) {
                e.printStackTrace();
            }
            try {
                Main.getDConfig().save(Main.getConfigf());
            } catch (IOException e) {
                e.printStackTrace();
            }
    Использую два файла, поэтому метод getDConfig() возвращает config.yml класса FileConfiguration, а getConfigf() возвращает config.yml класса File. Сохраняющего кода нет.

    Тем не менее, при не то чтобы при перезагрузке плагина, а даже при повторном чтении данной переменной из файла, предварительно она сбрасывается на стандартное значение. Например, если я укажу параметру death значение 3, то после сохранения и повторного считывания значение возвращается к 10. И так с остальными параметрами, сохраняющего кода для которых так же нет.

    Помогите, пожалуйста.
     
  2. Хостинг MineCraft
    <
  3. TheZefirrkka

    TheZefirrkka Активный участник Пользователь

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Код:
    //мой рабочий код.
    public void saveCfg() {
            try {
                config.save(File);
            }
            catch (IOException e) {
                e.printStackTrace();
            }
        }
     
  4. Автор темы
    Dexel

    Dexel Активный участник Пользователь

    Баллы:
    76
    Skype:
    the_osirius
    File - это просто класс?
     
  5. TheZefirrkka

    TheZefirrkka Активный участник Пользователь

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Это твой File с конфигом, например File f = Путь...Config.yml));
     
  6. Автор темы
    Dexel

    Dexel Активный участник Пользователь

    Баллы:
    76
    Skype:
    the_osirius
    Оно не работает.
     
  7. TheZefirrkka

    TheZefirrkka Активный участник Пользователь

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    У меня работает.. Покажи свой File и Conf.File
     
  8. OsipXD

    OsipXD Старожил Пользователь

    Баллы:
    173
    Skype:
    osip.fatkullin
    Имя в Minecraft:
    OsipXD
    А у тебя правда с большой буквы имя переменной?
     
  9. xDark

    xDark Активный участник Пользователь

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    :D
     
  10. TheZefirrkka

    TheZefirrkka Активный участник Пользователь

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    nea[DOUBLEPOST=1494014873,1494014361][/DOUBLEPOST]А я разве писал так??
     
  11. Автор темы
    Dexel

    Dexel Активный участник Пользователь

    Баллы:
    76
    Skype:
    the_osirius
    Код:
    configf = new File(getDataFolder(), "config.yml");
    
    config = new YamlConfiguration();
    [DOUBLEPOST=1494056238,1494053959][/DOUBLEPOST]Очень странно, но мне помогло при включении плагина сохранять конфиг всего лишь один раз, а не для каждого значения.
    Всем спасибо, тема закрыта.
     
Статус темы:
Закрыта.

Поделиться этой страницей