Lua接口/活动相关:修订间差异

来自天龙知识库
跳到导航跳到搜索
雪舞留言 | 贡献
维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例
 
雪舞留言 | 贡献
维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例
 
第149行: 第149行:
* [[Lua接口/时间与计时|时间与计时]]
* [[Lua接口/时间与计时|时间与计时]]
* [[Lua接口/怪物相关|怪物相关]]
* [[Lua接口/怪物相关|怪物相关]]
* [[Lua接口/队伍相关|队伍相关]]
* [[Lua接口/帮会相关|帮会相关]]
* [[Lua接口/消息与提示|消息与提示]]
* [[Lua接口/聊天与公告|聊天与公告]]


[[Lua接口/服务端调用约定|服务端调用约定]] · [[Lua接口/服务端调用示例|服务端调用示例]] · [[Lua接口/服务端函数索引|服务端函数索引]]
[[Lua接口/服务端调用约定|服务端调用约定]] · [[Lua接口/服务端调用示例|服务端调用示例]] · [[Lua接口/服务端函数索引|服务端函数索引]]

2026年9月12日 (六) 13:54的最新版本

首页 · 服务端接口 · 调用约定

启动与关闭活动、读写活动参数、管理排行榜与双人答题流程。活动编号(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,再加入记录并排序。

相关主题

服务端调用约定 · 服务端调用示例 · 服务端函数索引

函数不存在或提示 nil · 参数类型与顺序 · 返回值判断 · 对象 ID 与 GUID

本页函数签名与返回约定依据当前服务端注册表整理;sceneId、selfId 由实际回调提供,业务枚举、属性类型编号与运行效果需要实测。