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

Статус
Закрыто для дальнейших ответов.

ToxaEagle123

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

P.S Данное изменение нужно внести только в Фантомов.
 
Код:
@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());
    }
}
В сообщении ниже код выглядит правильнее.
 
Последнее редактирование:
К сожалению, способ HauserGrim не работает должным образом.
Реализовал иначе, посредством отмены PlayerVelocityEvent.

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

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

Работает на 1.13.2-1.16.5
 
Последнее редактирование:
К сожалению, способ HauserGrim не работает должным образом.
Реализовал иначе, посредством отмены PlayerVelocityEvent.

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

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

Работает на 1.13.2-1.16.5


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

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

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

Работает на 1.13.2-1.16.5


Спасибо вам большое, работает.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх Низ