腾讯游戏联机对战引擎Cocos Creator代码解读

腾讯游戏联机对战引擎Cocos Creator代码解读config.tsGlobalData.tsutil.ts初始化 MGOBE SDK打开新窗口函数以及检查是否导入MGOBE SDKHome.tsMgobeScene.tsGameState.tsGlobal.tsFrameSyncLogic.tsRoom.tsUIFrameSync.tsUIMap.ts

img

config.ts

此文件包含了:

GlobalData.ts

包含gameId和Room两个属性的GlobalData类

util.ts

初始化 MGOBE SDK

打开新窗口函数以及检查是否导入MGOBE SDK

Home.ts

这是主页面场景组件脚本

MgobeScene.ts

EntryRoomButtton是复用了自定义的组件

GameState.ts

游戏状态接口,玩家信息结构体以及游戏状态结构体声明。

我们应该改成我们自己的接口形式

PlayerData

image-20200727115633086

GameState

image-20200727115849213

Global.ts

全局信息

FrameSyncLogic.ts

Room.ts

最主要的游戏场景代码,我们只关注帧同步代码

image-20200727123508343

SDK Room 更新回调

初始化按钮监听

SDK 房间操作

SDK 发送帧消息

帧同步

SDK 广播

UIFrameSync.ts

开始帧同步、停止帧同步、跑(发送帧消息)、停(发送帧消息) 我们应该将其改成上下左右的形式? 回调函数

需要使用 SDK 实现请求

Start

Update

回调函数

UIMap.ts

地图场景

设置了玩家对象池,主要是方便对象存取

地图的创建应该是前端完成的工作,实际上我们只要有像素点大小我们应该也能做出来