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

Решено Как запретить Фантомам после нанесения урона отталкивать игрока.

Тема в разделе "Помощь", создана пользователем ToxaEagle123, 31 янв 2021.

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

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

    Баллы:
    61
    Имя в Minecraft:
    ToxaEagle123
    Как вы знаете, после получения урона игрок отпрыгивает, и мне нужно сделать так - чтобы игроки получали также урон от Фантомов, но не отпрыгивали после получения урона. Так как это мешает игрокам строить на поверхности в открытом пространстве.

    P.S Данное изменение нужно внести только в Фантомов.
     
  2. Автор темы
    ToxaEagle123

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

    Баллы:
    61
    Имя в Minecraft:
    ToxaEagle123
  3. _MrJaycob_

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

    Баллы:
    76
    Имя в Minecraft:
    JaycobYT
    Наверно только самопис
     
  4. HauserGrim

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

    Баллы:
    96
    Код:
    @EventHandler(priority = EventPriority.HIGHEST)
    public void onDamage(EntityDamageByEntityEvent e) {
        if (e.isCancelled()) {
            return;
        }
        if ((e.getEntity() instanceof Player) && e.getDamager.getType == EntityType.PHANTOM) {
            Player player = (Player) e.getEntity();
            // Отменяем ивент, соответственно, урон и всю отдачу
            e.setCancelled(true);
            // Наносим полученный урон вместо отменённого ивента
            player.damage(e.getDamage());
        }
    }
    В сообщении ниже код выглядит правильнее.
     
    Последнее редактирование: 5 фев 2021
  5. Dymeth

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

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    К сожалению, способ HauserGrim не работает должным образом.
    Реализовал иначе, посредством отмены PlayerVelocityEvent.

    Единственный момент - игрока фантомы могут немного двигать из-за коллизий. Но, надеюсь, это не проблема.

    Скачать: https://mega.nz/file/w4V3QC6Q#cmQ7AFAuuwkoSIu1GR4VSSPBuWibwCx29OqanoMeb30
    Исходники: https://gitlab.com/Dymeth/DisablePhantomsPush

    Работает на 1.13.2-1.16.5
     
    Последнее редактирование: 5 фев 2021
  6. Автор темы
    ToxaEagle123

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

    Баллы:
    61
    Имя в Minecraft:
    ToxaEagle123

    Спасибо вам, но я не знаю как этим воспользоваться. Мне нужно создать плагин и вставить этот код (который вы предоставили) в него?
     
  7. Автор темы
    ToxaEagle123

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

    Баллы:
    61
    Имя в Minecraft:
    ToxaEagle123
    У меня имеется программа IntelliJ IDEA.
     
  8. _MRDen3000YT_

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

    Баллы:
    76
  9. Автор темы
    ToxaEagle123

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

    Баллы:
    61
    Имя в Minecraft:
    ToxaEagle123

    Спасибо вам большое, работает.
     
Статус темы:
Закрыта.

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