Lua接口/聊天与公告

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

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

按聊天频道发送消息、发布系统公告、发送 NPC 对白与珍兽公告。聊天频道(chatType)与公告内容由脚本传入。

聊天频道消息

接口 参数与返回
BroadMsgByChatPipe sceneId, selfId, pMessage, chatType → 部分分支无返回值。

BroadMsgByChatPipe 按 chatType 决定发送范围(玩家、场景或世界聊天链路),部分分支不返回值。

系统公告

接口 参数与返回
AddGlobalCountNews sceneId, newstr;无返回值。向全组服务器发送新闻公告。

AddGlobalCountNews 无返回值,公告会发送指定次数。

NPC 对白

接口 参数与返回
MonsterTalk sceneId, monsterId, sceneName, msg → 部分分支无返回值。
LuaFnNpcChat sceneId, monsterId, isSceneBroadcast, msg → 部分分支无返回值。

MonsterTalk 的消息格式与 npctalk 脚本协议一致;LuaFnNpcChat 发送 Packet 542 的 NPC 对话消息,第三个参数 isSceneBroadcast 控制是否场景广播。

队伍消息

接口 参数与返回
Msg2Team ();无返回值。当前为空实现,调用不会发送消息。

Msg2Team 当前是**空实现**,调用不会向队伍成员发送消息,需要群发时改用 BroadMsgByChatPipe

珍兽公告

接口 参数与返回
IssuePetPlacard sceneId, selfId, targetId, petGUID_H, petGUID_L, pszMessage → 1 / 0。
IssuePetPlacardByIndex sceneId, selfId, targetId, nPetIndex, pszMessage → 1 / 0。
CancelPetPlacard sceneId, selfId, targetId → 1 / 0。
DispatchPetPlacardList sceneId, selfId, targetId, firstCheckId, secondCheckId, nextPageOrPrevPage → 1 / 0。

IssuePetPlacard 用珍兽 GUID 高低段定位,IssuePetPlacardByIndex 用珍兽栏索引。DispatchPetPlacardList 需要 6 个参数,后两个是翻页检查标识。

发送频道消息

BroadMsgByChatPipe(sceneId, selfId, "message", 0)
-- 部分分支无返回值;不能据此判断是否发送成功

BroadMsgByChatPipe 的部分分支不返回值,需要确认发送效果应结合客户端观察。

发布珍兽公告

local ok = IssuePetPlacardByIndex(sceneId, selfId, targetId, petIndex, "text")
if type(ok) == "number" and ok == 1 then
    -- 公告发布成功
end

IssuePetPlacardByIndex 返回 1 表示成功、0 表示失败,用 == 1 判断。

相关主题

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

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

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