Exemple #1
0
        public void AddItems(List <TStack> listItemsToShow, bool isSelected, ItemEventChannelSO selectItemEvent)
        {
            Debug.Assert(listItemsToShow.Count <= m_MaxItemCapacity,
                         $"We need lower or equal amount of items for this row. items: {listItemsToShow.Count}, max: {m_MaxItemCapacity}"
                         );

            int maxCount = Mathf.Max(instantiatedItems.Count, listItemsToShow.Count);

            for (int i = 0; i < maxCount; i++)
            {
                // if we don't have enough instantiated then create it for us.
                // only if we are not at max capacity.
                if (i >= instantiatedItems.Count)
                {
                    //instantiate
                    TFiller instantiatedPrefab = Instantiate(itemPrefab, transform);
                    instantiatedItems.Add(instantiatedPrefab);
                }

                // if we have enough instantiated items continue
                // check if we
                if (i < listItemsToShow.Count)
                {
                    instantiatedItems[i].SetItem(listItemsToShow[i], isSelected, selectItemEvent);
                }
                else
                {
                    // if we empty spaces in the list Deactivate
                    instantiatedItems[i].SetInactiveItem();
                }
            }
        }
        public override void SetItem(ItemRecipeStack itemStack, bool isSelected, ItemEventChannelSO selectItemEvent)
        {
            base.SetItem(itemStack, isSelected, selectItemEvent);

            itemName.StringReference        = itemStack.Item.ItemName;
            itemDescription.StringReference = itemStack.Item.Description;
        }
Exemple #3
0
        public override void SetItem(ItemStack itemStack, bool isSelected, ItemEventChannelSO selectItemEvent)
        {
            base.SetItem(itemStack, isSelected, selectItemEvent);

            itemCount.text = itemStack.Amount.ToString();
            OnPointerExit(null);
        }
        public virtual void SetItem(TStack itemStack, bool isSelected, ItemEventChannelSO selectItemEvent)
        {
            itemPreviewImage.gameObject.SetActive(true);
            itemName.gameObject.SetActive(true);
            bgImage.gameObject.SetActive(true);
            imgHover.gameObject.SetActive(true);
            imgSelected.gameObject.SetActive(true);

            currentItem       = itemStack;
            m_SelectItemEvent = selectItemEvent;

            imgSelected.gameObject.SetActive(isSelected);
            if (itemStack.Item.IsLocalized)
            {
                bgLocalizedImage.enabled        = true;
                bgLocalizedImage.AssetReference = itemStack.Item.LocalizePreviewImage;
            }
            else
            {
                bgLocalizedImage.enabled = false;
                itemPreviewImage.sprite  = itemStack.Item.PreviewImage;
            }

            bgImage.color = itemStack.Item.ItemType.TypeColor;
        }
    public void SetItem(ItemStack itemStack, bool isSelected, ItemEventChannelSO selectItemEvent)
    {
        _itemPreviewImage.gameObject.SetActive(true);
        _itemCount.gameObject.SetActive(true);
        _bgImage.gameObject.SetActive(true);
        _imgHover.gameObject.SetActive(true);
        _imgSelected.gameObject.SetActive(true);
        _itemButton.gameObject.SetActive(true);
        _bgInactiveImage.gameObject.SetActive(false);

        UnhoverItem();
        _currentItemEvent = selectItemEvent;
        _currentItem      = itemStack;

        _imgSelected.gameObject.SetActive(isSelected);

        if (itemStack.Item.IsLocalized)
        {
            _bgLocalizedImage.enabled        = true;
            _bgLocalizedImage.AssetReference = itemStack.Item.LocalizePreviewImage;
        }
        else
        {
            _bgLocalizedImage.enabled = false;
            _itemPreviewImage.sprite  = itemStack.Item.PreviewImage;
        }
        _itemCount.text = itemStack.Amount.ToString();
        _bgImage.color  = itemStack.Item.ItemType.TypeColor;
    }
    public void SetItem(ItemStack itemStack, bool isSelected, ItemEventChannelSO selectItemEvent)
    {
        UnhoverItem();

        _currentItem = itemStack;

        _imgSelected.gameObject.SetActive(isSelected);

        _itemPreviewImage.sprite   = itemStack.Item.PreviewImage;
        _itemTitle.StringReference = itemStack.Item.Name;
        _itemCount.text            = itemStack.Amount.ToString();
        _bgImage.color             = itemStack.Item.ItemType.TypeColor;

        _itemButton.onClick.RemoveAllListeners();

        _itemButton.onClick.AddListener(() =>
        {
            SelectItem();
            UnhoverItem();
            selectItemEvent.RaiseEvent(_currentItem.Item);
        });
    }