archom
如题,
求玩家指向的方块及坐标和实体,无视点击范围的也能获取的那种
求代码及参数详解

tazi1202
命令方块行玛

archom

可以试试

502mc
下面的方法可以获取鼠标指向的方块
LivingEntity#getTargetBlockExact

1006438726
502mc 发表于 2022-2-6 18:52
下面的方法可以获取鼠标指向的方块
LivingEntity#getTargetBlockExact

谢谢!!

archom
502mc 发表于 2022-2-6 18:52
下面的方法可以获取鼠标指向的方块
LivingEntity#getTargetBlockExact

导入LivingEntity后
player.没有getTargetBlockExact(),只有getTargetBlock()
两个的效果差不多吗

502mc
archom 发表于 2022-2-6 20:30
导入LivingEntity后
player.没有getTargetBlockExact(),只有getTargetBlock()
两个的效果差不多吗 ...

不要导入LivingEntity,直接用Player对象调用

archom
502mc 发表于 2022-2-6 20:42
不要导入LivingEntity,直接用Player对象调用

不导入LivingEntity依旧没有getTargetBlockExact()
但是还是感谢大佬,我大概想出没有getTargetBlockExact也能完成我的需求的方法了

TooLazyToName
本帖最后由 TooLazyToName 于 2022-2-7 14:00 编辑

没太看懂你追加的问题。但结合事件监听的话大概是这样。
======= Code Area =======
/***
* 获取指定玩家在指定距离内指向的方块,并进一步获取此方块的三维坐标值。
* @param e 任意事件。
*/
@EventHandler
public void test(PlayerEvent e) {
    // 这个参数是方向向前最大的范围。这个方法将导致加载区块,合理控制参数。
  Block targetBlock = e.getPlayer().getTargetBlockExact(10);
    Location location = targetBlock.getLocation();

    Integer XPos = location.getBlockX();
    Integer YPos = location.getBlockY();
    Integer ZPos = location.getBlockZ();
}
===== End of Code Area =====
至于你那个Player没有方法的问题... 是不是导错包了...




Sunbread
也可以使用rayTrace解决。它获得的结果更精准。

第一页 上一页 下一页 最后一页