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

Помогите Конфиг предметов.

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

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

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

    Баллы:
    78
    Skype:
    ilyxxxaa
    Имя в Minecraft:
    Psyhopat
    Собственно есть собственная наработка плагина, в нем есть такая вещь как временные предметы.
    Столкнулся с такой проблемой, не могу привязать в конфиге время для каждого итема.
    Вот пример конфига.
    upload_2017-3-25_22-22-24.png
    Результат работы.
    upload_2017-3-25_22-20-56.png
    А вот сам код конфига который загружает все это дело
    upload_2017-3-25_22-22-0.png
    Помогите ) не знаю уже че делать, думал отгрызать куски от текста но не то это.
    Надо как то грамотно загружать это все
    Там будет не мало данных.
    Помогите кто чем может
    подскажите куда копнуть или что то подобное. ​
     
  2. Хостинг MineCraft
    <
  3. Jampire

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

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    синтаксис yaml нарушен вот и косячит
     
  4. Автор темы
    PsyhopatMC

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

    Баллы:
    78
    Skype:
    ilyxxxaa
    Имя в Minecraft:
    Psyhopat
    там пример просто, я делал через дабл точки все равно бред выходит.
    upload_2017-3-25_22-43-10.png
    Не ну не бред конечно, просто в связи с тем что опыта не много, я не могу понять как с этим работать.
     
    Последнее редактирование: 25 мар 2017
  5. Blc_Dragon

    Blc_Dragon Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    Blc_Dragon
    +1
     
  6. Автор темы
    PsyhopatMC

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

    Баллы:
    78
    Skype:
    ilyxxxaa
    Имя в Minecraft:
    Psyhopat
    Где именно он нарушен?
     
  7. Blc_Dragon

    Blc_Dragon Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    Blc_Dragon
    когда перед строкой ставится "-", то это список. в нем нельзя делать всякое разное.
    можешь просто сделать вот так:
    Код:
    items:
    -DIRT,300
    -STONE,500
    
    а в коде
    Код:
    for (String s:config.getStringList("items")){
      String material = s.split(",")[0];
      int number = Integer.parceInt(s.split(",")[1]);
      //поиск смысла жизни, возможно даже что то делаем с теми данными, которые только что получили
    }
    
    Написано от руки, могут быть небольшие ошибки в синтаксисе\названиях методов
     
  8. Автор темы
    PsyhopatMC

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

    Баллы:
    78
    Skype:
    ilyxxxaa
    Имя в Minecraft:
    Psyhopat
    Получение данных из листа у меня идет не так как ты представил сейчас, у меня идет переборка массива на совпадения. Ладно спасиб , что нить подумаем.[DOUBLEPOST=1490470241,1490466071][/DOUBLEPOST]
    Код:
    if(config.metadataitem.contains(item.toString()))
    Вот пример условия, которое ищет названия в массиве
    Blc_Dragon
    Такой способ как ты привел не поставить на службу в данном коде) Ну или я так думаю )
    Все таки опыта не так много как хотелось бы.
     
  9. Blc_Dragon

    Blc_Dragon Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    Blc_Dragon
    мне все за тебя делать?

    лично я могу взять и проверить на наличие, причем двумя вариантами.[DOUBLEPOST=1490474693][/DOUBLEPOST]
    Код:
    //где то в onEnable
    HashSet<String> items = new HashSet<>();
    for (String s:config.getStringList("items")){
      String material = s.split(",")[0];
      int number = Integer.parceInt(s.split(",")[1]);
      //поиск смысла жизни, возможно даже что то делаем с теми данными, которые только что получили
      items.add(material);
    }
    
    //где то в жопе мира
    if (items.contains(item.toString())){
    //так сложно до этого додуматься
    //иди учи яву
    }
    
     
  10. Автор темы
    PsyhopatMC

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

    Баллы:
    78
    Skype:
    ilyxxxaa
    Имя в Minecraft:
    Psyhopat
    Мы решили дело почти так же) За код спасибо, выручил.
    Код:
            for (String s: config.metadataitem)
            {
              String material = s.split(",")[0];
              int number = Integer.parseInt(s.split(",")[1]);
              System.out.println(material + number);
              states.add(material);
            }
     
Статус темы:
Закрыта.

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