查看“︁Lua接口/任务状态”︁的源代码
来自天龙知识库
←
Lua接口/任务状态
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
__NOTOC__ <div class="lua-reference" style="max-width:1200px;margin:0 auto;line-height:1.8;color:#29343a;font-family:Arial,'Microsoft YaHei',sans-serif;letter-spacing:0;overflow-wrap:anywhere;"> [[首页|首页]] · [[Lua接口/服务端函数索引|服务端接口]] · [[Lua接口/服务端调用约定|调用约定]] 查询、接取、完成与删除任务。任务编号(misId)来自任务表,不是任务索引(misIndex)。 == 查询 == {| class="wikitable" style="width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px;" ! scope="col" style="text-align:left;background:#edf3f2;padding:8px;" | 接口 ! scope="col" style="text-align:left;background:#edf3f2;padding:8px;" | 参数与返回 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/GetMission|GetMission]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId</code> → 任务值(做过/正在做/未做);失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/IsMissionHaveDone|IsMissionHaveDone]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId</code> → 是否做过;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/IsHaveMission|IsHaveMission]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId</code> → 是否正在做;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/GetMissionCount|GetMissionCount]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId</code> → 已接任务数量;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/IsMissionFull|IsMissionFull]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId</code> → 任务列表是否已满;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/GetMissionIndexByID|GetMissionIndexByID]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId</code> → 任务索引;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/GetScriptIDByMissionID|GetScriptIDByMissionID]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, missionId</code> → 任务绑定的脚本编号;失败 -1。 |} [[Lua接口/服务端/GetMission|GetMission]] 返回的任务值含义按本服约定(做过/正在做/未做的编号不同),失败返回 -1。[[Lua接口/服务端/IsMissionHaveDone|IsMissionHaveDone]] 与 [[Lua接口/服务端/IsHaveMission|IsHaveMission]] 语义不同:前者查是否做过,后者查是否正在做。任务编号(misId)与任务索引(misIndex,见 [[Lua接口/任务变量|任务变量]])不同。 == 接取与删除 == {| class="wikitable" style="width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px;" ! scope="col" style="text-align:left;background:#edf3f2;padding:8px;" | 接口 ! scope="col" style="text-align:left;background:#edf3f2;padding:8px;" | 参数与返回 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/AddMission|AddMission]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId, scriptId, killObjEvent, enterAreaEvent, itemChangedEvent</code> → 6 个参数;返回值;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/AddMissionEx|AddMissionEx]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId, scriptId</code> → 4 个参数;返回值;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/DelMission|DelMission]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId</code> → 1 成功、-1 失败。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/DelAllMission|DelAllMission]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId</code> → 1 成功、-1 失败。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/MissionCom|MissionCom]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId</code>;无返回值。 |} [[Lua接口/服务端/AddMission|AddMission]] 需要 6 个参数(含杀怪、进入区域、物品变化事件标志),[[Lua接口/服务端/AddMissionEx|AddMissionEx]] 简化为 4 个参数(只传脚本编号)。[[Lua接口/服务端/MissionCom|MissionCom]] **无返回值**,赋值接收得到 nil,不能据此判断是否完成。 == 事件标志 == {| class="wikitable" style="width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px;" ! scope="col" style="text-align:left;background:#edf3f2;padding:8px;" | 接口 ! scope="col" style="text-align:left;background:#edf3f2;padding:8px;" | 参数与返回 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/SetMissionEvent|SetMissionEvent]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, misId, eventId</code> → 返回值;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/ResetMissionEvent|ResetMissionEvent]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, missionId, eventId</code> → 返回值;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/StartMissionTimer|StartMissionTimer]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, missionId</code> → 返回值;失败 -1。 |- | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | [[Lua接口/服务端/StopMissionTimer|StopMissionTimer]] | style="padding:8px;vertical-align:top;overflow-wrap:anywhere;" | <code style="white-space:normal;overflow-wrap:anywhere;">sceneId, selfId, missionId</code> → 返回值;失败 -1。 |} [[Lua接口/服务端/SetMissionEvent|SetMissionEvent]] 设置任务事件标志,[[Lua接口/服务端/ResetMissionEvent|ResetMissionEvent]] 清除。定时器事件由 [[Lua接口/服务端/StartMissionTimer|StartMissionTimer]] / [[Lua接口/服务端/StopMissionTimer|StopMissionTimer]] 控制。 == 检查任务状态 == <pre style="white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7;padding:12px;background:#f5f7f8;border:1px solid #dbe3e6;">local done = IsMissionHaveDone(sceneId, selfId, misId) if type(done) == "number" and done ~= -1 then -- 取得任务完成状态 end</pre> [[Lua接口/服务端/IsMissionHaveDone|IsMissionHaveDone]] 失败返回 -1,先判类型再判数值(见 [[Lua接口/返回值判断|返回值判断]])。 == 接取任务 == <pre style="white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7;padding:12px;background:#f5f7f8;border:1px solid #dbe3e6;">local result = AddMissionEx(sceneId, selfId, misId, scriptId) if type(result) == "number" and result ~= -1 then -- 任务接取流程报告成功 end</pre> [[Lua接口/服务端/AddMissionEx|AddMissionEx]] 返回值含义按本服约定,失败 -1。[[Lua接口/服务端/AddMission|AddMission]] 的 6 参数版本还需要杀怪、进入区域、物品变化事件标志。 == 完成任务 == <pre style="white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7;padding:12px;background:#f5f7f8;border:1px solid #dbe3e6;">MissionCom(sceneId, selfId, misId) -- 无返回值;不能写 if MissionCom(...) then 判断 -- 想确认应改读 IsMissionHaveDone 回比</pre> [[Lua接口/服务端/MissionCom|MissionCom]] 无返回值。需要确认任务是否完成,应在调用后用 [[Lua接口/服务端/IsMissionHaveDone|IsMissionHaveDone]] 读回比较。 == 相关主题 == * [[Lua接口/角色信息|角色信息]] * [[Lua接口/属性读取与修改|属性读取与修改]] * [[Lua接口/等级与经验|等级与经验]] * [[Lua接口/货币相关|货币相关]] * [[Lua接口/物品查询|物品查询]] * [[Lua接口/物品发放与扣除|物品发放与扣除]] * [[Lua接口/背包空间|背包空间]] * [[Lua接口/装备操作|装备操作]] * [[Lua接口/任务状态|任务状态]] * [[Lua接口/任务变量|任务变量]] * [[Lua接口/NPC对话|NPC 对话]] * [[Lua接口/对话选项|对话选项]] * [[Lua接口/技能相关|技能相关]] * [[Lua接口/心法相关|心法相关]] * [[Lua接口/状态效果|状态效果]] * [[Lua接口/生活技能|生活技能]] * [[Lua接口/珍兽查询|珍兽查询]] * [[Lua接口/珍兽操作|珍兽操作]] [[Lua接口/服务端调用约定|服务端调用约定]] · [[Lua接口/服务端调用示例|服务端调用示例]] · [[Lua接口/服务端函数索引|服务端函数索引]] [[Lua接口/函数不存在|函数不存在或提示 nil]] · [[Lua接口/参数类型与顺序|参数类型与顺序]] · [[Lua接口/返回值判断|返回值判断]] · [[Lua接口/对象ID与GUID|对象 ID 与 GUID]] <div style="margin-top:20px;padding-top:10px;border-top:1px solid #dbe3e6;color:#657078;font-size:12px;">本页函数签名与返回约定依据当前服务端注册表整理;sceneId、selfId 由实际回调提供,业务枚举、属性类型编号与运行效果需要实测。</div> </div>
返回
Lua接口/任务状态
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
创建账号
登录
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
搜索
工具
链入页面
相关更改
页面信息