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(); }
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); } } }