private static string GetTopUseHeroNames(ref COMDT_RANK_PASTSEASON_FIGHT_RECORD data, out List <COMDT_RANK_COMMON_USED_HERO> heroList) { heroList = new List <COMDT_RANK_COMMON_USED_HERO>(); int num = 0; while ((long)num < (long)((ulong)data.dwCommonUsedHeroNum)) { if (data.astCommonUsedHeroInfo[num].dwHeroId != 0u) { heroList.Add(data.astCommonUsedHeroInfo[num]); } num++; } heroList.Sort(new Comparison <COMDT_RANK_COMMON_USED_HERO>(CLadderView.ComparisonHeroData)); StringBuilder stringBuilder = new StringBuilder(); int num2 = (heroList.get_Count() > 4) ? 4 : heroList.get_Count(); for (int i = 0; i < num2; i++) { ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(heroList.get_Item(i).dwHeroId); if (dataByKey != null) { stringBuilder.Append(StringHelper.UTF8BytesToString(ref dataByKey.szName)); stringBuilder.Append(" "); } } return(stringBuilder.ToString()); }
private static string GetTopUseHeroNames(ref COMDT_RANK_PASTSEASON_FIGHT_RECORD data, out List <COMDT_RANK_COMMON_USED_HERO> heroList) { heroList = new List <COMDT_RANK_COMMON_USED_HERO>(); for (int i = 0; i < data.dwCommonUsedHeroNum; i++) { if (data.astCommonUsedHeroInfo[i].dwHeroId != 0) { heroList.Add(data.astCommonUsedHeroInfo[i]); } } heroList.Sort(new Comparison <COMDT_RANK_COMMON_USED_HERO>(CLadderView.ComparisonHeroData)); StringBuilder builder = new StringBuilder(); int num2 = (heroList.Count <= 4) ? heroList.Count : 4; for (int j = 0; j < num2; j++) { ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey(heroList[j].dwHeroId); if (dataByKey != null) { builder.Append(StringHelper.UTF8BytesToString(ref dataByKey.szName)); builder.Append(" "); } } return(builder.ToString()); }
private static string GetSeasonText(ref COMDT_RANK_PASTSEASON_FIGHT_RECORD data) { DateTime time = Utility.ToUtcTime2Local((long)data.dwSeaStartTime); DateTime time2 = Utility.ToUtcTime2Local((long)data.dwSeaEndTime); object[] args = new object[] { time.Year, time.Month, time.Day, time2.Year, time2.Month, time2.Day }; return(string.Format(Singleton <CTextManager> .GetInstance().GetText("ladder_season_duration"), args)); }
private static int ComparisonHistoryData(COMDT_RANK_PASTSEASON_FIGHT_RECORD a, COMDT_RANK_PASTSEASON_FIGHT_RECORD b) { if (a.dwSeaEndTime > b.dwSeaEndTime) { return(-1); } if (a.dwSeaEndTime < b.dwSeaEndTime) { return(1); } return(0); }
private static string GetSeasonText(ref COMDT_RANK_PASTSEASON_FIGHT_RECORD data) { DateTime dateTime = Utility.ToUtcTime2Local((long)((ulong)data.dwSeaStartTime)); DateTime dateTime2 = Utility.ToUtcTime2Local((long)((ulong)data.dwSeaEndTime)); string text = Singleton <CTextManager> .GetInstance().GetText("ladder_season_duration"); return(string.Format(text, new object[] { dateTime.get_Year(), dateTime.get_Month(), dateTime2.get_Year(), dateTime2.get_Month() })); }
private void AddRecentSeasonData(COMDT_RANK_PASTSEASON_FIGHT_RECORD gameData) { if (this.historySeasonData == null) { this.historySeasonData = new List <COMDT_RANK_PASTSEASON_FIGHT_RECORD>(); } this.historySeasonData.Add(gameData); this.historySeasonData.Sort(new Comparison <COMDT_RANK_PASTSEASON_FIGHT_RECORD>(CLadderSystem.ComparisonHistoryData)); CUIFormScript form = Singleton <CUIManager> .GetInstance().GetForm(CLadderSystem.FORM_LADDER_HISTORY); if (form) { CLadderView.InitLadderHistory(form, this.historySeasonData); } }
public static void InitLadderHistory(CUIFormScript form, List <COMDT_RANK_PASTSEASON_FIGHT_RECORD> dataList) { CUIListScript component = form.transform.Find("ExpandList").GetComponent <CUIListScript>(); if (dataList == null) { component.SetElementAmount(0); } else { component.SetElementAmount(dataList.get_Count()); for (int i = 0; i < dataList.get_Count(); i++) { CUIListElementScript elemenet = component.GetElemenet(i); COMDT_RANK_PASTSEASON_FIGHT_RECORD cOMDT_RANK_PASTSEASON_FIGHT_RECORD = dataList.get_Item(i); Text component2 = elemenet.transform.Find("Title/txtLeagueTime").GetComponent <Text>(); Text component3 = elemenet.transform.Find("Title/txtRankTitle").GetComponent <Text>(); Text component4 = elemenet.transform.Find("Title/txtHeroes").GetComponent <Text>(); Text component5 = elemenet.transform.Find("Expand/txtGameNum").GetComponent <Text>(); Text component6 = elemenet.transform.Find("Expand/txtWinNum").GetComponent <Text>(); Text component7 = elemenet.transform.Find("Expand/txtWinRate").GetComponent <Text>(); Text component8 = elemenet.transform.Find("Expand/txtContiWinNum").GetComponent <Text>(); component2.set_text(CLadderView.GetSeasonNameWithBracket((ulong)cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwSeaStartTime) + " " + CLadderView.GetSeasonText(ref cOMDT_RANK_PASTSEASON_FIGHT_RECORD)); component3.set_text(CLadderView.GetRankName(ref cOMDT_RANK_PASTSEASON_FIGHT_RECORD)); List <COMDT_RANK_COMMON_USED_HERO> list = new List <COMDT_RANK_COMMON_USED_HERO>(); component4.set_text(CLadderView.GetTopUseHeroNames(ref cOMDT_RANK_PASTSEASON_FIGHT_RECORD, out list)); component5.set_text(cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwTotalFightCnt.ToString()); component6.set_text(cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwTotalWinCnt.ToString()); component7.set_text((cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwTotalFightCnt > 0u) ? string.Format("{0}%", (cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwTotalWinCnt * 100f / cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwTotalFightCnt).ToString("0.00")) : "0.00%"); component8.set_text(cOMDT_RANK_PASTSEASON_FIGHT_RECORD.dwMaxContinuousWinCnt.ToString()); int num = (list.get_Count() > 4) ? 4 : list.get_Count(); for (int j = 0; j < num; j++) { Transform transform = elemenet.transform.Find(string.Format("Expand/Hero{0}", j + 1)); transform.gameObject.CustomSetActive(true); COMDT_RANK_COMMON_USED_HERO cOMDT_RANK_COMMON_USED_HERO = list.get_Item(j); CLadderView.SetMostUsedHero(transform, ref cOMDT_RANK_COMMON_USED_HERO, form); } for (int k = num; k < 4; k++) { Transform transform2 = elemenet.transform.Find(string.Format("Expand/Hero{0}", k + 1)); transform2.gameObject.CustomSetActive(false); } } } }
public static void InitLadderHistory(CUIFormScript form, List <COMDT_RANK_PASTSEASON_FIGHT_RECORD> dataList) { CUIListScript component = form.transform.Find("ExpandList").GetComponent <CUIListScript>(); if (dataList == null) { component.SetElementAmount(0); } else { component.SetElementAmount(dataList.Count); CUIListElementScript elemenet = null; for (int i = 0; i < dataList.Count; i++) { elemenet = component.GetElemenet(i); COMDT_RANK_PASTSEASON_FIGHT_RECORD data = dataList[i]; Text text = elemenet.transform.Find("Title/txtLeagueTime").GetComponent <Text>(); Text text2 = elemenet.transform.Find("Title/txtRankTitle").GetComponent <Text>(); Text text3 = elemenet.transform.Find("Title/txtHeroes").GetComponent <Text>(); Text text4 = elemenet.transform.Find("Expand/txtGameNum").GetComponent <Text>(); Text text5 = elemenet.transform.Find("Expand/txtWinNum").GetComponent <Text>(); Text text6 = elemenet.transform.Find("Expand/txtWinRate").GetComponent <Text>(); Text text7 = elemenet.transform.Find("Expand/txtContiWinNum").GetComponent <Text>(); text.text = GetSeasonText(ref data); text2.text = GetRankTitle(ref data); List <COMDT_RANK_COMMON_USED_HERO> heroList = new List <COMDT_RANK_COMMON_USED_HERO>(); text3.text = GetTopUseHeroNames(ref data, out heroList); text4.text = data.dwTotalFightCnt.ToString(); text5.text = data.dwTotalWinCnt.ToString(); text6.text = (data.dwTotalFightCnt <= 0) ? "0.00%" : string.Format("{0}%", ((data.dwTotalWinCnt * 100f) / ((float)data.dwTotalFightCnt)).ToString("0.00")); text7.text = data.dwMaxContinuousWinCnt.ToString(); int num2 = (heroList.Count <= 4) ? heroList.Count : 4; for (int j = 0; j < num2; j++) { Transform item = elemenet.transform.Find(string.Format("Expand/Hero{0}", j + 1)); item.gameObject.CustomSetActive(true); COMDT_RANK_COMMON_USED_HERO comdt_rank_common_used_hero = heroList[j]; SetMostUsedHero(item, ref comdt_rank_common_used_hero, form); } for (int k = num2; k < 4; k++) { elemenet.transform.Find(string.Format("Expand/Hero{0}", k + 1)).gameObject.CustomSetActive(false); } } } }
private static string GetRankName(ref COMDT_RANK_PASTSEASON_FIGHT_RECORD data) { return(CLadderView.GetRankName(data.bGrade, data.dwClassOfRank)); }
private static string GetRankTitle(ref COMDT_RANK_PASTSEASON_FIGHT_RECORD data) { return(GetRankTitle(data.bGrade)); }