private void SetFromItem(ItemObjectUiElement itemObj, Item item)
        {
            itemObj.SetItemFromId(item.itemId);

            Sprite itemSprite = ItemDataManager.GetDisplaySprite(item.itemName);

            itemObj.SetItemObjectSprite(itemSprite);

            int focusAreas = item.FocusAreaCount;

            Transform transform = itemObj.transform;

            if (focusAreas > 0)
            {
                for (int i = 0; i < focusAreas; i++)
                {
                    FocusAreaUI uiElement = Object.Instantiate(focusAreaPrefab).GetOrAddComponent <FocusAreaUI>();

                    uiElement.transform.SetParent(transform);

                    FocusAreaUiDetails details = item.GetFocusAreaUiDetailsAtIndex(i);

                    uiElement.SetDetails(details);
                }
            }

            itemObj.RegisterFocusHandlerAreas();
        }
Beispiel #2
0
 internal void RegisterFocusAreaUiInChildren(Transform obj, IContainFocusArea container)
 {
     if (obj.childCount > 0)
     {
         for (int i = 0; i < obj.childCount; i++)
         {
             Transform   child = obj.GetChild(i);
             FocusAreaUI focus = child.GetComponent <FocusAreaUI>();
             focus.FocusArea.InitializeParentAndId(container, i);
             RegisterFocusArea(focus);
         }
     }
 }