private void On_FriendSys_Friend_List(CSPkg msg) { SCPKG_CMD_LIST_FRIEND stFriendListRsp = msg.stPkgData.get_stFriendListRsp(); int i = 0; while ((long)i < (long)((ulong)stFriendListRsp.dwFriendNum)) { CSDT_FRIEND_INFO cSDT_FRIEND_INFO = stFriendListRsp.astFrindList[i]; if (cSDT_FRIEND_INFO != null) { if (cSDT_FRIEND_INFO.bVideoState != 0) { if (cSDT_FRIEND_INFO.stGameInfo.get_stDetail() == null) { DebugHelper.Assert(false, "CSDT_FRIEND_INFO [bMultGameSubState == COM_ACNT_MULTIGAME_GAMING] and [stGameInfo.stDetail == null] , this is sever' guo!"); } else { bool flag = false; int num = 0; while (i < this.OBFriendList.get_Count()) { if (stFriendListRsp.astFrindList[i].stFriendInfo.stUin.ullUid == this.OBFriendList.get_Item(num).uin.ullUid) { COBSystem.stOBFriend stOBFriend = this.OBFriendList.get_Item(num); stOBFriend.gameDetail = stFriendListRsp.astFrindList[i].stGameInfo.get_stDetail(); this.OBFriendList.set_Item(num, stOBFriend); flag = true; break; } num++; } if (!flag) { COBSystem.stOBFriend stOBFriend = default(COBSystem.stOBFriend); stOBFriend.uin = stFriendListRsp.astFrindList[i].stFriendInfo.stUin; stOBFriend.friendName = Utility.UTF8Convert(stFriendListRsp.astFrindList[i].stFriendInfo.szUserName); stOBFriend.headUrl = Utility.UTF8Convert(stFriendListRsp.astFrindList[i].stFriendInfo.szHeadUrl); stOBFriend.gameDetail = stFriendListRsp.astFrindList[i].stGameInfo.get_stDetail(); this.OBFriendList.Add(stOBFriend); } } } } i++; } this.UpdateView(); }
private void On_Friend_SNS_STATE_NTF(CSPkg msg) { SCPKG_NTF_SNS_FRIEND stNtfSnsFriend = msg.stPkgData.get_stNtfSnsFriend(); int num = 0; while ((long)num < (long)((ulong)stNtfSnsFriend.dwSnsFriendNum)) { CSDT_SNS_FRIEND_INFO cSDT_SNS_FRIEND_INFO = stNtfSnsFriend.astSnsFriendList[num]; if (cSDT_SNS_FRIEND_INFO != null) { if (cSDT_SNS_FRIEND_INFO.bVideoState != 0) { if (cSDT_SNS_FRIEND_INFO.stGameInfo.get_stDetail() == null) { DebugHelper.Assert(false, "SCPKG_NTF_SNS_FRIEND [bMultGameSubState == COM_ACNT_MULTIGAME_GAMING] and [stGameInfo.stDetail == null] , this is sever' guo!"); } else { bool flag = false; for (int i = 0; i < this.OBFriendList.get_Count(); i++) { if (stNtfSnsFriend.astSnsFriendList[num].stSnsFrindInfo.stUin.ullUid == this.OBFriendList.get_Item(i).uin.ullUid) { COBSystem.stOBFriend stOBFriend = this.OBFriendList.get_Item(i); stOBFriend.gameDetail = stNtfSnsFriend.astSnsFriendList[num].stGameInfo.get_stDetail(); this.OBFriendList.set_Item(i, stOBFriend); flag = true; break; } } if (!flag) { COBSystem.stOBFriend stOBFriend = default(COBSystem.stOBFriend); stOBFriend.uin = stNtfSnsFriend.astSnsFriendList[num].stSnsFrindInfo.stUin; stOBFriend.friendName = Utility.UTF8Convert(stNtfSnsFriend.astSnsFriendList[num].stSnsFrindInfo.szUserName); stOBFriend.headUrl = Utility.UTF8Convert(stNtfSnsFriend.astSnsFriendList[num].stSnsFrindInfo.szHeadUrl); stOBFriend.gameDetail = stNtfSnsFriend.astSnsFriendList[num].stGameInfo.get_stDetail(); this.OBFriendList.Add(stOBFriend); } } } } num++; } this.UpdateView(); }
private void UpdateElement(GameObject element, COBSystem.stOBFriend OBFriend) { if (CFriendModel.RemarkNames != null && CFriendModel.RemarkNames.ContainsKey(OBFriend.uin.ullUid)) { string empty = string.Empty; if (CFriendModel.RemarkNames.TryGetValue(OBFriend.uin.ullUid, ref empty)) { if (!string.IsNullOrEmpty(empty)) { this.UpdateElement(element, empty, Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(OBFriend.headUrl), OBFriend.gameDetail.bGrade, OBFriend.gameDetail.dwClass, OBFriend.gameDetail.dwHeroID, COBSystem.enOBTab.Friend, (int)OBFriend.gameDetail.dwObserveNum, this.curStatus, 0L, 0, 0u, string.Empty); } else { this.UpdateElement(element, OBFriend.friendName, Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(OBFriend.headUrl), OBFriend.gameDetail.bGrade, OBFriend.gameDetail.dwClass, OBFriend.gameDetail.dwHeroID, COBSystem.enOBTab.Friend, (int)OBFriend.gameDetail.dwObserveNum, this.curStatus, 0L, 0, 0u, string.Empty); } } } else { this.UpdateElement(element, OBFriend.friendName, Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(OBFriend.headUrl), OBFriend.gameDetail.bGrade, OBFriend.gameDetail.dwClass, OBFriend.gameDetail.dwHeroID, COBSystem.enOBTab.Friend, (int)OBFriend.gameDetail.dwObserveNum, this.curStatus, 0L, 0, 0u, string.Empty); } }