Step 1 添加并注册护甲
这一步,我们将把护甲注册到游戏中
首先我们在mod文件夹下创建ArmorFabric的class
public class ArmorFabric implements ArmorMaterial {
public static final int[] BASE_DURABILITY = new int[]{20,30,25,15};//定义护甲的耐久,此处数据按照从头到脚的顺序
public static final int[] BASE_PROTECTION_AMOUNT = new int[]{2,5,6,3};//定义护甲的保护值,顺序同上
@Override
public int getDurability(EquipmentSlot arg0) {
return BASE_DURABILITY[arg0.getEntitySlotId()]*25;
}
@Override
public int getProtectionAmount(EquipmentSlot arg0) {
return BASE_PROTECTION_AMOUNT[arg0.getEntitySlotId()];
}
@Override
public int getEnchantability() {
return 100;//设置附魔等级
}
@Override
public SoundEvent getEquipSound() {
return null;//设置使用时的声音,可选
}
@Override
public Ingredient getRepairIngredient() {
return null;//设置使用铁砧修复的配方,可选
}
@Override
public String getName() {
return "fabric";//设置名称,后期添加材质需要使用
}
@Override
public float getToughness() {
return 10;//设置武器韧性
}
}
在Main中添加代码
public static final ArmorMaterial FABRIC_ARMOR = new ArmorFabric();
新建BaseArmor这个class
添加代码
public class BaseArmor extends ArmorItem {
public BaseArmor(ArmorMaterial material, EquipmentSlot slot) {
super(material, slot, new Item.Settings().group(Main.FABRIC_EXAMPLE_GROUP));
}
}
回到Main中的onInitialize这个public项,添加代码
Registry.register(Registry.ITEM, new Identifier(MODID, "fabric_helmet"), new BaseArmor(FABRIC_ARMOR, EquipmentSlot.HEAD));
Registry.register(Registry.ITEM, new Identifier(MODID, "fabric_chestplate"), new BaseArmor(FABRIC_ARMOR, EquipmentSlot.CHEST));
Registry.register(Registry.ITEM, new Identifier(MODID, "fabric_leggings"), new BaseArmor(FABRIC_ARMOR, EquipmentSlot.LEGS));
Registry.register(Registry.ITEM, new Identifier(MODID, "fabric_boots"), new BaseArmor(FABRIC_ARMOR, EquipmentSlot.FEET));
打开游戏进行测试
但是当我们准备尝试这一套黑紫色的套装的时候,游戏崩了,放心不是你人品的问题
跟着我继续做下去,你会看到成功的
Last updated
Was this helpful?