马铠 1.20 Fabric 长线教程计划
本篇教程的视频
本篇教程的源代码
GitHub地址:TutorialMod-HorseArmor-1.20.1
本篇教程目标
- 理解原版的
马铠
注册,了解马铠资源文件
的位置 - 学会为模组添加马铠
查看源代码
这里我们先来看看马铠
的注册
同样也是到Items
类中来看
1 | public static final Item IRON_HORSE_ARMOR = register("iron_horse_armor", new HorseArmorItem(5, "iron", new Item.Settings().maxCount(1))); |
可以看到,马铠的注册和普通物品的注册是一样的,只不过实例化的是HorseArmorItem
类
它接受三个参数,第一个是马铠的护甲值
,第二个是马铠的材质
,iron
来表示铁马铠,
第三个是马铠的设置,这里我们设置它的最大堆叠数
为1
,因为马铠不能堆叠
不过,除了HorseArmorItem
,其实还有一个DyeableHorseArmorItem
类,这个是皮革
材质马铠实例化的
皮革的马铠、盔甲其实都是可以染色
,所以它实例化的类是与一般的不一样
接下去我们看看它的材质
文件位置
这个可以看到HorseArmorItem
类的构造函数
1 | public HorseArmorItem(int bonus, String name, Item.Settings settings) { |
可以看到,它的材质文件位置是textures/entity/horse/armor/horse_armor_ + 材质名 + .png
,
而它的命名空间是minecraft
的,所以我们放马铠的材质文件时,也是要放到minecraft
的命名空间下的
注册马铠
添加马铠
首先,我们还是先在ModItems
类中添加马铠
1 | public static final Item ICE_ETHER_HORSE_ARMOR = registerItems("ice_ether_horse_armor", |
相关的设置我们设置一下就好了
添加到物品栏
然后,我们添加到物品栏
1 | entries.add(ModItems.ICE_ETHER_HORSE_ARMOR); |
数据生成
语言文件
1 | translationBuilder.add(ModItems.ICE_ETHER_HORSE_ARMOR, "Ice Ether Horse Armor"); |
物品模型
1 | itemModelGenerator.register(ModItems.ICE_ETHER_HORSE_ARMOR, Models.GENERATED); |
物品的模型还是和一般
物品一样的
材质文件
材质文件除了物品模型对应的,在物品栏形式下的材质文件,还有就是我们上面提到过的模型类文件
它和盔甲的模型材质一样,也是展开图,但命名空间是minecraft
的
将它放在textures/entity/horse/armor/
下,命名为horse_armor_ice_ether.png
测试
数据生成完成之后,我们就可以进入游戏进行测试了
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Tomorrow-Land!