我正在尝试制作一套坚不可摧的盔甲和工具。到目前为止,我找到了两个解决方案:一个显而易见的解决方案,为该项目提供数百万的耐用性值;第二,将耐久性设置为 0 或负数以使其无限。前一种效果很好,只是让它可以让你看到耐久条,我不喜欢它,但虽然后者使物品牢不可破,但它不能被附魔。有任何想法吗?这是我的初始注册码。
public static final ToolMaterial TOOL_MATERIAL_COLORITE = EnumHelper.addToolMaterial("tool_material_colorite", 3, 0, 24.0F, 26.0F, 100);
public static final ToolMaterial DAGGER_MATERIAL_COLORITE = EnumHelper.addToolMaterial("dagger_material_colorite", 3, 0, 24.0F, 16.0F, 100);
public static final ArmorMaterial ARMOR_MATERIAL_COLORITE = EnumHelper.addArmorMaterial("armor_material_colorite", Reference.MOD_ID + ":colorite", 0, new int[] {24, 48, 64, 24}, 100, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 0.0F);
提前致谢。 编辑:我没有改变任何东西,但现在由于某种原因头盔和胸甲是牢不可破和不可附魔的,而靴子和护腿仍然受到伤害并且可以附魔。想法?
答案 0 :(得分:0)
这不是一个完整的解决方案,但它是一种(未优化的)使盔甲牢不可破的方法。 基本上,您需要创建一个 onArmorTick 方法并输入:
@Override
public void onArmorTick(World world, EntityPlayer player, ItemStack itemStack)
{
setDamage(player.inventory.armorItemInSlot(3), 0);
setDamage(player.inventory.armorItemInSlot(2), 0);
setDamage(player.inventory.armorItemInSlot(1), 0);
setDamage(player.inventory.armorItemInSlot(0), 0);
}
插槽 3 是头盔,2 是胸甲,1 是护腿,0 是靴子。