- Баллы
- 76
- Имя в Minecraft
- Abcik
Всем привет, в общем, мне нужно сделать так, чтобы у игрока забросилась удочка при нажатии на арморстенд с удочкой в руках. Есть методы как это сделать? Тоже самое с зельями и с едой, чтобы игрок мог кушать или пить/кидать зелья нажимая пкм по арморстенду.
Почти решил проблему следующим кодом:
Отслеживаю пакет нажатия на ентити, и заменяю его на PacketPlayInBlockPlace. Проблему решает относительно...
Не знаю почему, но это срабатывает как нужно ровно 8 раз, после чего снова не выкидывается удочка, и не кушается еда пока не кликну ПКМ на воздух, или на какой-то блок. Затем снова 8 раз всё срабатывает нормально...
Почти решил проблему следующим кодом:
Код:
ChannelDuplexHandler channelDuplexHandler = new ChannelDuplexHandler() {
@Override
public void channelRead(ChannelHandlerContext channelHandlerContext, Object packet) throws Exception {
if (packet instanceof PacketPlayInUseEntity ppiue) {
if (ppiue.getActionType() == PacketPlayInUseEntity.b.c) {
super.channelRead(channelHandlerContext, new PacketPlayInBlockPlace(EnumHand.a));
return;
}
}
super.channelRead(channelHandlerContext, packet);
}
};
Отслеживаю пакет нажатия на ентити, и заменяю его на PacketPlayInBlockPlace. Проблему решает относительно...
Не знаю почему, но это срабатывает как нужно ровно 8 раз, после чего снова не выкидывается удочка, и не кушается еда пока не кликну ПКМ на воздух, или на какой-то блок. Затем снова 8 раз всё срабатывает нормально...
Последнее редактирование: