private void UpdateGoodsDisplay() { goodsPool.AddChildInstancesToPool(goodsContainer); List <HLHNPCGoods> itemsAsGoods = npc.GetCurrentLevelGoods(); for (int i = 0; i < itemsAsGoods.Count; i++) { HLHNPCGoods goods = itemsAsGoods[i]; Transform goodsCell = goodsPool.GetInstance <Transform>(goodsModel.gameObject, goodsContainer); Item itemAsGoods = goods.GetGoodsItem(); goodsCell.GetComponent <GoodsCell>().SetUpGoodsCell(goods); goodsCell.GetComponent <Button>().onClick.RemoveAllListeners(); int goodsIndex = i; goodsCell.GetComponent <Button>().onClick.AddListener(delegate { currentSelectedItem = itemAsGoods; currentSelectItemPrice = goods.GetGoodsPrice(); itemDetail.SetUpItemDetail(itemAsGoods, currentSelectItemPrice, ItemOperationType.Buy); UpdateGoodsSelection(goodsIndex); currentSelectGoodsIndex = goodsIndex; bagItemsDisplay.HideAllItemSelectedTintIcon(); }); } }
public void SetUpGoodsCell(HLHNPCGoods goods) { Item itemAsGoods = goods.GetGoodsItem(); goodsName.text = itemAsGoods.itemName; goodsName.color = CommonData.grayEquipmentColor; goodsBackground.sprite = grayFrame; if (itemAsGoods is Equipment) { Equipment equipment = itemAsGoods as Equipment; switch (equipment.quality) { case EquipmentQuality.Gray: goodsName.color = CommonData.grayEquipmentColor; goodsBackground.sprite = grayFrame; break; case EquipmentQuality.Blue: goodsName.color = CommonData.blueEquipmentColor; goodsBackground.sprite = blueFrame; break; case EquipmentQuality.Gold: goodsName.color = CommonData.goldEquipmentColor; goodsBackground.sprite = goldFrame; break; case EquipmentQuality.Purple: goodsName.color = CommonData.purpleEquipmentColor; goodsBackground.sprite = purpleFrame; break; } } int price = goods.GetGoodsPrice(); goodsPrice.text = price.ToString(); Sprite itemSprite = GameManager.Instance.gameDataCenter.GetGameItemSprite(itemAsGoods); goodsIcon.sprite = itemSprite; goodsIcon.enabled = itemSprite != null; selectedIcon.enabled = false; }
private void UpdateGoodsSelection(int selectedGoodsIndex) { for (int i = 0; i < goodsContainer.childCount; i++) { Transform goodsCell = goodsContainer.GetChild(i); goodsCell.GetComponent <GoodsCell> ().SetSelection(i == selectedGoodsIndex); } List <HLHNPCGoods> goodsList = npc.GetCurrentLevelGoods(); HLHNPCGoods goods = goodsList [selectedGoodsIndex]; Item itemAsGoods = goods.GetGoodsItem(); itemDetail.SetUpItemDetail(itemAsGoods, goods.GetGoodsPrice(), ItemOperationType.Buy); }