Lua接口/消息与提示

来自天龙知识库
雪舞留言 | 贡献2026年9月12日 (六) 13:54的版本 (维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航跳到搜索

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

向玩家发送文本消息、操作结果提示与各类界面提示。消息接口多数不返回 Lua 值,不能靠返回值判断是否显示成功。

文本消息

接口 参数与返回
Msg2Player sceneId, selfId, msg, type → 1 / -1。
DispatchMissionTips sceneId, selfId;无返回值。任务相关提示。
AddNumber sceneId, id;无返回值。添加数目提示。
AddRandItemBonus sceneId;无返回值。提示奖励随机道具。

Msg2Player 返回 1 表示已发送、-1 失败,是本组中少数有返回值的接口。DispatchMissionTipsAddNumberAddRandItemBonus 都无返回值。

操作结果

接口 参数与返回
SendOResultToPlayer sceneId, selfId, resultCode → 成功不返回 Lua 值,失败 -1。
LuaFnSendOpResult sceneId, selfId, resultCode → 成功不返回 Lua 值,失败 -1。

这两个接口**成功时不返回值**(赋值接收得到 nil),失败才返回 -1,不能用 if result then 判断成功。

界面提示

接口 参数与返回
LuaFnOpenPWBox sceneId, selfId → 0。二级密码未解锁时打开解锁界面。
OpenWorldReference sceneId, selfId, pParam → 1 / -1。打开江湖指南指定页面。
LuaFnSendGuajiQuestion sceneId, selfId → 返回值;失败 -1。挂机验证码。

LuaFnOpenPWBox 返回 0。

制造结果消息

接口 参数与返回
LuaFnSendAbilitySuccessMsg sceneId, selfId, AbilityId, RecipeId, ItemSerialNum;无返回值。
LuaFnSendAbilityFailureMsg sceneId, selfId, abilityId, recipeId, itemSerial;无返回值。

生活技能制造的成功 / 失败消息,都无返回值。

调试输出

接口 参数与返回
PrintNum num;无返回值。弹出消息框(测试脚本用)。
PrintStr strText;无返回值。弹出消息框(测试脚本用)。

PrintNumPrintStr 是**测试脚本用**的弹框,正式脚本不要依赖。

发送文本消息

local result = Msg2Player(sceneId, selfId, "message", 0)
if type(result) == "number" and result == 1 then
    -- 消息已发送
end

Msg2Player 需要 4 个参数,返回 1 表示已发送。

发送操作结果

SendOResultToPlayer(sceneId, selfId, resultCode)
-- 成功不返回 Lua 值,失败才返回 -1
-- 不能写 if SendOResultToPlayer(...) then 判断成功

SendOResultToPlayer 成功路径不返回值。

相关主题

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

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

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