You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Minecraft Forge 1.16.5中替代onBlockActivated的方法及右键方块无响应问题求助

Minecraft Forge 1.16.5中替代onBlockActivated的方法及右键方块无响应问题求助

嘿,看你在做一个能传送去新维度的方块,但右键完全没反应,加了调试消息也没触发,这事儿确实闹心!我之前折腾Forge模组时也碰到过类似的坑,给你梳理下可能的问题和解决办法:

首先得明确:在1.16.5版本里,原来的onBlockActivated方法已经被**use方法**替代了,方法签名也有不少变化,这大概率是你右键没反应的核心原因之一。正确的方法签名应该是这样的:

@Override
public ActionResultType use(BlockState state, Level worldIn, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) {
    // 你的交互逻辑写在这里
    return super.use(state, worldIn, pos, player, handIn, hit);
}

注意这里的World改成了Level,BlockRayTraceResult换成了BlockHitResult,别写错参数类型哦。

接下来给你拆解几个常见的排查点:

  • 方法重写是否正确:一定要加@Override注解,这样如果方法签名写错了,编译器会直接提示你,不至于默默失效。
  • 客户端与服务端的逻辑区分:你提到只在客户端加了调试消息,但传送维度这种操作必须在服务端执行,得分开处理:
    • 客户端可以用来显示提示,比如用player.displayClientMessage(Component.literal("准备传送!"), true);
    • 服务端逻辑要先判断!worldIn.isClientSide,再执行传送,比如player.teleportTo(...)
  • 方块属性设置:在方块的构造方法里,要确保属性允许交互,比如别误加了阻止右键的设置,常规的属性可以这么写:BlockBehaviour.Properties.of(Material.STONE).strength(2.0f).noOcclusion()
  • 调试消息是否有效:客户端的调试消息可以用player.sendSystemMessage(Component.literal("右键触发啦!")),服务端的话可以用LOGGER.info("右键方块被触发"),两边日志都要看看,说不定消息已经输出只是你没注意到。

给你贴个简单的示例代码,你可以参考着调整:

@Override
public ActionResultType use(BlockState state, Level worldIn, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) {
    // 客户端显示提示
    if (worldIn.isClientSide) {
        player.displayClientMessage(Component.literal("右键触发成功!"), true);
        return ActionResultType.SUCCESS;
    }
    // 服务端执行传送逻辑
    if (!player.isPassenger() && !player.isVehicle()) {
        // 这里替换成你新维度的目标坐标
        Level targetDimension = worldIn.dimension() == Level.OVERWORLD ? Level.NETHER : Level.OVERWORLD;
        player.teleportTo(targetDimension, player.getX(), player.getY(), player.getZ(), player.getYRot(), player.getXRot());
        player.sendSystemMessage(Component.literal("已传送至新维度!"));
    }
    return ActionResultType.CONSUME;
}

最后再提醒下,测试时要同时查看客户端和服务端的日志,很多时候问题就藏在日志的报错信息里哦。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 12:49:38