public List <ItemInfo> GetItemInfos(E_INVENTORY_SLOT_TYPE _eType) { List <ItemInfo> result = new List <ItemInfo>(); var info = from n in listItems where (IsSlotType(n, _eType)) select n; result = info.ToList(); return(result); }
List <InventorySlot> GetInventorySlots(E_INVENTORY_SLOT_TYPE _eType) { List <InventorySlot> result = new List <InventorySlot>(); var info = from n in slots where (n.eSlotType == _eType) select n; result = info.ToList(); return(result); }
void UpdateUI(E_INVENTORY_SLOT_TYPE _eType) { var listItem = inventory.GetItemInfos(_eType); var listSlot = GetInventorySlots(_eType); for (int i = 0; i < listSlot.Count; ++i) { var slot = listSlot[i]; if (i >= listItem.Count) { slot.ClearSlot(); continue; } ItemInfo info = listItem[i]; slot.AddItem(info); } }
private static bool IsSlotType(ItemInfo _info, E_INVENTORY_SLOT_TYPE _eType) { bool result = false; switch (_eType) { case E_INVENTORY_SLOT_TYPE.HELMET: { if (_info.ItemType == E_ITEM_TYPE.EQUIP) { var equipInfo = ItemManager.Instance.GetEquipsInfo(_info); if (equipInfo != null) { if (equipInfo.EquipType == E_EQUIP_TYPE.HELMET) { result = true; } } } } break; case E_INVENTORY_SLOT_TYPE.ARMOR_TOP: { if (_info.ItemType == E_ITEM_TYPE.EQUIP) { var equipInfo = ItemManager.Instance.GetEquipsInfo(_info); if (equipInfo != null) { if (equipInfo.EquipType == E_EQUIP_TYPE.ARMOR_TOP) { result = true; } } } } break; case E_INVENTORY_SLOT_TYPE.ARMOR_PANTS: { if (_info.ItemType == E_ITEM_TYPE.EQUIP) { var equipInfo = ItemManager.Instance.GetEquipsInfo(_info); if (equipInfo != null) { if (equipInfo.EquipType == E_EQUIP_TYPE.ARMOR_PANTS) { result = true; } } } } break; case E_INVENTORY_SLOT_TYPE.WEAPON: { if (_info.ItemType == E_ITEM_TYPE.WEAPON) { result = true; } } break; case E_INVENTORY_SLOT_TYPE.ESSENCE_GROUP: { if (_info.ItemType == E_ITEM_TYPE.ESSENCE) { result = true; } } break; case E_INVENTORY_SLOT_TYPE.ESSENCE_GENERAL: { if (_info.ItemType == E_ITEM_TYPE.ESSENCE) { result = true; } } break; case E_INVENTORY_SLOT_TYPE.BLESS: { if (_info.ItemType == E_ITEM_TYPE.BLESS) { result = true; } } break; case E_INVENTORY_SLOT_TYPE.RELIC: { if (_info.ItemType == E_ITEM_TYPE.RELIC) { result = true; } } break; } return(result); }