package net.minecraft.world.item; import net.minecraft.world.InteractionResultHolder; import net.minecraft.world.InteractionHand; import net.minecraft.world.level.ItemLike; import net.minecraft.world.entity.player.Player; import net.minecraft.stats.Stat; import net.minecraft.stats.Stats; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.level.Level; public class MilkBucketItem extends Item { public MilkBucketItem(final Properties a) { super(a); } @Override public ItemStack finishUsingItem(final ItemStack bek, final Level bjt, final LivingEntity akw) { if (akw instanceof ServerPlayer) { final ServerPlayer xe5 = (ServerPlayer)akw; CriteriaTriggers.CONSUME_ITEM.trigger(xe5, bek); xe5.awardStat(Stats.ITEM_USED.get(this)); } if (akw instanceof Player && !((Player)akw).abilities.instabuild) { bek.shrink(1); } if (!bjt.isClientSide) { akw.removeAllEffects(); } if (bek.isEmpty()) { return new ItemStack(Items.BUCKET); } return bek; } @Override public int getUseDuration(final ItemStack bek) { return 32; } @Override public UseAnim getUseAnimation(final ItemStack bek) { return UseAnim.DRINK; } @Override public InteractionResultHolder use(final Level bjt, final Player ayg, final InteractionHand ajh) { ayg.startUsingItem(ajh); return InteractionResultHolder.success(ayg.getItemInHand(ajh)); } }