Posted November 8, 20213 yr hello, i am creating a custom food This is my code public class GrassSalad extends Item { private static final Food FOOD = new Food.Builder().saturationMod(6) .nutrition(6).build(); public GrassSalad() { super(new Properties().tab(GroupDefine.ITEM_GROUP).food(FOOD).stacksTo(1)); } /** * 物品被使用(吃掉) * * @param itemStack 物品堆 * @param world 世界 * @param livingEntity 活着的实体 * @return ItemStack */ @Nonnull @Override public ItemStack finishUsingItem(@Nonnull ItemStack itemStack, @Nonnull World world, @Nonnull LivingEntity livingEntity) { if (!world.isClientSide) { livingEntity.curePotionEffects(itemStack); } //如果是一个玩家并且该玩家是创造模式 if (livingEntity instanceof PlayerEntity && !((PlayerEntity) livingEntity).abilities.instabuild) { itemStack.shrink(1); } return itemStack.isEmpty() ? new ItemStack(Items.BOWL) : itemStack; } } The bowl can be returned correctly, but the fullness of the food is invalid please help me ,thanks ! Edited November 8, 20213 yr by Spring
November 8, 20213 yr Author 39 minutes ago, diesieben07 said: What do you mean by this? saturationMod does not work I am using Google Translate, if you don’t understand, I’m sorry
November 8, 20213 yr Author 1 hour ago, diesieben07 said: You must call super.finishUsingItem for food properties to take effect. But I want to return to the bowl after eating my custom food. If super.finishUsingItem is used, the bowl will not be returned.
November 8, 20213 yr Author 11 minutes ago, Spring said: But I want to return to the bowl after eating my custom food. If super.finishUsingItem is used, the bowl will not be returned. @Nonnull @Override public ItemStack finishUsingItem(@Nonnull ItemStack itemStack, @Nonnull World world, @Nonnull LivingEntity livingEntity) { super.finishUsingItem(itemStack, world, livingEntity); return itemStack.isEmpty() ? new ItemStack(Items.BOWL) : itemStack; } solve !
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.