How can I check if player's inventory contains custom item?

Discussion in 'Plugin Development' started by jinhoftyu, Mar 27, 2021.

  1. Offline


    I want to know if inventory contains item which has specified displayname, but I have no idea.
    Inv.contains(new ItemStack(Material.PAPER).getItemMeta().getDisplayName() == "name") ??
  2. Offline

    timtower Administrator Administrator Moderator

    @jinhoftyu Get all paper stacks, check the displayname.
  3. Offline


    @jinhoftyu You should compare strings with "String#equals(String)", not "String == String".
  4. Offline


    How can I get 'all' paper stacks? Should I use PlayerInventory#getItem?
  5. Offline

    timtower Administrator Administrator Moderator

  6. Offline


    You can also create an ItemStack representing said item and just call Player#getInventory#contains.

    PS if you do that, be sure you aren't doing something silly like actually creating it manually in the check apart from creating it when you issue it to the player. Make a method that returns the item so if you decide to tweak the config, you don't have to go and change it multiple places.

Share This Page