KBEngine Cocos2d JS 客户端启动过程

目录 kbengine_cocos2d_js_demo/cocos2d-js-client 就是一个典型的 Cocos2d-JS 项目,项目结构可以看 Cocos 官方说明文档《Cocos2d-JS项目结构介绍,我们现在只需要知道以下事实即可。

  • 相关 js 文件通过 project.json 引入
  • main.js 是整个项目的逻辑入口

main.js

KBEngine Cocos2d JS 客户端启动过程_第1张图片

如上图,主要的逻辑有两块

  • 57~58行,即设置服务器的 ip、port
  • 67行,是 Cocos 的启动 Scene

 project.json 里面可以看到,StartScene 所在的具体路径应该在 src/cc_scripts/StartScene.js

StartScene.js

StartScene 的展现逻辑我们不去管,直接看「登录」按钮点击下去后的处理。


这里通过 fire 一个 「login」事件,把 username 和 password 发送到 plugins/kbengine_js_plugins/kbengine.js 去处理。

kbengine.js

可以看到,2377 行注册了一个事件,即 kbengine.js 里的 login 函数,会响应 「login」 事件。 

小结

由上可知,客户端在启动的时候,除了界面展示,最重要的就是在 installEvents 函数里,通过 KBEngine.Event.register 注册各个事件响应函数,即 kbengine.js 这个插件与客户端逻辑代码的交互是通过事件来完成的。

具体的 register/fire 代码这里不再贴出,有兴趣的可以自己去看。基本逻辑如下

  • register 的时候,在一个 list 里存放 <事件名,回调函数>的键值对。
  • fire 的时候,遍历找到这个事件名对应的回调函数,填入参数来 apply 。


你可能感兴趣的:(cocos2d,kbengine)