Пример #1
0
        /// <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);
            }
        }
Пример #2
0
    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);
            });
        }
    }
Пример #3
0
        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);
            }
        }