// 接收杯赛战队荣誉 public void OnRecvLegendKinGlory(IntPtr ptr, int nLen) { IntPtrVaArgParseHelper helper = new IntPtrVaArgParseHelper(ptr, nLen); m_LegendGloryHead = helper.get <cmd_kin_glory_head>(); m_LegendGloryNodeList.Clear(); for (int i = 0; i < m_LegendGloryHead.nCount; i++) { cmd_kin_glory_node nodeData = helper.get <cmd_kin_glory_node>(); m_LegendGloryNodeList.Add(nodeData); } UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_LEGENDCUP_KINGLORY_RECV, null); }
public void SetKinGloryData() { cmd_kin_glory_head gloryHead = LogicDataCenter.kinDataManager.LegendGloryHead; GloryKinName.text = gloryHead.szKinName; int nTotalNum = gloryHead.nWinNum + gloryHead.nLoseNum; GloryTotalNum.text = nTotalNum.ToString(); GloryWinNum.text = gloryHead.nWinNum.ToString(); int nWinPro = nTotalNum > 0 ? (gloryHead.nWinNum * 100 / nTotalNum) : 0; GloryWinPro.text = String.Format("{0}%{1}", nWinPro, ULocalizationService.Instance.Get("UIView", "Common", "WinRate")); GloryWinSlider.value = (float)gloryHead.nWinNum / nTotalNum; GloryWinSlider.maxValue = 1; GloryGodNum.text = gloryHead.nGodNum.ToString(); Glory5KillNum.text = gloryHead.n5KillNum.ToString(); Glory4KillNum.text = gloryHead.n4KillNum.ToString(); Glory3KillNum.text = gloryHead.n3KillNum.ToString(); GloryDeathNum.text = gloryHead.nDeathNum.ToString(); GloryKillNum.text = gloryHead.nKillNum.ToString(); GloryAssistNum.text = gloryHead.nAssistNum.ToString(); ListKinGloryCup.DataSource.BeginUpdate(); ListKinGloryCup.DataSource.Clear(); ObservableList <UListItemKinGloryCup> dataSource = new ObservableList <UListItemKinGloryCup>(); List <cmd_kin_glory_node> gloryNodeList = LogicDataCenter.kinDataManager.LegendGloryNodeList; for (int i = 0; i < gloryNodeList.Count; i++) { cmd_kin_glory_node nodeData = gloryNodeList[i]; SSchemeLegendCupConfig cupConfig = LegendCupConfig.Instance.GetCupConfig(nodeData.nCupConfigID); if (cupConfig == null) { continue; } // 8强赛保留12名,16强赛保留123名,32强赛保留前8名 if (cupConfig.nMaxKinNum > 0 && cupConfig.nMaxKinNum <= 8 && nodeData.nCupRank > 2) { continue; } else if (cupConfig.nMaxKinNum > 8 && cupConfig.nMaxKinNum <= 16 && nodeData.nCupRank > 3) { continue; } else if (cupConfig.nMaxKinNum > 16 && cupConfig.nMaxKinNum <= 32 && nodeData.nCupRank > 8) { continue; } UListItemKinGloryCup item = new UListItemKinGloryCup(); item.nCupRank = nodeData.nCupRank; item.MatchName = nodeData.szCupName; item.llLegendCupID = nodeData.llLegendCupId; item.nCupConfigID = nodeData.nCupConfigID; item.nEndTime = nodeData.nEndTime; item.ConfigName = cupConfig.sCupConfigName; dataSource.Add(item); } ListKinGloryCup.DataSource = dataSource; ListKinGloryCup.DataSource.EndUpdate(); }