void UpdateBackPack_Item() { GameItemContainer itempack = GameManager.gameManager.PlayerDataPool.BackPack; List <GameItem> itemlist = ItemTool.ItemFilter(itempack, 0); for (int nIndex = 0; nIndex < itempack.ContainerSize; ++nIndex) { if (nIndex < itemlist.Count) { GameItem item = itemlist[nIndex]; if (item != null && item.IsValid()) { m_CangKuBackItems[nIndex].UpdateItem(item); } else { m_CangKuBackItems[nIndex].UpdateEmpty(); } } else { m_CangKuBackItems[nIndex].UpdateEmpty(); } } }
void UpdateCangKu_Item() { GameItemContainer itempack = GameManager.gameManager.PlayerDataPool.StoragePack; List <GameItem> itemlist = ItemTool.ItemFilter(itempack, 0); for (int nIndex = 0; nIndex < MAX_ITEM_PAGE; ++nIndex) { int itemIndex = m_CurPage * MAX_ITEM_PAGE + nIndex; if (itemIndex < itempack.ContainerSize) { if (itemIndex >= 0 && itemIndex < itemlist.Count) { GameItem item = itemlist[itemIndex]; if (item != null && item.IsValid()) { m_CangKuItems[nIndex].UpdateItem(item); } else { m_CangKuItems[nIndex].UpdateEmpty(); } } else { m_CangKuItems[nIndex].UpdateEmpty(); } } else { //UnLock m_CangKuItems[nIndex].UpdateLock(); } } }
/// <summary> /// 显示其它分页 /// </summary> private void ShowBackPack_Other() { // 过滤物品 GameItemContainer BackPack = GameManager.gameManager.PlayerDataPool.BackPack; List <GameItem> itemlist1 = ItemTool.ItemFilter(BackPack, (int)ItemClass.STRENGTHEN, 0, m_QianKunDaiView.activeInHierarchy); List <GameItem> itemlist2 = ItemTool.ItemFilter(BackPack, (int)ItemClass.PRIZE, 0, m_QianKunDaiView.activeInHierarchy); List <GameItem> itemlist3 = ItemTool.ItemFilter(BackPack, (int)ItemClass.MEDIC, 0, m_QianKunDaiView.activeInHierarchy); List <GameItem> itemlist4 = ItemTool.ItemFilter(BackPack, (int)ItemClass.MISSION, 0, m_QianKunDaiView.activeInHierarchy); List <GameItem> itemlist5 = ItemTool.ItemFilter(BackPack, (int)ItemClass.MOUNT, 0, m_QianKunDaiView.activeInHierarchy); List <GameItem> itemlist6 = ItemTool.ItemFilter(BackPack, (int)ItemClass.FASHION, 0, m_QianKunDaiView.activeInHierarchy); itemlist1.AddRange(itemlist2); itemlist1.AddRange(itemlist3); itemlist1.AddRange(itemlist4); itemlist1.AddRange(itemlist5); itemlist1.AddRange(itemlist6); /*m_HaveItemMax = itemlist1.Count; * * int leftCount = m_HaveItemMax - m_ShowItemMin; * if (leftCount < MAX_SHOW_ITEM) * { * CurItemList = itemlist1.GetRange(m_ShowItemMin, leftCount); * } * else * { * CurItemList = itemlist1.GetRange(m_ShowItemMin, MAX_SHOW_ITEM); * }*/ CurItemList = itemlist1; // 显示物品 ShowBackPackItemList(itemlist1); }
private List <Data> GetDataListCommonItem_2() { List <Data> res = new List <Data>(); GameItemContainer EquipPack = GameManager.gameManager.PlayerDataPool.EquipPack; for (int index = 0; index < EquipPack.ContainerSize; ++index) { GameItem equip = EquipPack.GetItem(BackPackLogic.GetEquipSlotByIndex(index)); if (equip != null && equip.IsValid()) { Data data = new Data(); data.item = equip; res.Add(data); } } GameItemContainer BackPack = GameManager.gameManager.PlayerDataPool.BackPack; List <GameItem> itemall = ItemTool.ItemFilter(BackPack, 0, 0, false); for (int nIndex = 0; nIndex < GameItemContainer.MAXSIZE_BACKPACK; ++nIndex) { if (nIndex < BackPack.ContainerSize && nIndex < itemall.Count) { Data data = new Data(); data.item = itemall[nIndex]; res.Add(data); } } //道具显示比较特殊,22组为一个Item // int itemCount = MAX_COMMONITEM_COUNT; // int pageCount = 0; // if (res.Count % itemCount == 0) // { // pageCount = res.Count / itemCount; // } // else // { // pageCount = res.Count / itemCount + 1; // } // // res.Clear(); // // //看有多少页的数据 // for (int i = 0; i < pageCount; i++) // { // Data data = new Data(); // res.Add(data); // } return(res); }
/// <summary> /// 显示伙伴分页 /// </summary> private void ShowBackPack_Fellow() { // 过滤物品 GameItemContainer BackPack = GameManager.gameManager.PlayerDataPool.BackPack; List <GameItem> itemall = ItemTool.ItemFilter(BackPack, (int)ItemClass.FELLOW, 0, m_QianKunDaiView.activeInHierarchy); //m_HaveItemMax = itemall.Count; //List<GameItem> itemlist = ItemTool.ItemFilter(BackPack, (int)ItemClass.FELLOW, 0, m_QianKunDaiView.activeInHierarchy, m_ShowItemMin, MAX_SHOW_ITEM); CurItemList = itemall; // 显示物品 ShowBackPackItemList(itemall); }
/// <summary> /// 显示全部分页 /// </summary> private void ShowBackPack_All() { // 过滤物品 GameItemContainer BackPack = GameManager.gameManager.PlayerDataPool.BackPack; List <GameItem> itemall = ItemTool.ItemFilter(BackPack, 0, 0, m_QianKunDaiView.activeInHierarchy); //m_HaveItemMax = itemall.Count; /// 特殊处理 /// 驱虫剂(ID 44),在任务(33)未完成时,排到第一个位置上,便于引导可以引导正确的位置。 /// MissionState misState = (MissionState)GameManager.gameManager.MissionManager.GetMissionState(GlobeVar.QUCHONGJI_MISSION_ID); if (MissionState.Mission_Completed != misState) { int quChongjiIndex = -1; for (int i = 0; i < itemall.Count; i++) { GameItem item = itemall[i]; if (null != item && item.DataID == GlobeVar.QUCHONGJI_ID) { quChongjiIndex = i; break; } } if (itemall.Count > 0 && quChongjiIndex > 0 && quChongjiIndex < itemall.Count) { GameItem tempItem = itemall[0]; itemall[0] = itemall[quChongjiIndex]; itemall[quChongjiIndex] = tempItem; } } //List<GameItem> itemlist = ItemTool.ItemFilter(BackPack, 0, 0, m_QianKunDaiView.activeInHierarchy, m_ShowItemMin, MAX_SHOW_ITEM); if (null != itemall) { CurItemList = itemall; // 显示物品 ShowBackPackItemList(itemall); } }
/// <summary> /// 更新宝石物品 /// </summary> public void UpdateGemItemList() { GameItemContainer BackPack = GameManager.gameManager.PlayerDataPool.BackPack; m_GemItemList = ItemTool.ItemFilter(BackPack, (int)ItemClass.STRENGTHEN, (int)StrengthenSubClass.GEM); m_GemItemList = GemFilter(m_GemItemList); for (int nIndex = 0; nIndex < GameItemContainer.MAXSIZE_BACKPACK; ++nIndex) { Transform ItemTrans = m_GemListGrid.transform.FindChild((nIndex + 1000).ToString()); if (ItemTrans != null) { if (nIndex < m_GemItemList.Count) { ItemTrans.gameObject.SetActive(true); Transform child = ItemTrans.FindChild("ItemSlot"); if (child != null) { ItemSlotLogic tempIS = child.gameObject.GetComponent <ItemSlotLogic>(); if (null != tempIS) { tempIS.InitInfo(ItemSlotLogic.SLOT_TYPE.TYPE_ITEM, m_GemItemList[nIndex].DataID, null, m_GemItemList[nIndex].StackCount.ToString(), true); } } } else { ItemTrans.gameObject.SetActive(false); } } } ClearGemItemChoose(); }
/// <summary> /// 更新宝石槽位 /// </summary> public void UpdateGemSlot() { int GemNum = 0; GemData gemdata = GameManager.gameManager.PlayerDataPool.GemData; for (int i = 0; i < (int)CONSTVALUE.GEM_SLOT_NUM; i++) { m_GemSlotId[i] = gemdata.GetGemId(m_CurEquipSlot, i); if (m_GemSlotId[i] >= 0) { GemNum++; } } m_EquipProGress.fillAmount = (float)GemNum / (int)CONSTVALUE.GEM_SLOT_NUM; GameItemContainer BackPack = GameManager.gameManager.PlayerDataPool.BackPack; List <GameItem> GemItemList = ItemTool.ItemFilter(BackPack, (int)ItemClass.STRENGTHEN, (int)StrengthenSubClass.GEM); for (int i = 0; i < (int)CONSTVALUE.GEM_SLOT_NUM; i++) { m_GemStrengthenButton[i].SetActive(false); if (m_GemSlotId[i] >= 0) { Tab_CommonItem line = TableManager.GetCommonItemByID(m_GemSlotId[i], 0); if (line != null) { m_GemSlotSprite[i].gameObject.SetActive(true); m_GemSlotSprite[i].spriteName = line.Icon; m_GemItemQualitySprite[i].gameObject.SetActive(true); m_GemItemQualitySprite[i].spriteName = GlobeVar.QualityColorGrid[line.Quality - 1]; m_SelectedGemName[i].text = line.Name.ToString(); m_SelectedGemLevel[i].text = GetGemLevelString(line.MinLevelRequire); m_SelectedGemAttr[i].text = Games.Item.ItemTool.GetGemAttr(m_GemSlotId[i]); } int num = 0; for (int j = 0; j < GemItemList.Count; j++) { if (m_GemSlotId[i] == GemItemList[j].DataID) { num += GemItemList[j].StackCount; } } if (num >= 2) { m_GemStrengthenButton[i].SetActive(true); } } else if (IsSlotLocked(i)) { m_GemSlotSprite[i].gameObject.SetActive(true); m_GemSlotSprite[i].spriteName = "jiesuo"; m_GemItemQualitySprite[i].gameObject.SetActive(false); m_SelectedGemName[i].text = StrDictionary.GetClientDictionaryString("#{10015}", GetSlotLockedLevel(i));; m_SelectedGemLevel[i].text = ""; m_SelectedGemAttr[i].text = ""; } else { m_GemSlotSprite[i].gameObject.SetActive(true); m_GemSlotSprite[i].spriteName = "jiahao"; m_GemItemQualitySprite[i].gameObject.SetActive(false); m_SelectedGemName[i].text = StrDictionary.GetClientDictionaryString("#{10016}"); m_SelectedGemLevel[i].text = ""; m_SelectedGemAttr[i].text = ""; } } ClearGemSlotChoose(); ClearGemItemChoose(); ClearGemSlotMark(); if (m_CurGemSlot >= 0) { ClickGemSlot(m_CurGemSlot); } }