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

Помогите AddItem() и ItemStack[]

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

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

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

    Баллы:
    103
    Имя в Minecraft:
    GodlikE
    Всем привет. При написании плагина у меня возникла такая проблема: при использовании метода addItem() выдается такая ошибка: The method addItem(ItemStack[]) in the type Inventory is not applicable for the arguments (ItemStack). Вся проблема в том, что в другом моём плагине всё работало и при аргументе ItemStack. Подскажите, с чем это может быть связано?
     
  2. Хостинг MineCraft
    <
  3. saharNooby

    saharNooby Активный участник Девелопер Пользователь

    Баллы:
    78
    Имя в Minecraft:
    saharNooby
    Дак почему бы не написать addItem(new ItemStack[] {<объект ItemStack>})
     
  4. Автор темы
    GodlikE

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

    Баллы:
    103
    Имя в Minecraft:
    GodlikE
    Мне просто интересно, в чём же дело=) Почему он в одном случае допускает аргумент ItemStack, а в другом нет?
     
  5. dark32

    dark32 А где твой ТЗ? Пользователь

    Баллы:
    123
    Имя в Minecraft:
    dark32
    ItemStack[] != ItemStack
    Массив не равен элементу. Метод ждёт от вас массив предметов, а получает один предмет.
     
  6. Автор темы
    GodlikE

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

    Баллы:
    103
    Имя в Minecraft:
    GodlikE
    Да это я знаю. Просто в одном плагине (который я написал около месяца назад) этот метод принимал аргументы в виде элемента ItemStack, а в этом плагине он почему-то принимает только в виде массива. Вот я и спрашиваю, от чего это зависит?
     
  7. dark32

    dark32 А где твой ТЗ? Пользователь

    Баллы:
    123
    Имя в Minecraft:
    dark32
    Показывай оба кода, будем гадать.
     
    Последнее редактирование: 13 янв 2015
  8. Автор темы
    GodlikE

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

    Баллы:
    103
    Имя в Minecraft:
    GodlikE
    Я кажется разобрался. Всё дело в версии подключаемой JRE System Library. По крайней мере, когда я поменял её версию с 1.7 на 1.5, всё заработало. А может быть это был просто баг эклипса=)
     
  9. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Кстати да, компилятор тут роль играет, меняя за тебя итемстак на его массив.
     
  10. Автор темы
    GodlikE

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

    Баллы:
    103
    Имя в Minecraft:
    GodlikE
    Спасибо, что объяснил=) Пока ты еще тут, не подскажешь, какой эвент отвечает за клик ПКМ, если у меня в руке какой-нибудь итем (допустим перо)?
     
  11. makssof

    makssof Старожил Девелопер Пользователь

    Баллы:
    103
    Skype:
    makssofez
    PlayerInteractEvent
    А там уже метод есть.
     
  12. Автор темы
    GodlikE

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

    Баллы:
    103
    Имя в Minecraft:
    GodlikE
    Почему-то я думал, что этот эвент влияет только на взаимодействие с объектами из окружающей среды (блоками, энтити и т.д). Спасибо!
     
  13. termobyte

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

    Баллы:
    78
    Имя в Minecraft:
    termobyte
    Последнее редактирование: 21 апр 2015
  14. saharNooby

    saharNooby Активный участник Девелопер Пользователь

    Баллы:
    78
    Имя в Minecraft:
    saharNooby
    Да ты кэп.
     
  15. saharNooby

    saharNooby Активный участник Девелопер Пользователь

    Баллы:
    78
    Имя в Minecraft:
    saharNooby
    Как бы тема не про это, а про массив и одиночный параметр. И скидывать ссылку на документацию -- кэпство, потому что любой нормальный кодер знает о ней и в состоянии сам найти там нужный класс и его описание.
     

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