// 更新 void UpdateInfo() { m_tempIndex = 1; // 不同类型显示内容不同 ShowCurTypeLayout(); // 排序好的列表 List <CSItemGuid> cardList = m_cardSortUI.GetSortReslut(); ENSortType sortType = m_cardSortUI.GetLastSortType(); // 显示卡牌列表 foreach (CSItemGuid itemGuid in cardList) { CSItem item = CardBag.Singleton.GetCardByGuid(itemGuid); if (null == item) { continue; } int cardID = item.IDInTable; HeroInfo heroInfo = GameTable.HeroInfoTableAsset.Lookup(cardID); if (null == heroInfo) { Debug.LogWarning("heroInfo == NULL heroInfo cardID:" + cardID); continue; } // 筛选 if (SortConditon(item)) { continue; } // 格子不够增加格子 if (false == m_gridList.ContainsKey(m_tempIndex)) { ExpandOneGrid(); } // 更新格子 UICardItem cardItem = m_gridList[m_tempIndex]; cardItem.UpdateOperate(item, sortType, m_tempIndex); m_tempIndex++; } // 把剩余的空格子图片置空 for (; m_tempIndex <= m_gridList.Count; m_tempIndex++) { UICardItem cardItem = m_gridList[m_tempIndex]; cardItem.SetEmpty(); cardItem.HideWindow(); } m_gridItemList.Reposition(); }
void UpdateInfo() { // if hide then not update if (WindowRoot.activeSelf == false) { return; } m_capacity.text = "" + CardBag.Singleton.m_cardNum; m_maxCapacity.text = "/" + CardBag.Singleton.m_capacity; if (CardBag.Singleton.m_cardNum > CardBag.Singleton.m_capacity) { m_capacity.color = Color.red; } else { m_capacity.color = Color.black; } m_cardSortLable.text = CardBag.Singleton.GetSrotString(m_cardSortUI.GetLastSortType()); // 排序好的列表 List <CSItemGuid> cardList = m_cardSortUI.GetSortReslut(); // CardBag.Singleton.GetSortedCardList(); // 排序类型 ENSortType sortType = m_cardSortUI.GetLastSortType(); int i = 1; foreach (CSItemGuid item in cardList) { CSItem card = CardBag.Singleton.GetCardByGuid(item); if (null == card) { continue; } int cardID = card.IDInTable; HeroInfo heroInfo = GameTable.HeroInfoTableAsset.Lookup(cardID); if (null == heroInfo) { Debug.LogWarning("heroInfo == NULL heroInfo cardID:" + cardID); continue; } // 职业刷选 if (m_cardSortUI.GetSelectedOcc().Count != 0) { // 如果不是是选中的职业 则不显示 if (!m_cardSortUI.GetSelectedOcc().Contains(heroInfo.Occupation)) { continue; } } // 种族筛选 if (m_cardSortUI.GetSelectedRace().Count != 0) { // 如果不是是选中的职业 则不显示 if (!m_cardSortUI.GetSelectedRace().Contains(heroInfo.Type)) { continue; } } if (false == m_gridList.ContainsKey(i)) { CreateOneGird(i); } m_gridList[i].Update(card, sortType, i); i++; } // 把剩余的空格子图片置空 for (; i <= m_gridList.Count; i++) { if (!m_gridList.ContainsKey(i)) { continue; } m_gridList[i].SetEmpty(); } // 最后一个格子 是扩充按钮 int tempInt = CardBag.Singleton.m_capacity + 1; if (CardBag.Singleton.m_cardNum > CardBag.Singleton.m_capacity) { tempInt = CardBag.Singleton.m_cardNum + 1; } CreateOneGird(tempInt); m_gridList[tempInt].SetExpand(); m_grid.Reposition(); // 设置背包 中卡牌的空隙 中用来拖拽的 BOX大小 BoxCollider boxCollider = m_dragBox.GetComponent <BoxCollider>(); int totalCol = User.Singleton.GetBagCapcity() / m_grid.maxPerLine; boxCollider.size = new Vector3(boxCollider.size.x, totalCol * m_grid.cellHeight * 2, 0); boxCollider.center = new Vector3(boxCollider.center.x, (-1) * totalCol * m_grid.cellHeight / 2, 0); }