@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
public void detectBlockPunch(PlayerAnimationEvent event) {
if(event.getAnimationType() != PlayerAnimationType.ARM_SWING) return;
if(event.getPlayer().getGameMode() != GameMode.ADVENTURE) return;
// Client will not punch blocks in adventure mode, so we detect it ourselves and fire a BlockPunchEvent.
// We do this in the kit module only because its the one that is responsible for putting players in adventure mode.
// A few other modules rely on this, including StaminaModule and BlockDropsModule.
RayBlockIntersection hit = event.getPlayer().getTargetedBlock(true, false);
if(hit == null) return;
eventBus.callEvent(new BlockPunchEvent(event.getPlayer(), hit));
}
PlayerMovementListener.java 文件源码
java
阅读 32
收藏 0
点赞 0
评论 0
项目:ProjectAres
作者:
评论列表
文章目录