/// <summary> /// 添加关系 /// </summary> private void OnRelationAdd(PacketBase packet) { c2ss.RelationAdd msg = packet as c2ss.RelationAdd; //判断数据有效性 if ((msg.target_id.type == eRelationAddType.Idx && msg.target_id.char_idx <= 0) || (msg.target_id.type == eRelationAddType.Name && string.IsNullOrEmpty(msg.target_id.char_name))) { return; } Player player = UnitManager.Instance.GetPlayerByClientUID(msg.client_uid); if (player == null) { Log.Debug("OnRelationAdd 未找到unit:" + msg.client_uid.srv_uid + ", " + msg.client_uid.conn_idx); return; } //不能加自己 if ((msg.target_id.type == eRelationAddType.Idx && msg.target_id.char_idx == player.char_idx) || (msg.target_id.type == eRelationAddType.Name && msg.target_id.char_name == player.char_name)) { return; } MemberRelation relation = RelationManager.Instance.GetMember(player.char_idx); if (relation != null) { relation.AddRelationClient(msg.target_id, msg.flag, msg.message); } }
/// <summary> /// 请求添加好友 /// </summary> public static void SendRelationAdd(RelationAddTarget target, eRelationFlag flag, string message) { c2ss.RelationAdd msg = PacketPools.Get(c2ss.msg.RELATION_ADD) as c2ss.RelationAdd; msg.target_id = target; msg.message = message; msg.flag = flag; ClientNetManager.Instance.Send(msg); }