本帖最后由 酒醉的鸵鸟 于 2022-1-9 00:13 编辑
如题,MC版本1.16.5,关于环境,已经在fabric官网更新到最新了
fabric wiki上的教程代码如下
代码段A:
复制代码
代码段B:
复制代码
代码段A中的问题是BlockEntity类中并没有这样三个参数的构造函数,只有单参数的构造函数:
复制代码
代码段B中的问题是FabricBlockEntityTypeBuilder这个类我找不到(不知道是不是版本的问题,据discord上热心网友的提示,这个类应该在net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder,但是我找不到这个类)
所以我的问题是如何创建(注册)一个方块实体,求各位大佬解答,找了很久都不知道该怎么做。。
如题,MC版本1.16.5,关于环境,已经在fabric官网更新到最新了
fabric wiki上的教程代码如下
代码段A:
- public class DemoBlockEntity extends BlockEntity {
- public DemoBlockEntity(BlockPos pos, BlockState state) {
- super(ExampleMod.DEMO_BLOCK_ENTITY, pos, state);
- }
- }
代码段B:
- public static BlockEntityType<DemoBlockEntity> DEMO_BLOCK_ENTITY;
-
- @Override
- public void onInitialize() {
- DEMO_BLOCK_ENTITY = Registry.register(Registry.BLOCK_ENTITY_TYPE, "tutorial:demo_block_entity", FabricBlockEntityTypeBuilder.create(DemoBlockEntity::new, DEMO_BLOCK).build(null));
- }
代码段A中的问题是BlockEntity类中并没有这样三个参数的构造函数,只有单参数的构造函数:
- public BlockEntity(BlockEntityType<?> type) {
- this.pos = BlockPos.ORIGIN;
- this.type = type;
- }
代码段B中的问题是FabricBlockEntityTypeBuilder这个类我找不到(不知道是不是版本的问题,据discord上热心网友的提示,这个类应该在net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder,但是我找不到这个类)
所以我的问题是如何创建(注册)一个方块实体,求各位大佬解答,找了很久都不知道该怎么做。。

看一下历史版本