Как сделать прочность еде 1.7.10?

Версия Minecraft
1.7.10
API
Forge
Здравствуйте! Хотелось бы сделать еду/воду с прочность к примеру: съел хлеб и у него прочность потратилась на половину(если что , вид прочности у еды я хочу сделать такую же как и у других предметов с прочностью) . Таким образом я хочу сделать более удобный расход еды . Есть код? Или мод который делает данную механику?
 
Делается очень просто: задаём максимальный уровень прочности еде и правим метод onEat() заменив уменьшение кол-ва стопки на получение повреждения.
Однако, реализовав прочность предмета вы лишаетесь возможности стакать предметы - все предметы стопки должны быть абсолютно одинаковы.
 
Пример с 1.12.2


Java:
public class TestFood extends ItemFood {
    private final int maxDurability = 10; // Максимальная прочность

    public TestFood() {
        super(2, 0.4F, false);
        this.setMaxDamage(this.maxDurability);
        this.setTranslationKey("test_food");
        this.setRegistryName(new ResourceLocation(Reference.MODID, "test_food"));
        this.setCreativeTab(CreativeTabs.FOOD);
    }

    @Override
    public ItemStack onItemUseFinish(ItemStack stack, World world, EntityLivingBase entityLiving) {
        if (entityLiving instanceof EntityPlayer) {
            EntityPlayer player = (EntityPlayer) entityLiving;
            player.getFoodStats().addStats(this, stack);
            this.onFoodEaten(stack, world, player);
            stack.damageItem(1, player); // Уменьшаем прочность
            if (stack.getItemDamage() >= this.maxDurability) return ItemStack.EMPTY; // Удаляем предмет, если прочность достигла максимума
        }
        return stack;
    }
}
 
Назад
Сверху