Minecraft Mod DevLog#2 创建Block,文件之间的关系
本次的Java内容添加了一个新的BlockInit类,这个类主要负责对于Block对象的注册:
添加一个Block需要干两件事
其实Block在Item栏目中也会出现,所以要添加进入Item
Block也需要注册到Block的管理list,也就是DeferredRegistry中
所以核心在于这个方法:
注册的regsiter方法中其实是维护了一个map结构:
register方法需要的Suppiler参数要返回一个RegistryEntry对象,Item,BlockItem都是这个对象的子类(或者说实现了接口)。
然后说一下Log#1没有说明的json文件结构,以及映射关系

对于Item,需要添加同名的json文件和同名的texture,具体的格式是这样:
textures中指定了当前的item的纹理是指定的png
对于block有点特殊,因为block可能会根据状态(破损程度)设置不同的纹理:
所以需要首先在blockstates下面添加一个同名的文件,然后在block文件夹下:
cube_all表示各个面都是一样的纹理,all指定了纹理
最后加一个翻译,不然就是默认的key作为item的名字,比如"item.tutorialmod.titanium_ingot"