如何为 Minecraft 1.15.2 制作可饮用物品

How to make a drinkable item for minecraft 1.15.2

所以我想在我的世界中制作一个可饮用的物品,但是我一直运行出错。问题是我正在尝试制作一个 class 来覆盖进食功能并将其替换为饮酒。我不明白,但好像 EnumAction 已经不存在了。是否有其他替代方法来覆盖 eating 函数来创建此项目(或我的代码中的任何错误)?

package com.saucygames05.morecandymod.objects.items;

import net.minecraft.item.Item;

public class DrinkItem extends Item {
    public DrinkItem() {
        super(null);
        this.setRegistryName("apple_juice");
        }
    @Override
        public EnumAction getItemUseAction () {
            return EnumAction.DRINK;
        }
}

我至少需要几个答案才能发疯,再花一个星期弄清楚。

探索 net.minecraft.item 后,我意识到显然 EnumAction 现在被 UseAction 取代,而 getItemUseAction 现在被 getUseAction 取代。您的问题的解决方案可能是这样的 class:

import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.UseAction;

public class DrinkableItem extends Item {
    public DrinkableItem(Properties properties) {
        super(properties);
    }

    @Override
    public UseAction getUseAction(ItemStack stack) {
        return UseAction.DRINK;
    }
}

但是,在使用此类物品后仍然会出现短暂但可听见的进食/打嗝声(下图)。如果我找到解决方法,我会更新答案。