Lua接口/活动相关
来自天龙知识库
启动与关闭活动、读写活动参数、管理排行榜与双人答题流程。活动编号(uActivityId)来自活动表。
活动控制
| 接口 | 参数与返回 |
|---|---|
| StartOneActivity | sceneId, uActivityId, uInterval, iNoticeType → 返回值;失败 -1。
|
| StopOneActivity | sceneId, uActivityId → 返回值;失败 -1。
|
| CheckActiviyValidity | sceneId, uActivityId → 是否仍在有效时间;失败 -1。
|
| GetActivityState | sceneId, uActivityId → 活动状态 0-4,不存在返回 -1。
|
StartOneActivity 需要 4 个参数(含周期计时器间隔、公告类型)。GetActivityState 返回 0 到 4 的状态编号,-1 表示活动不存在——**0 是有效状态**,不能用真值判断。
活动参数
| 接口 | 参数与返回 |
|---|---|
| SetActivityParam | sceneId, uActivityId, uIndex, iValue → 返回值;失败 -1。
|
| GetActivityParam | sceneId, uActivityId, uIndex → 参数值;失败 -1。
|
活动参数槽按 uIndex 读写,用于在活动实例间传递脚本状态。
排行榜
| 接口 | 参数与返回 |
|---|---|
| HitParadeRegisterTab | sceneId → 排行榜编号;失败 -1。
|
| HitParadeReleaseTab | sceneId, tabId → 返回值;失败 -1。
|
| HitParadePlayerJoin | sceneId, tabId, guid, key → 返回值;失败 -1。
|
| HitParadeSort | sceneId, tabId → 返回值;失败 -1。
|
| HitParadeGetTabInfo | sceneId, tabId → 排行榜中角色数量;失败 -1。
|
| HitParadeGetPlyInfo | sceneId, tabId, plyId → 角色标识、排序键(2 个值);未找到单个 -1。
|
| HitParadeSetTabParam | sceneId, tabId, paramId, paramValue → 返回值;失败 -1。
|
| HitParadeGetTabParam | sceneId, tabId, paramId → 参数值;失败 -1。
|
排行榜用法:HitParadeRegisterTab 建榜 → HitParadePlayerJoin 加入记录 → HitParadeSort 排序 → HitParadeGetTabInfo / HitParadeGetPlyInfo 读取。HitParadeGetPlyInfo 成功返回 2 个值、失败返回单个 -1。
双人答题
| 接口 | 参数与返回 |
|---|---|
| GetCoupleQuestionState | sceneId, selfId → 开始标志、最大题数、当前题位置、默契值、最大默契值、相同答案次数(6 个值);失败 -1。
|
| GetCoupleID | sceneId, selfId → 可用搭档对象 ID;失败 -1。
|
| StartCoupleQuestion | sceneId, selfId, targetId, npcId, maxQuestionNum → 返回值;失败 -1。
|
| StopCoupleQuestion | sceneId, selfId → 返回值;失败 -1。
|
| NextCoupleQuestion | sceneId, selfId, currentPos, privity, sameNum → 返回值;失败 -1。
|
| GetCurCoupleQuestion | sceneId, selfId → 当前题号、最大选项数、答案(3 个值);失败 -1。
|
| SetCurCoupleQuestion | sceneId, selfId, question, maxAnswer, answer → 返回值;失败 -1。
|
GetCoupleQuestionState 成功返回 **6 个值**,GetCurCoupleQuestion 返回 3 个值,都要按顺序接收。
账号安全
| 接口 | 参数与返回 |
|---|---|
| CheckAccountSafe | sceneId, selfId → 账号安全标志;失败 -1。
|
| IsSameMAC | sceneId, selfId, otherId → 1 相同、0 不同、2 另一对象非有效玩家、失败 -1。
|
IsSameMAC 返回 4 种不同含义的数值,不能简单按真假判断。
启动活动
local state = GetActivityState(sceneId, uActivityId)
if type(state) == "number" and state == -1 then
StartOneActivity(sceneId, uActivityId, 60000, 0)
end
GetActivityState 活动不存在返回 -1,用 state == -1 判断后再启动。
排行榜写入
local tabId = HitParadeRegisterTab(sceneId)
if type(tabId) == "number" and tabId ~= -1 then
HitParadePlayerJoin(sceneId, tabId, guid, key)
HitParadeSort(sceneId, tabId)
end
先建榜取得 tabId,再加入记录并排序。
相关主题
- 角色信息
- 属性读取与修改
- 等级与经验
- 货币相关
- 物品查询
- 物品发放与扣除
- 背包空间
- 装备操作
- 任务状态
- 任务变量
- NPC 对话
- 对话选项
- 技能相关
- 心法相关
- 状态效果
- 生活技能
- 珍兽查询
- 珍兽操作
- 场景查询
- 坐标与传送
- 副本相关
- 活动相关
- 时间与计时
- 怪物相关
函数不存在或提示 nil · 参数类型与顺序 · 返回值判断 · 对象 ID 与 GUID
本页函数签名与返回约定依据当前服务端注册表整理;sceneId、selfId 由实际回调提供,业务枚举、属性类型编号与运行效果需要实测。