game_client.activity
简介
基于client engine的活动功能模块,和服务器的pkg.game_server.activity对应
几点说明:
-
模块通过setup方法初始化;
-
活动数据由活动对象持有;活动对象通过activity.create_activity方法创建;默认情况下,活动对象是ActivityOb的实例;
其中,可以通过在activity.xlsx里的client_ob_file指定活动对象的原型;
- 游戏层可以通过component AcitivtyOb来自定义活动对象原型,并配置在activity.xlsx的client_ob_file值(全路径,比如/game/objects/ActivityTask.gs)里起效;
组件接口
activity.gs
| 函数原型 | 函数作用 |
|---|---|
| bool setup(map para = ) | 本模块初始化 |
| map get_activity_info(mixed name) | 获取指定名称的活动配置信息 |
| object create_activity(mixed name, map dbase) | 根据指定的名称和活动数据创建活动对象 |
| void destroy(mixed ob_or_name) | 销毁活动对象(一般使用ob.drop销毁活动对象) |
| object get_activity(mixed name) | 根据名称查找活动对象 |
| void iterate_activity(function func) | 遍历所有活动对象实例 |
| void dump_all_activity() | 调试方法:简要输出活动对象实例的名称等信息 |
ActivityOb.gs
默认的活动对象基础原型;一般情况下,游戏层可以component本对象以扩展出功能更丰富的游戏活动原型对象
| 函数原型 | 函数作用 |
|---|---|
| string desc() | 获取描述信息 |
| void FCloseGuard.drop() | 销毁活动对象 |
| bool is_activity() | 判断是否为活动对象 |
| void set_name(mixed name) | 设置活动名称 |
| mixed get_name() | 获取活动名称 |
| mixed get_cfg(string path = nil) | 获取配置信息 |
| string get_state() | 获取当前活动状态 |
| int get_start_time() | 获取开始时间 |
| int get_stage() | 获取当前活动阶段 |
| int get_batch() | 获取当前活动批次 |
样例
import pkg.game_client.activity;
if (! activity.setup())
error("pkg.game_client.activity初始化失败");
activity.dump_all_activity();