大厅功能:修订间差异

来自泡泡
第32行: 第32行:


== 大厅游戏工作流说明 ==
== 大厅游戏工作流说明 ==
=== 核心代码架构 ===
=== client监听的回调 ===


为了方便说明,请打开demo中'''/src/client/index.ts''',里面比较清晰的监听了核心事件
为了方便说明,请打开demo中'''/src/client/index.ts''',里面比较清晰的监听了核心事件


其中有一部分GameManager的代码涉及到状态机的管理,我们先不看状态机的逻辑,后面再说
其中有一部分GameManager的代码涉及到状态机的管理,我们先不看状态机的逻辑,后面再说
=== 进入大厅 ===
 
==== 预加载资源 ====
 
在进入玩法内时,会有一个promise的异步接口供开发者使用去预加载资源,比如表格,比如读取文件配置等等。
 
<span style="color: red;">'''必须在加载完成的回调中resolve'''</span>
 
<pre>
//预加载资源
XPopManager.onHallWait =  new Promise((resolve)=>{
    GameManager.instance.onPreLoadRes(()=>{
        resolve("Resource loaded successfully hall");
    });
});
</pre>
 
==== 进入大厅 ====


在游戏启动后,会直接进入大厅,可以监听'''onHallStart'''
在游戏启动后,会直接进入大厅,可以监听'''onHallStart'''
第47行: 第68行:
</pre>
</pre>


=== 开始匹配 ===
==== 开始匹配 ====
 


=== 匹配成功 ===
==== 匹配成功 ====


=== 进入战斗 ===
==== 进入战斗 ====


=== 战斗返回大厅 ===
==== 战斗返回大厅 ====


=== 离开整个游戏 ===
==== 离开整个游戏 ====

2024年9月4日 (三) 08:25的版本

老项目升级环境配置

项目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监听的回调

为了方便说明,请打开demo中/src/client/index.ts,里面比较清晰的监听了核心事件

其中有一部分GameManager的代码涉及到状态机的管理,我们先不看状态机的逻辑,后面再说

预加载资源

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

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

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

进入大厅

在游戏启动后,会直接进入大厅,可以监听onHallStart

//进入大厅
XPopManager.onHallStart = () => {
    GameManager.instance.onEnterHall();
}

开始匹配

匹配成功

进入战斗

战斗返回大厅

离开整个游戏