Lua接口/心法相关
来自天龙知识库
查询、学习、删除心法,读写心法等级与查询所属门派。心法编号(xinfaId)来自心法表,与技能编号不同。
学习与查询
| 接口 | 参数与返回 |
|---|---|
| AddXinFa | sceneId, selfId, xinfaId → 返回值;失败 -1。
|
| DelXinFa | sceneId, selfId, xinfaId → 返回值;失败 -1。
|
| HaveXinFa | sceneId, selfId, xinfaId → 未学过 -1,否则返回心法等级。
|
| GetXinFaLevel | sceneId, selfId, xinfaId → 心法当前等级;失败 -1。
|
HaveXinFa 未学过返回 -1、学过返回**心法等级**(不是 1),所以可以用它同时判断是否学会与当前等级。GetXinFaLevel 只返回等级,未学或失败返回 -1。
设置等级
| 接口 | 参数与返回 |
|---|---|
| SetXinFaLevel | sceneId, selfId, xinfaId, level → 设置结果;失败 -1。
|
| XinFa_LevelupTo | sceneId, selfId, xinfaId, level → 设置结果;失败 -1。
|
SetXinFaLevel 设置心法到给定等级;XinFa_LevelupTo 将已学心法提升到指定等级。两者都返回设置结果。
门派与派发
| 接口 | 参数与返回 |
|---|---|
| XinFa_GetMenPaiID | xinfaId → 心法所属门派;非法编号返回 nil 或 -1。
|
| DispatchXinfaLevelInfo | sceneId, selfId, targetId, MenpaiId;无返回值。
|
XinFa_GetMenPaiID 只传心法编号,**非法编号返回 nil**,判断前必须先用 type() 判类型,否则和 nil 比较会出错。DispatchXinfaLevelInfo 供门派心法导师使用,无返回值。
查询心法等级
local level = HaveXinFa(sceneId, selfId, xinfaId)
if type(level) == "number" and level ~= -1 then
-- 已学该心法,level 为当前等级
end
HaveXinFa 未学过返回 -1、学过返回等级,用 type(level) == "number" and level ~= -1 判断。
设置心法等级
local result = SetXinFaLevel(sceneId, selfId, xinfaId, 10)
if type(result) == "number" and result ~= -1 then
-- 设置流程报告成功
end
SetXinFaLevel 返回设置结果,失败 -1。需要确认最终等级,应再调用 GetXinFaLevel 读回比较。
查询心法门派
local menpai = XinFa_GetMenPaiID(xinfaId)
if type(menpai) == "number" then
-- 取得心法所属门派编号
end
XinFa_GetMenPaiID 非法编号返回 nil,先判 type(menpai) == "number" 再使用。
相关主题
函数不存在或提示 nil · 参数类型与顺序 · 返回值判断 · 对象 ID 与 GUID
本页函数签名与返回约定依据当前服务端注册表整理;sceneId、selfId 由实际回调提供,业务枚举、属性类型编号与运行效果需要实测。