Lua接口/NPC对话:修订间差异
来自天龙知识库
跳到导航跳到搜索
维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例 |
维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例 |
||
| (未显示同一用户的2个中间版本) | |||
| 第98行: | 第98行: | ||
* [[Lua接口/NPC对话|NPC 对话]] | * [[Lua接口/NPC对话|NPC 对话]] | ||
* [[Lua接口/对话选项|对话选项]] | * [[Lua接口/对话选项|对话选项]] | ||
* [[Lua接口/技能相关|技能相关]] | |||
* [[Lua接口/心法相关|心法相关]] | |||
* [[Lua接口/状态效果|状态效果]] | |||
* [[Lua接口/生活技能|生活技能]] | |||
* [[Lua接口/珍兽查询|珍兽查询]] | |||
* [[Lua接口/珍兽操作|珍兽操作]] | |||
* [[Lua接口/场景查询|场景查询]] | |||
* [[Lua接口/坐标与传送|坐标与传送]] | |||
* [[Lua接口/副本相关|副本相关]] | |||
* [[Lua接口/活动相关|活动相关]] | |||
* [[Lua接口/时间与计时|时间与计时]] | |||
* [[Lua接口/怪物相关|怪物相关]] | |||
* [[Lua接口/队伍相关|队伍相关]] | |||
* [[Lua接口/帮会相关|帮会相关]] | |||
* [[Lua接口/消息与提示|消息与提示]] | |||
* [[Lua接口/聊天与公告|聊天与公告]] | |||
[[Lua接口/服务端调用约定|服务端调用约定]] · [[Lua接口/服务端调用示例|服务端调用示例]] · [[Lua接口/服务端函数索引|服务端函数索引]] | [[Lua接口/服务端调用约定|服务端调用约定]] · [[Lua接口/服务端调用示例|服务端调用示例]] · [[Lua接口/服务端函数索引|服务端函数索引]] | ||
2026年9月12日 (六) 13:54的最新版本
构造 NPC 对话内容、派发对话列表、发送任务信息与 NPC 对白。对话构造遵循 BeginEvent → AddText → EndEvent → DispatchEventList 的流程。
对话构造
| 接口 | 参数与返回 |
|---|---|
| BeginEvent | sceneId;无返回值。清空当前对话内容,开始构造。
|
| AddText | sceneId, msg;无返回值。追加一段文字。
|
| EndEvent | ();无返回值。结束构造。
|
| DispatchEventList | sceneId, selfId, targetId;无返回值。派发给指定玩家。
|
对话构造四步:BeginEvent 清空 → AddText 追加文字 → EndEvent 结束 → DispatchEventList 派发。前三个都不返回值,DispatchEventList 也无返回值,不能据此判断对话是否显示成功。
对话选项派发
| 接口 | 参数与返回 |
|---|---|
| DispatchRegieEventList | sceneId, selfId, targetId;无返回值。返回 NPC 可触发事件列表。
|
DispatchRegieEventList 用于在玩家点击 NPC 时返回该 NPC 可触发的事件列表,与 DispatchEventList 的区别是它派发的是 NPC 事件索引而非自定义对话文本。
任务信息派发
| 接口 | 参数与返回 |
|---|---|
| DispatchMissionInfo | sceneId, selfId, targetId, scriptId, misId;无返回值。
|
| DispatchMissionDemandInfo | sceneId, selfId, targetId, scriptId, misId, done, nIssueScript;无返回值。
|
| DispatchMissionContinueInfo | sceneId, selfId, targetId, scriptId, misId, nIssueScript;无返回值。
|
| DispatchMissionTips | sceneId, selfId;无返回值。
|
| DispatchMissionResult | sceneId, selfId, IsFinished;无返回值。
|
这组接口向客户端返回任务信息,都无返回值。DispatchMissionDemandInfo 需要 7 个参数(含 done 和 nIssueScript),不能省略。
对白与日志
| 接口 | 参数与返回 |
|---|---|
| MonsterTalk | sceneId, monsterId, sceneName, msg → 部分分支无返回值。
|
| LuaFnNpcChat | sceneId, monsterId, isSceneBroadcast, msg → 部分分支无返回值。
|
| MissionLog | sceneId, msg;无返回值。
|
MonsterTalk 和 LuaFnNpcChat 发送 NPC/怪物对白,部分分支不返回值。MissionLog 将文本写入 Mission 日志文件,无返回值。
构造并派发对话
BeginEvent(sceneId) AddText(sceneId, "你好, traveller。") EndEvent() DispatchEventList(sceneId, selfId, targetId) -- 四步都无返回值;不能据此判断对话是否显示
对话构造四步全部无返回值。EndEvent 当前不执行额外操作,但仍是配对入口,需要调用。派发后对话是否显示需要客户端确认。
派发任务信息
DispatchMissionInfo(sceneId, selfId, targetId, scriptId, misId) -- 无返回值;客户端收到后展示任务信息
DispatchMissionInfo 需要传入 targetId(NPC 对象 ID)、scriptId 和 misId,无返回值。
相关主题
- 角色信息
- 属性读取与修改
- 等级与经验
- 货币相关
- 物品查询
- 物品发放与扣除
- 背包空间
- 装备操作
- 任务状态
- 任务变量
- NPC 对话
- 对话选项
- 技能相关
- 心法相关
- 状态效果
- 生活技能
- 珍兽查询
- 珍兽操作
- 场景查询
- 坐标与传送
- 副本相关
- 活动相关
- 时间与计时
- 怪物相关
- 队伍相关
- 帮会相关
- 消息与提示
- 聊天与公告
函数不存在或提示 nil · 参数类型与顺序 · 返回值判断 · 对象 ID 与 GUID
本页函数签名与返回约定依据当前服务端注册表整理;sceneId、selfId 由实际回调提供,业务枚举、属性类型编号与运行效果需要实测。