public void JoinRoom(byte roomid) { TableError pError = PlayerRole.Instance.TableManager.IsCanJoinTable(roomid, false); if (pError != TableError.TE_Sucess) { //进入房间失败了 我们进行处理 tagJoinTableEvent pEvent = new tagJoinTableEvent(roomid, pError); MsgEventHandle.HandleMsg(pEvent);//无法进入房间的事件 return; } GlobalEffectMgr.Instance.ShowLoadingMessage(); //发送进入房间的命令到服务端去 if (SceneMain.IsUserOldServer) { NetCmdJoinRoom ncr = new NetCmdJoinRoom(); ncr.SetCmdType(NetCmdType.CMD_JOIN_ROOM); ncr.RoomType = roomid; NetServices.Instance.Send <NetCmdJoinRoom>(ncr); } else { CL_Cmd_JoinTable ncb = new CL_Cmd_JoinTable(); ncb.SetCmdType(NetCmdType.CMD_CL_JoinTable); ncb.bTableType = roomid; NetServices.Instance.Send <CL_Cmd_JoinTable>(ncb); } State = HallState.HALL_JOIN_ROOM; }
IEnumerator LoadRes() { yield return(StartCoroutine(ServerSetting.OnNewInit(null))); UIManager.Instance.ShowView <GameView>(); yield return(new WaitForEndOfFrame()); NetManager.Instance.CanProcessCmd = true; yield return(new WaitForEndOfFrame()); CL_Cmd_JoinTable ncb = new CL_Cmd_JoinTable(); ncb.SetCmdType(NetCmdType.CMD_CL_JoinTable); ncb.bTableType = ModelManager.Instance.Get <RoomModel>().GetCurRoomId(); NetManager.Instance.Send <CL_Cmd_JoinTable>(ncb); yield return(StartCoroutine(sceneModel.MainInitProcedure())); yield return(StartCoroutine(skillModel.MainInitProcedure())); FishManager.Instance.Init(); yield return(new WaitForEndOfFrame()); BulletManager.Instance.Init(); yield return(new WaitForEndOfFrame()); SkillManager.Instance.Init(); yield return(new WaitForEndOfFrame()); PlayerManager.Instance.Init(); yield return(new WaitForEndOfFrame()); sceneModel.ResetScene(true); yield return(new WaitForEndOfFrame()); print("资源加载完成"); ProgressBar.fillAmount = 1; }