54 lines
1.7 KiB
Java
54 lines
1.7 KiB
Java
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<ItemStack> use(final Level bjt, final Player ayg, final InteractionHand ajh) {
|
|
ayg.startUsingItem(ajh);
|
|
return InteractionResultHolder.<ItemStack>success(ayg.getItemInHand(ajh));
|
|
}
|
|
}
|