/// <summary> /// 添加玩家 /// </summary> public void AddPlayer(Player player) { // 如果包含了 if (m_listPlayer.Contains(player)) { Console.WriteLine("AddPlayer重复的玩家,新的替换旧的"); m_listPlayer.Remove(player); } if (m_listPlayer.Count >= 2) { Console.WriteLine("AddPlayer达到上限了"); } player.tempData.m_roomId = m_id; player.tempData.bReady = false; player.tempData.bLoaded = false; m_listPlayer.Add(player); Console.WriteLine("加入房间:" + player.id); // 通知当前所在玩家。更新房间的UI显示 FspMsgJoinRoom msg = (FspMsgJoinRoom)NetManager.Inst.GetMessage(eNetMessageID.FspMsgJoinRoom); //msg.m_enterInfo[0] = m_id; // 玩家列表 for (int i = 0; i < m_listPlayer.Count; i++) { msg.m_enterInfo[i] = (int)m_listPlayer[i].id; FspNetRunTime.Inst.Send(m_listPlayer[i].conn, msg); } }
public override void OnRecv() { // 接收匹配类型,开始匹配,如果有异常,直接返回 if (eno == 0) { SC_MatchResult data = GetData <SC_MatchResult>(structBytes); //GC_MatchResult m_matchResult = new GC_MatchResult(); Debug.Log("连接帧服务器:" + data.serverPort); FspNetRunTime.Inst = new FspNetRunTime(); FspNetRunTime.Inst.Init(); FspNetRunTime.Inst.Conn(GlobleConfig.s_gameServerIP, GlobleConfig.s_gameServerPort, () => { Debug.Log("连接帧服务器成功,发送加入房间"); FspMsgJoinRoom joinRoom = (FspMsgJoinRoom)NetManager.Inst.GetMessage(eNetMessageID.FspMsgJoinRoom); //joinRoom.m_roomId = int.Parse(EGame.m_openid); FspNetRunTime.Inst.SendMessage(joinRoom); }); } }
public void OnClickBtn(GameObject go) { if (go == m_ui.m_btnCreateRoom) { int roomId = 0; int.TryParse(m_ui.m_roomId.text, out roomId); FspMsgCreateRoom msg = (FspMsgCreateRoom)NetManager.Inst.GetMessage(eNetMessageID.FspMsgCreateRoom); msg.m_createRoom.roomId = roomId; msg.m_createRoom.userName = int.Parse(EGame.m_openid); FspNetRunTime.Inst.SendMessage(msg); } else if (go == m_ui.m_btnJoinRoom) { int roomId = 0; int.TryParse(m_ui.m_roomId.text, out roomId); FspMsgJoinRoom msg = (FspMsgJoinRoom)NetManager.Inst.GetMessage(eNetMessageID.FspMsgJoinRoom); msg.m_joinRoom.roomId = roomId; msg.m_joinRoom.userName = int.Parse(EGame.m_openid); FspNetRunTime.Inst.SendMessage(msg); } }