重构Pomelo游戏框架的Unity客户端
来源:互联网 发布:uri malformed 解决js 编辑:程序博客网 时间:2024/06/06 15:40
原Pomelo框架的Unity Demo有bug,无法正常运行。并且API回调在通信线程,使用起来极不方便。
重构版本对官方的API进行了重构,主要功能如下:
1. 所有方法的回调均在主线程(原PomeloClient回调在Socket线程,用起来很麻烦)2. 增加了DisconnectEvent和ErrorEvent两个事件通知,方便捕捉网络断开事件和其它异常
3. 所有报文回调时,会收到一个Message对象而不是之前的仅仅是一个json对象。Message对象包含rawString和jsonObj属性,分别是原始字符串和转换后的Json对象。
4. 修复了EventManager内存泄漏的bug以及其它一些隐藏的代码问题。
原来的PomeloClient改名为Connection。新的Connection对象基本使用方法如下:
/// 创建对象 _connection = new Connection(); /// 监听事件 _connection.on(Connection.DisconnectEvent, msg => { Debug.logger.Log("Network error, reason: " + msg.jsonObj["reason"]); }); _connection.on(Connection.ErrorEvent, msg => { Debug.logger.Log("Error, reason: " + msg.jsonObj["reason"]); }); /// 监听服务器推送的消息 _connection.on("onTick", msg => { _onResponseRet(msg); }); /// 连接并发送报文 _connection.InitClient("localhost", 3014, msgObj => { //The user data is the handshake user params JsonObject user = new JsonObject(); _connection.connect(user, data => { //process handshake call back data ...... _connection.request("gate.gateHandler.login", msg, _onResponseRet); }); });
详细使用方法,请见Demo,下载链接:
http://download.csdn.net/detail/wyyayy/9535712
该Demo简单实现了一个聊天功能,效果如下图:
0 0
- 重构Pomelo游戏框架的Unity客户端
- 游戏服务器框架pomelo
- 安装pomelo游戏框架
- Pomelo网易开源基于Node.js的游戏服务器框架pomelo
- 《Unity 3D游戏客户端基础框架》tolua 框架接入
- (pomelo系列入门教程)深入浅出node.js游戏服务器开发——Pomelo框架的设计动机与架构介绍
- 网易游戏服务器开发框架 Pomelo
- 网易游戏服务器开发框架 Pomelo
- 《Unity 3D游戏客户端基础框架》概述
- 《Unity 3D游戏客户端基础框架》系统设计
- 《Unity 3D游戏客户端基础框架》消息系统
- WeaveSocket框架-Unity太空大战游戏-客户端-3
- WeaveSocket框架-Unity太空大战游戏-客户端-3
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
- Class类文件结构、类加载机制以及字节码执行
- 【线段树】浅谈区间问题3
- Android简单自定义圆形和水平ProgressBar
- 插入有序 的 三个位置
- 新的 cocoaPods 使用的命令 mac os 10.11 以后
- 重构Pomelo游戏框架的Unity客户端
- Android java 中如何优雅的结束线程
- iOS 多线程篇8—GCD的常见用法
- [bzoj2453]【NOI2011模拟7.23】维护队列
- Git中.gitignore的配置语法
- PAT天梯赛-L2-001 紧急救援
- Chp3 流程控制
- 移动web页面调起手机键盘各种功能的方法
- Was7中解决jar包冲突