public void ChangeActualSlot(InventorySlot slot)
    {
        if (actualSlot != null)
        {
            actualSlot.Unselect();
        }

        if (actualSlot == slot)
        {
            UnselectActualSlot();
            return;
        }

        actualSlot = slot;
        slot.Select();
        UpdateDescription();

        Player.instance.Inventory.Show();

        if (shopSystem != null)
        {
            if (actualSlot == null)
            {
                shopSystem.SetShopToNoneMode();
                gemsUIGameObject.SetActive(true);
            }
            else if (actualSlot.GetSlotType() == InventorySlot.SlotType.Inventory)
            {
                shopSystem.SetShopToSellMode();
                gemsUIGameObject.SetActive(false);
            }
            else
            {
                shopSystem.SetShopToBuyMode();
                gemsUIGameObject.SetActive(false);
            }
        }
    }