NernBrot
本帖最后由 NernBrot 于 2022-10-25 18:30 编辑

如何检测玩家手持物品的lore里是否有指定的文本,求解答
已解决请勿回帖!

大阔
PlayerInventory#getItemInMainHand()
ItemStack#getItemMeta()
ItemMeta#getLore()
List<String>#contains

NernBrot
大阔 发表于 2022-9-7 23:46
PlayerInventory#getItemInMainHand()
ItemStack#getItemMeta()
ItemMeta#getLore()

已解决,非常感谢,就是单击没有物品的slot 会报错空指针

比巴卜c
NernBrot 发表于 2022-9-11 11:13
已解决,非常感谢,就是单击没有物品的slot 会报错空指针

那就先判断手里面是否有物品

2000000
    public static boolean checkLore(ItemStack item, String string) {
        return item.getItemMeta().getLore().contains(string);
    }

例子:

    public void onPlayerJoin(PlayerJoinEvent event) {
        Bukkit.getLogger().info(Boolean.toString(checkLore(event.getPlayer().getItemInHand(), "lore")));
    }



第一页 上一页 下一页 最后一页