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

Помогите Как получить material по ид и субид

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

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

    solid Активный участник

    Баллы:
    78
    Подскажите, что-то туплю не могу разобраться
    вот надо мне скажем цветную шерсть:
    Material iss = Material.getMaterial(35);
    а как субид-то задать?
     
    Сникерсни и zuma2 нравится это.
  2. Maddog

    Maddog Старожил

    Баллы:
    143
    Skype:
    StyleR8686
    Имя в Minecraft:
    TheGunth
    ЧТО????ты вообще о чем?
     
    Оригинало_о нравится это.
  3. Автор темы
    solid

    solid Активный участник

    Баллы:
    78
    Ну если кто на бронепоезде, то поясняю:
    1. пишу плагин для буккита
    2. есть необходимость дать игроку предмет определенного ид и субид. У шерсти ид=35, а субид у каждого цвета шерсти - свой. Вот как мне дать игроку не просто шерсть, а именно определенную.

    ЗЫ Видимо на рубукките в разделе "разработка плагинов" обсуждают не разработку, а настройку готовых...
     
    Сникерсни нравится это.
  4. Maddog

    Maddog Старожил

    Баллы:
    143
    Skype:
    StyleR8686
    Имя в Minecraft:
    TheGunth
  5. Maddog

    Maddog Старожил

    Баллы:
    143
    Skype:
    StyleR8686
    Имя в Minecraft:
    TheGunth
    суб ид пиши через двоеточие
     
  6. -Vans-

    -Vans- Активный участник

    Баллы:
    68
    Если есть CommandBook то можно написать /give <Ник> <ID> <Кол-во> но в твоем случае ID - 35:1, 35:2 и т.д.
     
  7. Maddog

    Maddog Старожил

    Баллы:
    143
    Skype:
    StyleR8686
    Имя в Minecraft:
    TheGunth
    мои обьяснения не в щет??
     
    slavik123123123 нравится это.
  8. Автор темы
    solid

    solid Активный участник

    Баллы:
    78
    да мне не нужны команды плагинов их я и так знаю, меня интересует как это реализовано в самом плагине. Видать проще посмотреть исходники CommandBook'a ;)
    UPD: Посмотрел :) если кому нужно, то делается это так:
    ItemStack iss = new ItemStack( <ид> , <количество> , (short) <субид> );
     
    jkl1234 нравится это.
  9. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Лучше смотреть ещё и JavaDoc :)
    http://jd.bukkit.org/doxygen/d9/da1/classorg_1_1bukkit_1_1inventory_1_1ItemStack.html

    Варианты конструкторов на все случаи жизни:

    ItemStack (final int type)
    ItemStack (final Material type)
    ItemStack (final Material type, final int amount)
    ItemStack (final Material type, final int amount, final short damage, final Byte data)
    ItemStack (final ItemStack stack)
    ItemStack (final int type, final int amount, final short damage)
    ItemStack (final int type, final int amount)
    ItemStack (final Material type, final int amount, final short damage)
    ItemStack (final int type, final int amount, final short damage, final Byte data)
     
    zamzamzam нравится это.
  10. NAUSHNIK52

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

    Баллы:
    103
    .
     
    Последнее редактирование: 17 янв 2023
  11. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Раздел форума называется "Разработка плагинов", а не "вопросы новичков"... Иными словами здесь не спрашивают команд, здесь их "программируют" (чтобы потом спрашивать ;))
     
  12. Автор темы
    solid

    solid Активный участник

    Баллы:
    78
    Конечно смотрел :) видать не внимательно...
    type - ид; data - субид?

    и второй вопрос вдогонку:
    Код:
    ItemStack iss = new ItemStack(item_id,num,(short)item_subid);
    player.getInventory().addItem(iss);
    если iss из модов, например квантовый шлем из inductrial craft, то вылетает ошибка и клиент крашится. Что посоветуете?
     
  13. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Да, именно так.


    Я, к сожалению, ничего не смогу посоветовать. Я не пробовал ничего делать под модифицированные версии буккита. Я ведь правильно понимаю, у Вас и буккит под IC пропатчен?
     
  14. Автор темы
    solid

    solid Активный участник

    Баллы:
    78
    Да пропатчен.
     
  15. ufatos

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

    Баллы:
    143
    Skype:
    ufa_to
    Уже привыкли что рубаккит только для тупых вопросов из F.A.Q.
    А ещё вы не знаете о чём говорят... [я бы объяснил понятнее, но тогда меня забанят]
     
  16. Flints

    Flints Старожил

    Баллы:
    103
    Skype:
    Sergey.Sivagin
    Имя в Minecraft:
    Flints
    Видел на Wikipedia такой пример. Где то тут
     
  17. ensirius

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

    Баллы:
    123
    Material.getDamage() используйте
     
  18. ufatos

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

    Баллы:
    143
    Skype:
    ufa_to
     
  19. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @ufatos, И?

    @ensirius предложил вполне себе работоспособный вариант. На мой взгляд не совсем правильный (getDamage/setDamage - это в первую очередь для повреждаемых предметов), но подойдёт и для других случаев.
    В любом случае автор темы ответ на вопрос уже получил.
     
    ВремяПриключений нравится это.
  20. ufatos

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

    Баллы:
    143
    Skype:
    ufa_to
    Черт, я слоу. Не заметил, что Тс уже нашел ответ.
     

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