public void OnRecvKinBaseData(IntPtr ptr, int nLen) { IntPtrVaArgParseHelper helper = new IntPtrVaArgParseHelper(ptr, nLen); m_kinBaseData = helper.get <cmd_kin_basedata>(); UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_KIN_RECEV_KINBASEDATA, null); UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_KIN_UPDATEAPPLY_TIPS, null); }
// 接收杯赛战队信息 public void OnRecvLegendKinInfo(IntPtr ptr, int nLen) { IntPtrVaArgParseHelper helper = new IntPtrVaArgParseHelper(ptr, nLen); m_LegendkinBaseData = helper.get <cmd_kin_basedata>(); m_LegendKinMemberList.Clear(); for (int i = 0; i < m_LegendkinBaseData.nMemberCount; ++i) { cmd_kin_membernode cmdNodeData = helper.get <cmd_kin_membernode>(); // 添加到数据管理中心 m_LegendKinMemberList.Add(cmdNodeData); } UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_LEGENDCUP_KININFO_RECV, null); }
public void OnRecvKinMemberList(IntPtr ptr, int nLen) { IntPtrVaArgParseHelper helper = new IntPtrVaArgParseHelper(ptr, nLen); m_kinBaseData = helper.get <GameLogic.cmd_kin_basedata>(); m_KinMemberList.Clear(); for (int i = 0; i < m_kinBaseData.nMemberCount; ++i) { GameLogic.cmd_kin_membernode cmdNodeData = helper.get <GameLogic.cmd_kin_membernode>(); // 添加到数据管理中心 m_KinMemberList.Add(cmdNodeData); } UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_KIN_RECEV_MEMBERLIST, null); }
public void SetKinMemberData() { ListKinMember.DataSource.Clear(); ListKinMember.OnSelect.RemoveListener(OnSelectKinMember); ListKinMember.onRightClick.RemoveListener(OnSelectKinMember); cmd_kin_basedata cmdHead = LogicDataCenter.kinDataManager.LegendKinBaseData; List <cmd_kin_membernode> listData = LogicDataCenter.kinDataManager.LegendKinMemberList; UIWidgets.ObservableList <UListItemKinMember> dataSource = new UIWidgets.ObservableList <UListItemKinMember>(); ListKinMember.DataSource.Clear(); for (int i = 0; i < cmdHead.nMemberCount; ++i) { GameLogic.cmd_kin_membernode cmdNodeData = listData[i]; UListItemKinMember item = new UListItemKinMember(); Toggle tOffLineTog = OffLineTog.GetComponent <Toggle>(); if (!tOffLineTog.isOn && cmdNodeData.bIsOnline == 0) { // 隐藏不在线玩家 continue; } item.IdentityID = cmdNodeData.nIdentity; item.PlayerID = cmdNodeData.dwPDBID; item.GradIcon += cmdNodeData.szGradeName; item.PersonIcon = cmdNodeData.nFaceID; item.PersonName += cmdNodeData.szName; item.Power += cmdNodeData.dwBattleVal; item.PowerRank += cmdNodeData.dwBVOrder; item.GameState = cmdNodeData.byGameState; item.Level += cmdNodeData.nLevel; item.isOnline = cmdNodeData.bIsOnline; item.nSex = cmdNodeData.nSex; item.nLastOrder = cmdNodeData.dwLastOrder; item.nBVOrder = cmdNodeData.dwBVOrder; PopupAction = new UPopupAction(); if (EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID) != item.PlayerID) { PopupAction.Add(UPopupItemDataGetPlayerDetail.GetDescString(), new UPopupItemDataGetPlayerDetail(item.PlayerID)); PopupAction.Add(UPopupItemDataTeamInvite.GetDescString(), new UPopupItemDataTeamInvite(item.PlayerID)); PopupAction.Add(UPopupItemDataTeamRequest.GetDescString(), new UPopupItemDataTeamRequest(item.PlayerID)); } item.PopupAction = PopupAction; dataSource.Add(item); } // 排序 IEnumerable <UListItemKinMember> ListQuery = from item in dataSource orderby item.isOnline descending, item.IdentityID descending, item.Power descending select item; UIWidgets.ObservableList <UListItemKinMember> tDataSource = new UIWidgets.ObservableList <UListItemKinMember>(); foreach (UListItemKinMember Item in ListQuery) { tDataSource.Add(Item); } ListKinMember.DataSource = tDataSource; ListKinMember.OnSelect.AddListener(OnSelectKinMember); ListKinMember.onRightClick.AddListener(OnSelectKinMember); // 设置战队基本数据 KinName.text = cmdHead.szKinName; KinShaikhName.text = cmdHead.szShaikhName; KinLevel.text = cmdHead.nKinLevel.ToString(); TotalMemberInfo.text = cmdHead.nOnlineCount + " / " + cmdHead.nMemberCount + "( " + ULocalizationService.Instance.Get("UIView", "KinMember", "MaxCountDes") + cmdHead.nKinMaxMember + ")"; TotalFight.text = cmdHead.nTotalFight.ToString(); TotalOrder.text = cmdHead.nFightOrder.ToString(); KinLabel.text = cmdHead.szKinLabel; MatchResult.text = cmdHead.nMatchWinNum + " / " + cmdHead.nMatchTotalNum; GoldAward.SetData(cmdHead.nGoldNum); SilverAward.SetData(cmdHead.nSilverNum); KinNoticeDes.text = cmdHead.szNotice; }