public static ListView <IHeroData> GetTrainingHeroList(CMallSortHelper.HeroViewSortType sortType = CMallSortHelper.HeroViewSortType.Name) { ListView <IHeroData> listView = new ListView <IHeroData>(); List <uint> list = new List <uint>(); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); if (masterRoleInfo == null) { return(listView); } DictionaryView <uint, CHeroInfo> .Enumerator enumerator = masterRoleInfo.GetHeroInfoDic().GetEnumerator(); while (enumerator.MoveNext()) { KeyValuePair <uint, CHeroInfo> current = enumerator.Current; if ((current.get_Value().MaskBits & 2u) > 0u) { ListView <IHeroData> listView2 = listView; KeyValuePair <uint, CHeroInfo> current2 = enumerator.Current; listView2.Add(CHeroDataFactory.CreateHeroData(current2.get_Key())); List <uint> list2 = list; KeyValuePair <uint, CHeroInfo> current3 = enumerator.Current; list2.Add(current3.get_Key()); } } for (int i = 0; i < masterRoleInfo.freeHeroList.get_Count(); i++) { if (!masterRoleInfo.GetHeroInfoDic().ContainsKey(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID)) { listView.Add(CHeroDataFactory.CreateHeroData(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID)); list.Add(masterRoleInfo.freeHeroList.get_Item(i).dwFreeHeroID); } } ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); for (int j = 0; j < allHeroList.Count; j++) { if (allHeroList[j].bIsTrainUse == 1 && !list.Contains(allHeroList[j].dwCfgID)) { listView.Add(CHeroDataFactory.CreateHeroData(allHeroList[j].dwCfgID)); } } if (CSysDynamicBlock.bLobbyEntryBlocked) { for (int k = listView.Count - 1; k >= 0; k--) { IHeroData heroData = listView[k]; if (heroData.heroCfgInfo.bIOSHide > 0) { listView.Remove(heroData); } } } CHeroOverviewSystem.SortHeroList(ref listView, sortType, false); return(listView); }
private void ResetHeroList() { this.m_heroList.Clear(); ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); for (int i = 0; i < allHeroList.Count; i++) { if ((this.m_heroJobType == enHeroJobType.All) || (allHeroList[i].bJob == ((byte)this.m_heroJobType))) { this.m_heroList.Add(allHeroList[i]); } } }
protected void FilterHeroData() { ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); for (int i = 0; i < allHeroList.Count; i++) { if ((this.m_selectHeroType == enHeroJobType.All) || (allHeroList[i].bJob == ((byte)this.m_selectHeroType))) { IHeroData item = CHeroDataFactory.CreateHeroData(allHeroList[i].dwCfgID); this.m_heroList.Add(item); } } SortHeroList(ref this.m_heroList); }
private void ResetHeroList(enHeroJobType jobType, bool bOwn) { this.m_heroList.Clear(); CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo(); DebugHelper.Assert(masterRoleInfo != null, "CSymbolRcommendController ResetHeroList role is null"); if (masterRoleInfo != null) { ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); for (int i = 0; i < allHeroList.Count; i++) { if ((((jobType == enHeroJobType.All) || (allHeroList[i].bMainJob == ((byte)jobType))) || (allHeroList[i].bMinorJob == ((byte)jobType))) && (!bOwn || masterRoleInfo.IsHaveHero(allHeroList[i].dwCfgID, false))) { this.m_heroList.Add(allHeroList[i]); } } } }
private void FilterHeroData(bool bOnlySort) { ListView <ResHeroCfgInfo> allHeroList = CHeroDataFactory.GetAllHeroList(); if (!bOnlySort) { this.m_heroList.Clear(); for (int i = 0; i < allHeroList.get_Count(); i++) { if (this.m_selectHeroType == enHeroJobType.All || allHeroList.get_Item(i).bMainJob == (byte)this.m_selectHeroType || allHeroList.get_Item(i).bMinorJob == (byte)this.m_selectHeroType) { IHeroData heroData = CHeroDataFactory.CreateHeroData(allHeroList.get_Item(i).dwCfgID); CMallItem cMallItem = new CMallItem(heroData.cfgID, CMallItem.IconType.Normal); if (this.m_ownFlag) { if (cMallItem.Owned(false)) { this.m_heroList.Add(heroData); } } else { this.m_heroList.Add(heroData); } } } } HeroViewSortImp heroViewSortImp = CMallSortHelper.CreateHeroViewSorter(); if (heroViewSortImp != null) { heroViewSortImp.SetSortType(this.m_heroSortType); this.m_heroList.Sort(heroViewSortImp); if (this.m_bSortDesc) { this.m_heroList.Reverse(); } } }