minecraft-source/src/net/minecraft/world/item/SnowballItem.java

37 lines
1.4 KiB
Java

package net.minecraft.world.item;
import net.minecraft.stats.Stat;
import net.minecraft.stats.Stats;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.projectile.Snowball;
import net.minecraft.sounds.SoundSource;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.InteractionResultHolder;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.level.Level;
public class SnowballItem extends Item {
public SnowballItem(final Properties a) {
super(a);
}
@Override
public InteractionResultHolder<ItemStack> use(final Level bjt, final Player ayg, final InteractionHand ajh) {
final ItemStack bek5 = ayg.getItemInHand(ajh);
bjt.playSound(null, ayg.getX(), ayg.getY(), ayg.getZ(), SoundEvents.SNOWBALL_THROW, SoundSource.NEUTRAL, 0.5f, 0.4f / (SnowballItem.random.nextFloat() * 0.4f + 0.8f));
if (!bjt.isClientSide) {
final Snowball ayz6 = new Snowball(bjt, ayg);
ayz6.setItem(bek5);
ayz6.shootFromRotation(ayg, ayg.xRot, ayg.yRot, 0.0f, 1.5f, 1.0f);
bjt.addFreshEntity(ayz6);
}
ayg.awardStat(Stats.ITEM_USED.get(this));
if (!ayg.abilities.instabuild) {
bek5.shrink(1);
}
return InteractionResultHolder.<ItemStack>success(bek5);
}
}