public static void MSG_FRIEND_OPT_ADD(NetworkMsg msg) { Friend_resAddNotify res = new Friend_resAddNotify(); using (MemoryStream stream = new MemoryStream(msg.data)) { res = ProtoBuf.Serializer.Deserialize <Friend_resAddNotify>(stream); } if (res.resultID == (int)ResultID.result_id_success && res.accept == true) { if (Network.name == res.Name2) { Network.Friend_list[Network.Friend_cnt].name = Network.Find_Friend.name; Network.Friend_list[Network.Friend_cnt].sex = Network.Find_Friend.sex; Network.Friend_list[Network.Friend_cnt].exp = Network.Find_Friend.exp; Network.Friend_list[Network.Friend_cnt].status = Network.Find_Friend.status; Network.Friend_list[Network.Friend_cnt].wxLogin = Network.Find_Friend.wxLogin; if (Network.Find_Friend.wxLogin == true) { Network.Friend_list[Network.Friend_cnt].wxHead = Network.Find_Friend.wxHead; } Network.Friend_cnt++; } else { //Network.Find_Friend.name = res.Name2; //Network.Find_Friend.sex = 1; //Network.Find_Friend.exp = 0; //Network.Find_Friend.status = 0; Network.Friend_list[Network.Friend_cnt].name = Network.Added_Friend.name; Network.Friend_list[Network.Friend_cnt].sex = Network.Added_Friend.sex; Network.Friend_list[Network.Friend_cnt].exp = Network.Added_Friend.exp; Network.Friend_list[Network.Friend_cnt].status = Network.Added_Friend.status; Network.Friend_list[Network.Friend_cnt].wxLogin = Network.Added_Friend.wxLogin; if (Network.Added_Friend.wxLogin == true) { Network.Friend_list[Network.Friend_cnt].wxHead = Network.Added_Friend.wxHead; } Network.Friend_cnt++; } Network.mySort(); EventDispatcher.DispatchEvent("EventUpdateFriendList", null, null); } else if (res.resultID == (int)ResultID.result_id_success && res.accept == false) //拒绝 { if (Network.name == res.Name2) { EventDispatcher.DispatchEvent("EventShowMessageUIwithRefuse", null, null); } } }
public static void Send_Add_Notify_Friend(string name1, string name2, bool accepted) { Friend_resAddNotify xmsg = new Friend_resAddNotify(); xmsg.Name1 = name1; xmsg.Name2 = name2; xmsg.accept = accepted; byte[] msgBytes; using (MemoryStream stream = new MemoryStream()) { ProtoBuf.Serializer.Serialize(stream, xmsg); msgBytes = stream.ToArray(); } ClientHeader header = new ClientHeader(); header = GetHeader(MessageID.MSG_FRIEND_OPT_ADD, msgBytes.Length); connector.SendMsg(header, msgBytes); }