kbengine定义一个实体教程
来源:互联网 发布:像素数据技术 编辑:程序博客网 时间:2024/05/01 05:34
定义实体
什么时候需要定义实体:
需要进行数据存储。能够方便的远程访问。需要引擎管理和监控, 例如: AOI、Trap、等等。当灾难发生后服务端可以自动进行灾难的恢复。
什么时候需要定义实体的属性:
需要进行数据存储。实体被迁移后数据仍然有效(仅cellapp会迁移实体,比如跳转场景)。当灾难发生后服务端可以自动进行灾难的恢复。
什么时候需要定义实体的方法:
能够方便的远程访问。
您需要执行以下步骤:
注册实体
目录地址 :
demo/scripts/entities.xml
例子:
<root> <Account/> <Avatar/> <Spaces/> <Space/> <Monster/> <NPC/> <Gate/> </root>
在
demo/scripts/entity_defs
目录下创建一个定义文件例子: Account.def
你可能需要定义一些属性和方法
在
demo/scripts/
目录下有三个子目录(base、cell、client),你可以根据需要添加Account.py。不是每个实体都存在(client, base, cell)这三个部分, 你可以根据需要做出一些选择。
定义文件的格式
<root><Properties>// 属性名称<accountName>// 属性类型<Type>UNICODE</Type>// (可选)// 属性的自定义协议ID,如果客户端不使用kbe配套的SDK来开发,客户端需要开发跟kbe对接的协议,// 开发者可以定义属性的ID便于识别,c++协议层使用一个uint16来描述,如果不定义ID则引擎会使用// 自身规则所生成的协议ID, 这个ID必须所有def文件中唯一<Utype>1000</Utype>// 属性的作用域 (参考下方:属性作用域章节)<Flags>BASE</Flags>// (可选)// 是否存储到数据库 <Persistent>true</Persistent>// (可选)// 存储到数据库中的最大长度 <DatabaseLength> 100</DatabaseLength>// (可选, 不清楚最好不要设置)// 默认值 <Default>kbengine</Default>// (可选)// 数据库索引, 支持UNIQUE与INDEX<Index>UNIQUE</Index></accountName>......</Properties><ClientMethods>// 客户端暴露的远程方法名称<onReqAvatarList>// 远程方法的参数<Arg>AVATAR_INFOS_LIST</Arg><Utype>1001</Utype></onReqAvatarList>......</ClientMethods><BaseMethods>// Baseapp暴露的远程方法名称<reqAvatarList>// cell暴露方法必须存在这个标记<Exposed/> <Utype>1002</Utype></reqAvatarList>......</BaseMethods><CellMethods>// Cellapp暴露的远程方法名称<hello><Utype>1003</Utype></hello></CellMethods></root>
例子: 在客户端中调用base方法获得角色列表(Account.py):
self.base.reqAvatarList()
属性作用域
[类型][client][base][cell]BASE-*-BASE_AND_CLIENT**-CELL_PRIVATE--*(cell)CELL_PUBLIC--*(cells)CELL_PUBLIC_AND_OWN*(client)-*(cells)ALL_CLIENTS*(clients)-*(cells)OWN_CLIENT*(client)-*(cell)OTHER_CLIENTS*(other clients)-*(cells)
0 0
- kbengine定义一个实体教程
- kbengine引擎编译教程
- kbengine系列教程一
- KBEngine
- KBEngine
- hql里引用实体类里的实体类时要定义一个别名
- kbengine引擎-忙里偷闲,kbe服务器架设及demo运行教程
- kbengine引擎-忙里偷闲,kbe服务器架设及demo运行教程
- 实体关系的定义
- doom3 entitydef实体定义
- HTML 元素定义,属性定义,实体定义
- 如何将自己的实体类封装到一个list中,定义自己一系列的方法
- Hibernate实体类定义总结
- dtd入门、定义元素、实体
- Odoo开发教程(三):如何定义一个ORM对象
- 什么是KBEngine
- kbengine 安装
- kbengine怎么样?
- 电子商务网站购物车数据的储存方式
- kbengine GUIConsole 可视化控制台
- 图像 快速傅里叶变换 及 频率域滤波 java 实现
- UML类图学习笔记(一)
- lucene 4.x 使用N-Gram模型分词器实例。
- kbengine定义一个实体教程
- TI AM335X几款开发板推荐
- mysql 游标
- kbengine类型别名
- 接口隔离原则(Interface Segregation Principle,ISP)
- while(1);的作用
- 初识redis
- 编译MP4v2
- kbengine通讯协议