1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите [РЕШЕНО] Как заполнить файл конфигурации координатами блоков?

Тема в разделе "Разработка плагинов для новичков", создана пользователем Exception_Prototype, 24 авг 2016.

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

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

    Баллы:
    96
    Т.е. при старте программы мы подгружаем все данные в ArrayList из конфига, ~работаем~ , после чего сохраняем всё в конфиг и всё. Я вас правильно понял?
     
  2. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    да.
     
  3. _MediaNik_

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

    Баллы:
    76
    Skype:
    Medianik5
    Имя в Minecraft:
    _MediaNik_
    Мне нравится логика этого парня.:good:
     
  4. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    При первом запуске бьёт ошибку сервер, файлик то пустой, ему не из чего подгружать. Ни секции, нечего другого в него не записано.

    java.lang.NullPointerException http://joxi.ru/krDDBdQf0vLwBr
    at me.pluginname.Main.onEnable(Main.java:71) ~[?:?]
    Надеюсь это был не сарказм. xD
     
  5. _MediaNik_

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

    Баллы:
    76
    Skype:
    Medianik5
    Имя в Minecraft:
    _MediaNik_
    Мне все больше нравится этот парень:good:(не сарказм)
     
  6. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Ладно, обошли. Но при сохранении тоже самое, он не может получить секции куда производить запись.
    Сейчас попробую установить её при создании конфига.
    Код:
    if (testConfig.getConfigurationSection("bloks") == null) { 
    }
     
  7. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну так добавь какойнибудь левый блок в конфиг вручную. Или добавь проверку isSection() или там где getKeys - isEmpty()
     
  8. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Чёт эт, не понятное дело.
    Вроде файлик не пустой, проверка есть.

    Код:
            if (!ChekingBlocksConfig.getRoot().isConfigurationSection("blocks")) {
                ChekingBlocksConfig.createSection("blocks");
    
            }
    
            saveFileTeamSpawns();
            saveFileTeamList();
            saveFileChekingBlocks();
    
            for (String _block : ChekingBlocksConfig.getConfigurationSection("blocks").getKeys(false)) {
    
                api.ListCheckingBlocks.add(Bukkit.getWorld("blocks." + _block + "world").getBlockAt(ChekingBlocksConfig.getInt("blocks." + _block + "x"), ChekingBlocksConfig.getInt("blocks." + _block + "y"), ChekingBlocksConfig.getInt("blocks." + _block + "z")));
            }
    
    Как бы старая проблема выше вернулась. Файлик не пустой (проверка есть перед чтением), даже 2 блока внесено, но всё равно кидает исключение.

    Код:
    [I]java.lang.NullPointerException
            at me.meplugin.Main.onEnable(Main.java:77) ~[?:?][/I]
    
    http://joxi.ru/xAe0KPosYjPMR2
     
  9. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ты забыл точки ".world" ".x" и тд
     
  10. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Грех обвинять вас в ошибке за всю вашу помощь, но всё же http://joxi.ru/E2pgylZsBZXvgm )))
    Сейчас проверю.
     
  11. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну а догадаться сложно чтоли? С конфигами чтоли не работал?
     
  12. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Неа, не помогло, я для проверки попытался добавить сюда http://joxi.ru/Dr8EBbYikXPD1m ещё точки, но нет, тоже не помогло.
    Дык, я как дней 6 всего начал плагины писать)
    Считай учусь только, первый конфиг оформлял с гайда, там почти нечего и не правил.
     
  13. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Наврятли там точки нужны.
    А конфиг должен так выглядеть.
    blocks:
    ..0:
    ....x: 1
    ....y: 5
    ....z: 4
    ..1:
    ....x: 5
    ....y: 4
    ....z: 7

    Точки это пробелы.
     
  14. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Ну почти так http://joxi.ru/v29lB9YuG6YY4m
    Разве что в одинарных скобочках номера блоков...
     
  15. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну хорошо. Попробуй убрать при запуске добавление блоков в лист. Добавь в лист пару блоков. И стопни сервер. И будет нужный конфиг.
     
  16. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Сделал, но конфиг не чем не отличается от предыдущего...
     
  17. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну значит при запуске гдето ошибка. У тебя arraylist случаем не null?
     
  18. Автор темы
    Exception_Prototype

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

    Баллы:
    96
    Код:
    ArrayList<Block> ListCheckingBlocks = new ArrayList<>();
    
    Как объявляется она в другом классе, но этот класс создаётся до заполнения из конфига.
    Но не думаю, что это причина проблемы, ибо запись в конфиг происходит нормально.
     
  19. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    А почему ты используешь api.list.add?
    А не просто list.add?
     
  20. Автор темы
    Exception_Prototype

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

    Баллы:
    96
Статус темы:
Закрыта.

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