/**
  * Get the slot which the named material sits in.
  *
  * @param inventory inventory to search
  * @param material material to search for
  * @param itemName name of the material to match
  * @return slot of the named-item if it exists in the inventory, -1 otherwise.
  */
 public static Integer getSlotOf(Inventory inventory, Material material, String itemName) {
   HashMap<Integer, ? extends ItemStack> items = inventory.all(material);
   for (Map.Entry<Integer, ? extends ItemStack> inventoryItem : items.entrySet()) {
     if (Items.nameContains(inventoryItem.getValue(), itemName)) {
       return inventoryItem.getKey();
     }
   }
   return -1;
 }
  @EventHandler
  public void onPlayerInteract(PlayerInteractEvent event) {
    Player player = event.getPlayer();
    GamePlayer GamePlayer = FakeboardHandler.getPlayer(player);
    String playerName = GamePlayer.getName();

    if (event.getAction() == Action.RIGHT_CLICK_AIR
        || event.getAction() == Action.RIGHT_CLICK_BLOCK) {
      if (player.getItemInHand() != null
          && Items.itemNameContains(player.getItemInHand(), "Select & Edit Loadouts")) {
        event.setCancelled(true);
        // Open the loadout menu for the player
        GameSetupHandler.openLoadoutOptionMenu(player);
      }
    } else if (GameSetupHandler.isGameInProgress()) {
      if (!playerCooldown.isOnCooldown(playerName)) {
        if (GamePlayer.isAfk()) {
          GamePlayer.setAfk(false, false);
        }
        playerCooldown.setOnCooldown(playerName);
      }
    }
  }