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(); }
/// <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, "添加好友失败"); } }
/// <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+ "成为您的好友"; }
/// <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, "添加好友失败"); } }
/// <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(); } } }
/// <inheritdoc/> public void HandlePacket(Player player, Span <byte> packet) { FriendAddResponse message = packet; this.responseAction.ProceedResponse(player, message.FriendRequesterName, message.Accepted); }
private void OnFriendAddResponse(object sender, FriendAddResponse message) { FriendManager.Instance.OnFriendAdd(message); }
internal void OnFriendAdd(FriendAddResponse message) { OnFriendAddResponse.Invoke(message.Errormsg); }