コード例 #1
0
    /// <summary>
    /// 处理服务器返回的好友列表的消息
    /// </summary>
    /// <param name="msg"></param>
    private void FriendsListHandle(object msg)
    {
        //清除原来的数据
        GameObject[] oldFriends = GameObject.FindGameObjectsWithTag("FRIENDINVITE");
        foreach (GameObject oldFriend in oldFriends)
        {
            Destroy(oldFriend);
        }
        //加载预制体
        GameObject _friend = Resources.Load("FriendInvite") as GameObject;
        var        friends = msg as mmopb.friendsList_ack;
        Dictionary <Int32, mmopb.p_FriendsInfo> friendList = friends.friendList;

        foreach (KeyValuePair <Int32, mmopb.p_FriendsInfo> friendInfo in friendList)
        {
            if (friendInfo.Value.isOnline == 2)
            {
                // 对象初始化
                GameObject         friend             = Instantiate(_friend, roomView.friendsTransForm);
                FriendInviteDetail friendInviteDetail = roomView.GetComponentInChildren <FriendInviteDetail>();
                friendInviteDetail.friendName.text = friendInfo.Value.nickName;
                friendInviteDetail.friendId        = friendInfo.Key;
            }
        }
    }
コード例 #2
0
    /// <summary>
    /// 点击邀请好友列表界面的邀请按钮(对勾)
    /// </summary>
    /// <param name="param"></param>
    private void ClickInviteTargetFriend(object param)
    {
        button.clip = sendMsg;
        button.Play();
        var                inviteFriendMsg    = new mmopb.inviteFriend_req();
        GameObject         friend             = (GameObject)param;
        FriendInviteDetail friendInviteDetail = friend.GetComponent <FriendInviteDetail>();

        inviteFriendMsg.roleId = friendInviteDetail.friendId;
        ClientNet.Instance.Send(ProtoHelper.EncodeWithName(inviteFriendMsg));
    }