Open i493052739 opened 6 months ago
运行环境
Minecraft版本(1.12.2/1.16.5/1.18.2): 1.18.2 构建版本(从/version指令获取): bc64e1f 相关模组/插件: 如下案例
@EventHandler public void onInteract(PlayerInteractEvent e) { String u = UUID.randomUUID().toString(); Player p = e.getPlayer(); ItemStack i = e.getItem(); EquipmentSlot h = e.getHand(); Block cb = e.getClickedBlock(); p.sendMessage(u + " hash: " + e.hashCode()); p.sendMessage(u + " material: " + e.getMaterial().name()); p.sendMessage(u + " hasBlock: " + e.hasBlock()); p.sendMessage(u + " hasItem: " + e.hasItem()); p.sendMessage(u + " itemType: " + (i == null ? null : i.getType().name())); p.sendMessage(u + " action: " + e.getAction().name()); p.sendMessage(u + " blockFace: " + e.getBlockFace().name()); p.sendMessage(u + " hand: "+ (h == null ? null : h.name())); p.sendMessage(u + " clickedBlock: "+ (cb == null ? null : cb.getType().name() + " " + cb.getX() + " " + cb.getY() + " " + cb.getZ())); }
描述这个BUG
互动空气时,PlayerInteractEvent 正常触发一次
互动方块时,PlayerInteractEvent 异常触发两次
导致的问题
PlayerInteractEvent 相关的 handlers 及逻辑被二次触发
正常逻辑
这个再观察一下吧 我印象里这个逻辑是没问题的
运行环境
Minecraft版本(1.12.2/1.16.5/1.18.2): 1.18.2 构建版本(从/version指令获取): bc64e1f 相关模组/插件: 如下案例
描述这个BUG
导致的问题
PlayerInteractEvent 相关的 handlers 及逻辑被二次触发