xiaozheng666QQ
判断物品是否为原版物品
版本1.12.2

xiaozheng666QQ
bukkit的版本!

       public static boolean isMinecraftItem(ItemStack itemStack) {
                if (itemStack.hasItemMeta()) {
                        return false;
                }
                if (itemStack.getItemMeta().hasDisplayName()) {
                        return false;
                }
                if (itemStack.getItemMeta().hasLore()) {
                        return false;
                }
                return true;
        }


gooding300
怪蜀黍666 发表于 2019-8-26 23:27
public static boolean isMinecraftItem(ItemStack itemStack) {
                if (itemStack.hasItemMeta()) { ...

此原版非彼原版……

gooding300 发表于 2019-8-27 05:51
此原版非彼原版……

233333但是这样应该阔以吧

Dante_7
如果原版指的是相区别于 MOD 物品的原版, 那可以通过获取品 id 来实现, 当然, 1.8 以上不支持 物品 id, 但是可以通过相对应的枚举来检查, 要是原版中有这个东西, 那就是原版物品, 要是原版中没有这个枚举, 就说明是 MOD 物品.

其实每个枚举成员也都有自己的 id 的, 所以用数字更加方便一些...吧

guo1060924736
  1. ItemStack item;//这个是你要判断的物品
  2. ItemMeta itemMeta=item.getItemMeta();
  3. if(itemMeta.equals((new ItemStack(原版物品id)).getItemMeta())){
  4. }
复制代码