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

Помогите [Решено] Несколько эффектов на зелье

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

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

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    Привет, я пытался сделать ItemStack в котором "лежит" зелье с несколькими эффектами с разной длительностью и уровнем. Так-же нужно отрегулировать цвет зелья. Подскажите, как это можно реализовать? (Paper 1.12.2)
     
  2. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Советую изменить название темы на что-то описывающее твою проблему, иначе модератор побьет.
    Отвечая на вопрос - всё, что тебе нужно, есть в PotionMeta - и цвет, и эффекты.
    PHP:
    ItemStack potion = new ItemStack(Material.POTION);
    PotionMeta meta = (PotionMetapotion.getItemMeta();
    // TODO
    potion.setItemMeta(meta)
     
  3. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    ты говоришь про potionMeta#addCustomEffect()?

    btw, как изменить название темы?

    UPD: Изменил название темы
     
  4. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    Я пытался:
    ShareX_RIoCEINtXx.png
    cmd_v6LUmS3QSd.png
     
  5. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Да.
    Через getCustomEffects() нельзя добавить - оно возвращает нередактируемую коллекцию.
     
  6. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    Спасибо, но... Что это?
    P.S. true/false в конце не влияет, я проверил на всякий случай хоть это и перезапись.

    Code:

    potion_meta.addCustomEffect(new PotionEffect(PotionEffectType.INCREASE_DAMAGE, 100, 30), false);

    P.P.S. Как так же красиво выделять код как и ты?
     

    Вложения:

  7. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    *Описание*

    javaw_tC61WUiLuI.png
     
  8. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Клиент знает римские числа только до 10, после чего пишет такое. Выбора два: либо предлагать игроку ресурс пак, в котором будет файл перевода со всеми нужными прописанными уровнями; либо скрывать данные зелья и писать своё описание.
    Что именно?
    В окне ввода текста кнопка "Вставка..." > "Код" > "PHP". Как-то так вышло, что эта подсветка отлично подходит под джаву...
     
  9. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    javaw_FKktR82kFz.png

    UPD: Хотелось бы реализовать это без редактирования описания
     
    Последнее редактирование: 29 сен 2022
  10. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    Спасибо
     
  11. Автор темы
    therimuru_

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

    Баллы:
    66
    Имя в Minecraft:
    therimuru_
    Решено.

    В качестве усилителя (amplifer), нужно указывать на 1 уровень зелья меньше. Т.е. при amplifer 1 будет 2 уровень зелья, при 2 будет 3 уровень, и т.п. (Отображаются корректно только до 3 уровня)
     
Статус темы:
Закрыта.

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