Как сделать так чтобы инструмент не ломался, но при этом падала прочность

Версия Minecraft
1.16.5
API
Forge
Я хочу сделать что-то похожее на бензопилу из IC2, что бы инструмент не ломался, когда у него была бы нулевая прочность, а терял свою эфективность.
У меня есть класс ChainSaw, наследуемый от AxeItem, я переписал у него метод onBlockDestroyed:

public boolean onBlockDestroyed(ItemStack stack, World world, BlockState state, BlockPos pos, LivingEntity entity) {
if (!world.isRemote()) {
if (CanBreak(world, pos) && DamageStak(stack, 1)) {
BFSdestroy(world, pos);
}
}
return true;
}

CanBreak и DamageStack:

private boolean CanBreak(World world, BlockPos pos){
return world.getBlockState(pos).getHarvestTool() == ToolType.AXE;
}

private boolean DamageStak(ItemStack stack, int damage) {
return true;
}
DamageStack должен возращать true если инструмент имеет прочность > 0и при этом уменьшать прочность на 1,
иначе вернуть false.
Но я не знаю как это можно сделать.
я пробовал сделать это при помощи stack.setDamage() и stack.getDamage, но ничего у меня не вышло, подскажите пожалуйста как можно это реализовать.
 

Вложения

  • ChainSaw.txt
    2.3 KB · Просмотры: 1
Сверху