game_client.game_social
简介
基于client engine实现的客户端接入社交服的功能模块
组件接口
FUserSocial.gs
为User对象提供的社交服组件
函数原型 | 函数作用 |
---|---|
void refresh_social_token() | 向游戏服务器更新社交服登录token |
game_social.gs
以普通用户身份和社交服务器交互的功能模块
几点说明:
-
基于client engine,和pkg.game_server.game_social适配使用;
-
客户端登录社交服的过程大致如下:
-
客户端登录游戏以后,接收登录社交服的token (游戏服务器消息social_account)
-
客户端持token登录社交服(向社交服连接并发送cmd_auth_account)
-
登录社交服成功后可以进行交互操作
-
-
游戏角色使用角色rid作为社交服账号,由游戏服务器的社交服管理员连接创建;成功创建了社交服账号的游戏角色,其social_account字段值为1;
-
客户端可以通过向游戏服务器发送refresh_social_token指令重新获取登录社交服的token;
-
"game_cmds/"处理来自游戏服务器的消息
-
“social_cmds/"处理来自社交服的消息
函数原型 | 函数作用 |
---|---|
bool setup(map para = ) | 模块功能初始化 |
void set_notify_callback(function callback) | 设置社交服通知消息的处理函数 |
void invoke_notify_callback(map args) | 执行社交服通知消息的处理函数 |
mixed eval(string script_name, ...) | 执行脚本函数 |
样例
public void pkg_sample()
{
import pkg.game_client.game_social;
map para = {
"social_cmd_path : __DIR__ "social_cmds/",
"script_path" : __DIR__ "social_scripts/",
};
if (! game_social.setup(para))
return;
game_social.set_notify_callback((string notify_type, map notify_data) { });
}