/// <summary>
    /// Equip item in inventory.
    /// </summary>
    /// <param name="item"> Item is picked in Inventory.</param>
    /// <returns></returns>
    public bool AddToEquip(ItemResource item, Action reloadData = null)
    {
        var equipSlot = GetSlot(item);

        if (equipSlot == null)
        {
            return(false);
        }

        if (equipSlot.itemResource != null)
        {
            playerInventory.RemoveEquipmentItem(currentCharacter.characterId, equipSlot.itemResource);
            playerInventory.AddItem(equipSlot.itemResource);
        }

        equipSlot.SetupItem(item);

        playerInventory.AddEquipmentItem(currentCharacter.characterId, equipSlot.itemResource);
        playerInventory.RemoveItem(equipSlot.itemResource);

        // reload data in Inventory
        reloadData?.Invoke();

        return(true);
    }