大厅功能

来自泡泡

老项目升级环境配置

项目demo地址

[git地址](https://git.jumpw.com/popx_demo/demox.git)

分支:hall_test

添加src/hall/index.ts的大厅服务器入口文件

修改打包配置rollup

  • rollup.config.js新增打包大厅index.js的配置
  • rollup.config.js加一下服务类的白名单


修改html启动文件

  • 拷贝覆盖index.html到你的项目中,拷贝hall.html本地大厅文件到同一文件夹下

审核后台勾选大厅

只有勾选了大厅后,登录流程才会走大厅的逻辑,否则是走的老的流程,直接进战斗房间

大厅游戏工作流说明

client用橙色

hall用绿色

server用蓝色


游戏开始时

进大厅前预加载资源

  • client:XPopManager.onHallWait

--在进入大厅前,会有一个promise的异步接口供开发者使用去预加载资源,比如表格,比如读取文件配置等等。

必须在加载完成的回调中resolve

//预加载资源
XPopManager.onHallWait =  new Promise((resolve)=>{
    GameManager.instance.onPreLoadRes(()=>{
        resolve("Resource loaded successfully hall");
    });
});

进入大厅

  • client:XPopManager.onHallStart

--在大厅资源预加载完成后,会直接启动大厅服务器实例

  • hall:XPopManager.onHostHallStart

--src/hall/index.ts 中监听的代码入口

大厅期间操作

开始匹配

匹配内容后面单独讲

匹配成功

后面匹配内容会单独讲, 匹配成功后,分配到了某个房间的实例(host)

进入战斗

  • server:XPopManager.onHostStart

--src/server/index.ts 中监听的代码入口

战斗期间操作

战斗返回大厅

  • client:XPopManager.onGameLeave

--会返回到大厅,大厅的数据还在快照中

离开整个游戏

  • client:XPopManager.onExit