コード例 #1
0
        private void OnFriendAddResponse(NetConnection <NetSession> sender, FriendAddResponse response)
        {
            Character character = sender.Session.Character;

            Log.InfoFormat("OnFriendAddResponse:: charactor:{0} Result:{1} fromId:{2} ToID:{3}", character.Id, response.Result, response.Request.FromId, response.Request.ToId);
            sender.Session.Response.friendAddRes = response;
            if (response.Result == Result.Success)
            {//接受了好友请求
                var requester = SessionManager.Instance.GetSession(response.Request.FromId);
                if (requester == null)
                {
                    sender.Session.Response.friendAddRes.Result   = Result.Failed;
                    sender.Session.Response.friendAddRes.Errormsg = "请求者已下线";
                }
                else
                {
                    //互相加好友
                    character.FriendManager.AddFriend(requester.Session.Character);
                    requester.Session.Character.FriendManager.AddFriend(character);
                    DBService.Instance.Save();
                    requester.Session.Response.friendAddRes          = response;
                    requester.Session.Response.friendAddRes.Result   = Result.Success;
                    requester.Session.Response.friendAddRes.Errormsg = "添加好友成功";
                    requester.SendResponse();
                }
            }
            sender.SendResponse();
        }
コード例 #2
0
 /// <summary>
 /// 收到添加好友响应
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="message"></param>
 private void OnFriendAddResponse(object sender, FriendAddResponse message)
 {
     if (message.Result == Result.Success)
     {
         MessageBox.Show(message.Request.ToName + "接受了您的请求", "添加好友成功");
     }
     else
     {
         MessageBox.Show(message.Errormsg, "添加好友失败");
     }
 }
コード例 #3
0
ファイル: FriendService.cs プロジェクト: Lenzan/newmmo
        /// <summary>
        /// 收到加好友响应 OnFriendAddRequest之后
        /// </summary>
        /// <param name="sender"> 上一步被添加的人</param>
        /// <param name="response">上一步主动添加好友的人</param>
        void OnFriendAddResponse(NetConnection <NetSession> sender, FriendAddResponse response)
        {
            Character character = sender.Session.Character;

            Log.InfoFormat("OnFriendAddResponse: : character:{0} Result:{1} FromId:{2} ToId:{3}", character.Id, response.Result, response.Request.FromId, response.Request.ToId);
            sender.Session.Response.friendAddRes = response;

            if (response.Result == Result.Success)
            {
                //接受了好友请求
                var requester = SessionManager.Instance.GetSession(response.Request.FromId);
                if (requester == null)
                {
                    sender.Session.Response.friendAddRes.Result   = Result.Failed;
                    sender.Session.Response.friendAddRes.Errormsg = "请求者已下线";
                }
                else
                {
                    //互加好友
                    character.FriendManager.AddFriend(requester.Session.Character);
                    requester.Session.Character.FriendManager.AddFriend(character);
                    DBService.Instance.Save();
                    requester.Session.Response.friendAddRes = response;
                    requester.Session.Response.friendAddRes.Request.ToName   = character.Data.Name;
                    requester.Session.Response.friendAddRes.Request.FromName = requester.Session.Character.Data.Name;
                    requester.Session.Response.friendAddRes.Result           = Result.Success;
                    requester.Session.Response.friendAddRes.Errormsg         = "添加好友成功";
                    requester.SendResponse();
                    sender.SendResponse();
                }
            }
            else
            {
                var requester = SessionManager.Instance.GetSession(response.Request.FromId);


                //互加好友

                requester.Session.Response.friendAddRes          = response;
                requester.Session.Response.friendAddRes.Result   = Result.Failed;
                requester.Session.Response.friendAddRes.Errormsg = string.Format("【{0}】拒绝了你的好友请求", character.Data.Name);
                requester.SendResponse();
                sender.Session.Response.friendAddRes.Result   = Result.Failed;
                sender.Session.Response.friendAddRes.Errormsg = string.Format("你拒绝了【{0}】的好友请求", requester.Session.Character.Data.Name);
                sender.SendResponse();
            }

            //sender.Session.Response.friendAddRes.Result = Result.Success;
            //sender.Session.Response.friendAddRes.Errormsg = response.Request.FromName+ "成为您的好友";
        }
コード例 #4
0
 /// <summary>
 /// 收到添加好友响应
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="message"></param>
 private void OnFriendAddResponse(object sender, FriendAddResponse message)
 {
     Debug.Log(User.Instance.CurrentCharacterInfo.Name);
     if (message.Result == Result.Success)
     {
         if (message.Request.ToId != User.Instance.CurrentCharacterInfo.Id)
         {
             MessageBox.Show(message.Request.ToName + "接受了你的请求", "添加好友成功");
         }
         else
         {
             MessageBox.Show(String.Format("你接受了[{0}]的好友请求", message.Request.FromName), "添加好友成功");
         }
     }
     else
     {
         MessageBox.Show(message.Errormsg, "添加好友失败");
     }
 }
コード例 #5
0
        /// <summary>
        /// 收到好友响应消息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="response"></param>
        private void OnFriendAddResponse(NetConnection <NetSession> sender, FriendAddResponse response)
        {
            Character character = sender.Session.Character;

            Log.InfoFormat("OnFriendAddResponse::Character:{0} Result:{1} FromId:{2} ToId:{3}", character.Id, response.Result, response.Request.FromId, response.Request.ToId);
            sender.Session.Response.friendAddRes = response;
            var requester = SessionManager.Instance.GetSession(response.Request.FromId);

            if (response.Result == Result.Success)
            {                          //好友接受了请求
                if (requester == null) //没找到session
                {
                    sender.Session.Response.friendAddRes.Result   = Result.Failed;
                    sender.Session.Response.friendAddRes.Errormsg = "请求者已下线";
                }
                else//有session
                {
                    character.FriendManager.AddFriend(requester.Session.Character);
                    requester.Session.Character.FriendManager.AddFriend(character);//互相加好友进好友列表
                    DBService.Instance.Save();
                    sender.SendResponse();
                    requester.Session.Response.friendAddRes          = response;
                    requester.Session.Response.friendAddRes.Result   = Result.Success;
                    requester.Session.Response.friendAddRes.Errormsg = "添加好友成功";
                    requester.SendResponse();
                }
            }
            else
            {//好友拒绝了请求
                if (requester != null)
                {
                    requester.Session.Response.friendAddRes          = response;
                    requester.Session.Response.friendAddRes.Result   = Result.Failed;
                    requester.Session.Response.friendAddRes.Errormsg = "对方拒绝了你的请求";
                    requester.SendResponse();
                }
            }
        }
コード例 #6
0
        /// <inheritdoc/>
        public void HandlePacket(Player player, Span <byte> packet)
        {
            FriendAddResponse message = packet;

            this.responseAction.ProceedResponse(player, message.FriendRequesterName, message.Accepted);
        }
コード例 #7
0
 private void OnFriendAddResponse(object sender, FriendAddResponse message)
 {
     FriendManager.Instance.OnFriendAdd(message);
 }
コード例 #8
0
 internal void OnFriendAdd(FriendAddResponse message)
 {
     OnFriendAddResponse.Invoke(message.Errormsg);
 }