跳到主要内容

game_client.rank

简介

组件接口

rank.gs

基于client engine层实现的对接排行榜服务器的功能模块

本模块相关的必要配置:

a.排行榜服务器配置(通过cfg.get_config("rank_server")读取);

b.rank_board.xlsx表

函数原型函数作用
bool setup(map para = )模块初始化
map get_config(string board_id)获取指定id的排行榜配置
array get_rank_list()获取所有排行榜id列表
array get_rank_list_by_type(string player_type)获取指定参与者类别的排行榜id列表
array get_rank_data(string board_id, int from = 1, int to = 1)获取指定排行榜id从from到to区间的数据

RankServerRequestBase

通过http协议访问排行榜服务器的基础class

成员变量

变量名类型初始值须初始化描述
cmdstringnil可选命令名称

成员方法

函数原型函数作用
array request(string host)发起排行榜服务器请求
array parse_result(map http_result)解析排行榜服务器请求结果

RankBoardRequest

继承自 RankServerRequestBase

排行榜操作请求class

成员变量

变量名类型初始值须初始化描述
rankstringnil可选排行榜ID
group_idstringnil可选排行榜组ID

成员方法

函数原型函数作用

RankBoardGetRankData

继承自 RankBoardRequest

排行榜操作 - 获取排行榜区间数据

成员变量

变量名类型初始值须初始化描述
cmdstring"get_rank_data"可选命令名称
fromint-1可选排行榜区间 - 起始位置(从1开始计数)
toint-1可选排行榜区间 - 结束位置(从1开始计数)

成员方法

函数原型函数作用
array request(string host)发起排行榜服务器请求

样例

public void pkg_sample()
{
import pkg.game_client.rank;

map para = {};
if (! rank.setup())
return;

dispatch_co(() {
let bool success, array result = rank.get_rank_data("user_level");
if (! success)
// 获取排行榜数据操作失败
return;

if (! result)
// 有错误发生
return;

printf("result=%O\n", result);
});
}