2.3 基础方块
注册方块
注册方块其实和注册物品很像,只是我们要注册的东西是方块而非物品,所以我们的容器所存储的类型也要改为Block
。
其它的其实没有什么变化,在这里就直接给出代码了。(注释内说明了类的位置)
文件结构
BlockRegister.java
// moe.gensoukyo.thirst.register.BlockRegister
// imports
public class BlockRegister {
public static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MODID);
public static final RegistryObject<Block> CISTERN = BLOCKS.register("cistern", () -> new Block(BlockBehaviour.Properties.of()));
}
Thirst.java
// moe.gensoukyo.thirst.Thirst
// imports
@Mod(Thirst.MODID)
public class Thirst {
public static final String MODID = "thirst";
private static final Logger LOGGER = LogUtils.getLogger();
public Thirst() {
var bus = FMLJavaModLoadingContext.get().getModEventBus();
ITEMS.register(bus);
BLOCKS.register(bus);
}
}
游戏内生成方块
注意,此处我说的是“生成方块”而非获取方块,此时这个方块还不能被玩家获取,我们只是让它在游戏中生成。
/setblock ~ ~ ~ thirst:cistern