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

Помогите Заполнение сундука, проблема с поломкой вещей

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

  1. Автор темы
    glavrak

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

    Баллы:
    96
    Имя в Minecraft:
    Mr_Krab
    Пытаюсь пофиксить как следует плагин RandomChest, обновить до актуальной версии. Не могу разобраться с заполнением сундуков.
    Вот код.
    Вот ошибка в консоли.
    Код:
    [Server thread/ERROR]: Could not pass event PlayerInteractEvent to RandomChest v3.1.0
    org.bukkit.event.EventException: null
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot.jar:git-Spigot-65e8124-79e55b6]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot.jar:git-Spigot-65e8124-79e55b6]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:499) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:234) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.PlayerInteractManager.a(PlayerInteractManager.java:458) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:945) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.PacketPlayInUseItem.a(PacketPlayInUseItem.java:37) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.PacketPlayInUseItem.a(PacketPlayInUseItem.java:1) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.PlayerConnectionUtils$1.run(SourceFile:13) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_131]
        at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_131]
        at net.minecraft.server.v1_12_R1.SystemUtils.a(SourceFile:46) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:748) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:406) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [spigot.jar:git-Spigot-65e8124-79e55b6]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
    Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.util.List
        at mr_krab.randomchest.Utils.fill(Utils.java:190) ~[?:?]
        at mr_krab.randomchest.PlayerListener.onPlayerInteract(PlayerListener.java:56) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[spigot.jar:git-Spigot-65e8124-79e55b6]
        ... 17 more
    Я понимаю, что ошибка на 190й строке кода, и связана она с джавой, но у меня нет ни одной идеи как ее исправить. Плагин писался скорее всего на 7й джаве, а сейчас я использую 8ю, да и версия майна не 1.7.2 как было изначально, а 1.12.1.
     
  2. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Кто-то уже писал что проще новый код написать, чем понимать этот.
    Давай конфиг, подозреваю проблема там.
     
  3. Автор темы
    glavrak

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

    Баллы:
    96
    Имя в Minecraft:
    Mr_Krab
    Конфиг дефолтный.
    Код:
    #Для применения русского языка этот файл нужно переименовать в config.yml
    #Или используйте просто как пример.
    select-tool: 289 #порох
    remove-tool: 353 #сахар
    chestset:
      example: #название типа
        min: 1 #минимальное количество возможного лута
        max: 3 #максимальное количество возможного лута
        customname: "Пример"
        powered: false #включить управление редстоуном
        break: false #включить разрушение сундуков
        respawn: [15, 30, 45] #время в секундах через которое стоит распаунить вещи
        items:
          - id: 268 # id предмета
            durability: -1 #если -1 то поломка будет рандомная
            random-enchant: false #включить рандомное зачарование
            enchantments:
              - name: KNOCKBACK #тип зачарования
                level: 1 #уровень зачарования
            name: "My Sword" #новое имя для вещи
            lore: ["Line 1", "Line 2", "Line 3"] #описание вещи
            amount: 1 #количество
          - id: 373
            potion-type: INSTANT_HEAL #тип зелья
            potion-level: 2 #уровень зелья
            potion-splash: false #сделать взрывным зелье
          - id: 35
            data: 14 #data вещи
            amount: 5
          - id: 397
            skull: "Notch" #ник владельца головы
    Ну он говорил, что попробует написать, но после этого тишина.
     
  4. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Попробуй изменить на durability: [-1], оно только с листами умеет работать.
     
  5. Автор темы
    glavrak

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

    Баллы:
    96
    Имя в Minecraft:
    Mr_Krab
    Чуть возже, сейчас другим плагином занимаюсь, апгрейд своего, там перекодить нужно аргументы команд и сделать нормальное взаимодействие со вторым конфигом.
     
  6. thematdev

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

    Баллы:
    46
    Имя в Minecraft:
    thematdev
    Перепеши плагин с нуля ибо это уже переписанный 999 раз плагин, под версию майна меняли, потом java обновилась, через месяц java 9 вообще выйдет...:
    [​IMG]
     
  7. Автор темы
    glavrak

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

    Баллы:
    96
    Имя в Minecraft:
    Mr_Krab
    Да я вкурсе про это, но пока мне это не под силу, мало знаний, я вообще хз как это работает. С эвентами, командами, конфигами еще чет подкрутить могу, джавой ток 2 недели занимаюсь где-то. Да и это единственное что там не пашет, остальное поправил, перестало ошибками гадить в консоль(мелкие фиксы). Ну и локализацию добавил.
     
  8. thematdev

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

    Баллы:
    46
    Имя в Minecraft:
    thematdev
    Хорошо что хоть от д****и на плуги избавился)
     
  9. HunterGaming

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

    Баллы:
    96
    Имя в Minecraft:
    sqdFendy
    А вам данная ошибка не о чем не говорит?
    Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.util.List
     
  10. Автор темы
    glavrak

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

    Баллы:
    96
    Имя в Minecraft:
    Mr_Krab
    Посмотрю позже, особо внимания не обратил на эту строку. Сейчас восстановлением своего сервера занимаюсь после перерыва в работе, второй админ свою часть суммы внес.
     
  11. HunterGaming

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

    Баллы:
    96
    Имя в Minecraft:
    sqdFendy
    Если что эта ошибка значит, что ты неправильно прокастил что-то
     
  12. Автор темы
    glavrak

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

    Баллы:
    96
    Имя в Minecraft:
    Mr_Krab
    Ну конкретно эти 2 класса я как бы особо и не трогал, выставил по совету эклипса несколько параметров в соответсвии с API последним и все, кстати оно и до этого не работало. Все что я добавил в плагин, так это локализация.
     
  13. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    В конфиге у него Integer прописан, вместо списка.
     
  14. Slavkaa

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

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    А в одной из тем срался из-за неграмотного написания.
     

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