目前,我正在尝试制作一个自动熔炼插件,并且每次玩家打破该区块时,它都会读取打破的区块并将其融化给玩家。现在,可能不需要在游戏中冶炼青金石,但是由于块破裂时,它会取消块破裂并手动将其破坏,然后提供物品,因此我需要这样做:

player.getInventory().addItem(new ItemStack(Material.LAPIS, 1));
player.updateInventory();


但您可能知道,Material.LAPIS不是bukkit / spigot Material。这意味着我需要做:

player.getInventory().addItem(new ItemStack(Material.INK_SACK, 1, (short) 4));
player.updateInventory();


由于青金石在技术上是一种染料。但是,由于我不知道的原因,这当然行不通。我正在使用1.10.2 spigot API,所以也许它可以在1.11或1.12 API中工作,但我不确定。因此,如果有人有办法为玩家提供青金石,请告诉我。

最佳答案

尝试这个:

Dye dye = new Dye(); dye.setColor(DyeColor.BLUE);ItemStack lapis = dye.toItemStack();

09-05 21:09