package org.bukkit.craftbukkit.entity; import net.minecraft.world.entity.projectile.EntityProjectileThrowable; import org.bukkit.craftbukkit.CraftServer; import org.bukkit.craftbukkit.inventory.CraftItemStack; import org.bukkit.entity.ThrowableProjectile; import org.bukkit.inventory.ItemStack; public abstract class CraftThrowableProjectile extends CraftProjectile implements ThrowableProjectile { public CraftThrowableProjectile(CraftServer server, EntityProjectileThrowable entity) { super(server, entity); } @Override public ItemStack getItem() { if (getHandle().getItemRaw().isEmpty()) { return CraftItemStack.asBukkitCopy(new net.minecraft.world.item.ItemStack(getHandle().getDefaultItemPublic())); } else { return CraftItemStack.asBukkitCopy(getHandle().getItemRaw()); } } @Override public void setItem(ItemStack item) { getHandle().setItem(CraftItemStack.asNMSCopy(item)); } @Override public EntityProjectileThrowable getHandle() { return (EntityProjectileThrowable) entity; } }