我想知道如何选择放置我的 TNT 的方 block 。这是我的代码。
ItemStack tnt = new ItemStack(Material.TNT, 1);
如 give @p tnt 1 0 {PlaceOn:emerald_block}
。
我正在为 Minecraft 1.12 和 Eclipse 使用 Spigot。
最佳答案
native 无法通过 Spigot API 执行此操作,您需要使用 NMS 和 NBT:
net.minecraft.server.v1_12_R1.ItemStack stack = CraftItemStack.asNMSCopy(tnt);
NBTTagList tags = (NBTTagList) stack.getTag().get("CanPlaceOn");
if (tags == null)
tags = new NBTTagList();
tags.add(new NBTTagString("minecraft:emerald_block"));
stack.getTag().set("CanPlaceOn", tags);
ItemStack toUse = CraftItemStack.asCraftMirror(stack);
关于java - 如何选择可以放置元素的方 block ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44672527/