#java #bukkit
#java #bukkit
Вопрос:
сегодня я здесь, чтобы задать вам вопрос, в частности, о Minecraft в разработке PaperMc (вилка Bukkit) я пытаюсь создать эффект «анимации», подобный знаменитому гипиксельному лутбоксу (фаза открытия), поэтому мне нужно было знать, как я могу идентифицировать событие PlayerHeadMovement. Я пытался с
@EventHandler
public void onPlayerMove(PlayerMoveEvent e) {
System.out.println("A");
}
Но, похоже, не обнаруживает движение головы.
Ответ №1:
Нет события, которое специально фокусировалось бы на движении головы игрока.
Однако вы можете в PlayerMoveEvent получать перемещения от и до.
Итак, чтобы увидеть, переместилась ли голова игрока, ваш код может выглядеть следующим образом:
private boolean hasPlayerHeadMoved(PlayerMoveEvent e) {
Location from = e.getFrom();
Location to = e.getTo();
return from.getYaw() != to.getYaw() || from.getPitch() != to.getPitch();
}
Затем в вашем обработчике событий вы должны вызвать метод:
@EventHandler
public void onPlayerMove(PlayerMoveEvent e) {
boolean headHasMoved = hasPlayerHeadMoved(e);
}