//------------------------------------------------------------------------------------------------------------------------ // AddItemToView() //------------------------------------------------------------------------------------------------------------------------ //Adds a new item container to the view, each view can have its way of displaying items protected override void addItemToView(Item item) { GameObject newItemInstance = GameObject.Instantiate(itemPrefab); newItemInstance.transform.SetParent(itemLayoutGroup.transform); newItemInstance.transform.localScale = Vector3.one;//The scale would automatically change in Unity so we set it back to Vector3.one. GridViewItemContainer itemContainer = newItemInstance.GetComponent <GridViewItemContainer>(); Debug.Assert(itemContainer != null); itemContainer.Initialize(item); _itemList.Add(newItemInstance); }
public override void UpdateObservers(ISubject pSubject) { if (pSubject.SubjectState == (int)ShopActions.PURCHASED) { updateItemList(); } if (pSubject.SubjectState == (int)ShopActions.SOLD) { updateItemList(); } if (pSubject.SubjectState == (int)ShopActions.UPGRADED) { GameObject itemInstance = _itemList[ShopCreator.Instance.inventoryModel.GetSelectedItemIndex()]; GridViewItemContainer itemContainer = itemInstance.GetComponent <GridViewItemContainer>(); itemContainer.UpdateItemDetailsUI(); } updateMoneyPanel(); }