Beispiel #1
0
        /// <summary>
        /// Вывести информацию о предмете
        /// </summary>
        /// <param name="type">Тип предмета</param>
        /// <param name="amount">Количество предмета</param>
        /// <param name="progress">Прогресс предмета</param>
        public void SetItem(DataTableItems.ItemTypes type, int amount, float progress, int bagSize)
        {
            Image_Icon.sprite = GameManager.Instance.AssetsLibrary.GetSprite_Item(type);

            if (type == DataTableItems.ItemTypes.Max)
            {
                Text_ItemName.text = string.Empty;
                SetAmount(0);
                SetSlotProgress(0);

                SelAlphaToImage(Image_Icon, 0.5f);
                return;
            }

            Text_ItemName.text = type.ToString();
            Type = type;

            CacheBagSize(bagSize);
            SetAmount(amount);
            SetSlotProgress(progress);

            if (Image_Icon.color.a < 0.9f)
            {
                SelAlphaToImage(Image_Icon, 1f);
            }
        }
        public void Init(DataTableItems.ItemTypes itemType, float progress, float multiplayer)
        {
            m_ItemType         = itemType;
            Text_ItemName.text = itemType.ToString();

            SetProgress(progress);
            SetMultiplayer(multiplayer);

            //Список потребляемых ресурсов
            ShowAbsorbedResources();
        }
Beispiel #3
0
        /// <summary>
        /// Инициализация
        /// </summary>
        /// <param name="type">Тип предмета</param>
        /// <param name="amount">Количество предметов</param>
        /// <param name="progress">Текущий прогресс создания</param>
        public void Init(DataTableItems.ItemTypes type, int amount, float progress, bool allowAutocraft, DataTableItems.ItemAmountContainer[] requiredItems)
        {
            //Тип предмета
            Type = type;

            //Иконка предмета
            Image_ItemIcon.sprite = GameManager.Instance.AssetsLibrary.GetSprite_Item(type);

            //Имя и количество предметов
            Text_ItemName.text = type.ToString();
            SetItemAmount(amount);

            //Текущий прогресс создания
            SetItemProgress(progress);

            //Вывод необходимых для создания предметов
            m_RequiredItems = new Dictionary <DataTableItems.ItemTypes, UIElement_CraftItem_RequireItem>();

            if (requiredItems.Length == 0)
            {
                RequiredItemsParent.gameObject.SetActive(false);
            }
            else
            {
                for (int i = 0; i < requiredItems.Length; i++)
                {
                    UIElement_CraftItem_RequireItem item = Instantiate(GameManager.Instance.Manager_UI.WindowsManager.UIElement_CraftRequireItemPrefab, RequiredItemsParent);
                    item.Init(requiredItems[i].Type, requiredItems[i].Amount);

                    m_RequiredItems.Add(requiredItems[i].Type, item);
                }
            }

            if (!allowAutocraft)
            {
                Toggle_AutoCraft.gameObject.SetActive(false);
            }
            else
            {
                //Toggle автокрафта
                if (Toggle_AutoCraft != null)
                {
                    Toggle_AutoCraft.OnTryChangeValue += Toggle_TryChangeValueHandler;
                    Toggle_AutoCraft.Init();
                }

                //Прогресс тиков автокрафта
                if (Image_AutoCraftProgress != null)
                {
                    Image_AutoCraftProgress.fillAmount = 0;
                }
            }

            if (UIElement_DraggableIcon != null)
            {
                UIElement_DraggableIcon.enabled            = false;
                UIElement_DraggableIcon.OnPoinerDownEvent += PointerDown_Handler;
                UIElement_DraggableIcon.OnDragEvent       += Drag_Handler;
                UIElement_DraggableIcon.OnPointerUpEvent  += PointerUp_Handler;
            }

            base.Init();
        }