创建 SpawnEgg 的 ItemStack
对于低于 1.9 的任何事物
SpawnEgg egg = new SpawnEgg(EntityType.CREEPER);
ItemStack creeperEgg = egg.toItemStack(5);
1.9 及以上
在 1.9 及更高版本中,Spigot 没有使用 NMS 创建产卵的实现。要实现这一点,你可以使用一个小的自定义类/包装器来实现它:
public ItemStack toItemStack(int amount, EntityType type) {
ItemStack item = new ItemStack(Material.MONSTER_EGG, amount);
net.minecraft.server.v1_9_R1.ItemStack stack = CraftItemStack.asNMSCopy(item);
NBTTagCompound tagCompound = stack.getTag();
if(tagCompound == null){
tagCompound = new NBTTagCompound();
}
NBTTagCompound id = new NBTTagCompound();
id.setString("id", type.getName());
tagCompound.set("EntityTag", id);
stack.setTag(tagCompound);
return CraftItemStack.asBukkitCopy(stack);
}