Lua接口/珍兽操作:修订间差异

来自天龙知识库
跳到导航跳到搜索
雪舞留言 | 贡献
维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例
 
雪舞留言 | 贡献
维护服务端 Lua 接口:核对参数、返回值、边界条件与调用示例
 
(未显示同一用户的1个中间版本)
第209行: 第209行:
* [[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的最新版本

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

创建、删除、召唤、设置属性、学习技能、训养、还童、融合与繁殖珍兽。多数接口用 GUID 高低段定位宠物。

创建与删除

接口 参数与返回
LuaFnCreatePetToHuman sceneId, selfId, nPetDataID, nPetLevel, nRuler → 创建结果(3 个值);部分分支无返回值。
LuaFnDeletePetByGUID sceneId, selfId, guidPetHigh, guidPetLow → 0 / 1 / -1,删除前记录完整档案到宠物日志。
RecallPet sceneId, selfId;无返回值。收回当前召唤的宠物。

LuaFnCreatePetToHuman 按生成规则创建宠物,返回 3 个值。LuaFnDeletePetByGUID 删除前会把完整档案写入宠物日志。RecallPet 无返回值。

属性设置

接口 参数与返回
LuaFnSetPetHP sceneId, selfId, petGUID_H, petGUID_L, hp;无返回值。
LuaFnSetPetMaxHP sceneId, selfId, arg3, arg4, arg5;无返回值。
LuaFnSetPetLife sceneId, selfId, petGUID_H, petGUID_L, life;无返回值。
LuaFnSetPetHappiness sceneId, selfId, petGUID_H, petGUID_L, happiness;无返回值。
SetPetSavvy sceneId, selfId, guidPetHigh, guidPetLow, nSavvyNew → 结果;部分分支无返回值。
LuaFnSetPetAITypeByGUID sceneId, selfId, guidPetHigh, guidPetLow, nAIType → 1 / 0。
LuaFnSetPetTitle sceneId, selfId, guidPetHigh, guidPetLow, tTitleID → 部分分支无返回值。

LuaFnSetPetHPLuaFnSetPetMaxHPLuaFnSetPetLifeLuaFnSetPetHappiness 都**无返回值**,赋值接收得到 nil,不能用 if X(...) then 判断成功。设置宠物悟性、写宠物日志并刷新详情由 SetPetSavvy 完成。

技能学习

接口 参数与返回
PetStudySkill sceneId, selfId, guidPetHigh, guidPetLow, skillId → 1 / 0。
PetStudySkill_MenPai sceneId, selfId, arg3, arg4, arg5 → 0。
LuaFnPetSkillUp sceneId, selfId, guidPetHigh, guidPetLow, nSkillIndex, nSkillID → 部分分支无返回值;把指定技能替换为升级后的技能。

PetStudySkill 让宠物学习指定技能,PetStudySkill_MenPai 学习门派技能。LuaFnPetSkillUp 按技能位替换为升级后的技能并发送刷新。

训养与还童

接口 参数与返回
CalcPetDomesticationMoney sceneId, humanId, petGUID_H, petGUID_L → 训养费用;失败 -1。
PetDomestication sceneId, selfId, guidPetHigh, guidPetLow → 1 / -1。
LuaFnGetPetHuanTongCost sceneId, takeLevel → 还童费用;失败 -1。
LuaFnPetCanReturnToChild sceneId, selfId, petGUID_H, petGUID_L, nRuler, nSpecifyPetDataID → 是否可还童;部分分支无返回值。
LuaFnPetReturnToChild sceneId, selfId, petGUID_H, petGUID_L, nRuler, nSpecifyPetDataID → 还童结果(2 个值);部分分支无返回值。

CalcPetDomesticationMoney 先算费用,PetDomestication 执行训养。LuaFnPetReturnToChild 需要 6 个参数,返回 2 个值。

经验与属性点

接口 参数与返回
PetAddExp sceneId, selfId, nExp → 部分分支无返回值;为当前出战宠物加经验。
LuaFnCheckResetPetAttrPt sceneId, selfId, guidPetHigh, guidPetLow → 是否允许重置;失败 -1。
LuaFnResetPetAttrPt sceneId, selfId, guidPetHigh, guidPetLow → 1 / -1;重置并刷新详情。
SetPetNumExtra sceneId, selfId, yValue → 1 / 0;允许范围 0 到 4。
LuaFnPetCanUseFood sceneId, selfId, petGUID_H, petGUID_L, nIndex → 是否可食用;失败 -1。

SetPetNumExtra 的额外宠物栏数量允许范围是 0 到 4。PetAddExp 部分分支不返回值。

融合与悟性提升

接口 参数与返回
LuaFnCallPetCompoundUI sceneId, selfId, targetId, nUIIndex → 1 / 0;打开宠物融合界面。
IncreaceSavvyByCompound sceneId, selfId, destPetHigh, destPetLow, assistantPetHigh, assistantPetLow → 悟性变化值;部分分支无返回值。
GetCostOfGenGuBySavvy sceneId, selfId, nSavvy → 提升根骨费用;部分分支无返回值。
GetSuccrateOfGenGuBySavvy sceneId, selfId, nSavvy → 提升根骨成功率;部分分支无返回值。
GetLeveldownOfCompoundBySavvy sceneId, selfId, nSavvy → 融合后按悟性扣减的等级;部分分支无返回值。

这组接口按悟性读取融合 / 根骨相关的费用、成功率与等级扣减,用悟性值作为查询参数。

繁殖

接口 参数与返回
LuaFnCheckCallPetProcreateRegisterUI sceneId, selfId, targetId → 是否满足登记条件;部分分支无返回值。
LuaFnCallPetProcreateRegisterUI sceneId, selfId, targetId, nUIIndex → 1 / 0;打开登记界面。
LuaFnCheckPetProcreateTakeOut sceneId, selfId → 是否满足领取条件;部分分支无返回值。
LuaFnPetProcreateTakeOut sceneId, selfId → 1 / 0;领取繁殖结果。
LuaFnGetPetProcreateInfo sceneId, selfId;无返回值。向世界服查询繁殖记录。

LuaFnGetPetProcreateInfo 无返回值,结果由世界服异步返回。

锁与 GUID 高低段

接口 参数与返回
LuaFnIsPetLockedByGUID sceneId, selfId, guidPetHigh, guidPetLow → 是否被运行时交易锁锁定;部分分支无返回值。
LuaFnIsPetPWLockedByGUID sceneId, selfId, guidPetHigh, guidPetLow → 是否受二级密码保护;宠物不存在时不返回 Lua 值。
LuaFnGetLowSectionOfTargetPetGuid sceneId, nSelfID → 当前操作目标珍兽 GUID 低段;失败 -1。
LuaFnGetHighSectionOfTargetPetGuid sceneId, nSelfID → 当前操作目标珍兽 GUID 高段;失败 -1。

LuaFnGetLowSectionOfTargetPetGuidLuaFnGetHighSectionOfTargetPetGuid 用于在当前操作流程中直接读取目标珍兽的 GUID 高低段,省去先取 GUID 再拆分。

设置宠物生命

LuaFnSetPetHP(sceneId, selfId, guidPetHigh, guidPetLow, 100)
-- 无返回值;不能写 if LuaFnSetPetHP(...) then 判断
-- 想确认应改读 LuaFnGetPetHP 回比

LuaFnSetPetHP 无返回值。需要确认生效应在用 LuaFnGetPetHP 读回比较。

学习宠物技能

local result = PetStudySkill(sceneId, selfId, guidPetHigh, guidPetLow, skillId)
if type(result) == "number" and result == 1 then
    -- 学习成功
end

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

收回宠物

RecallPet(sceneId, selfId)
-- 无返回值;收回玩家当前召唤的宠物

RecallPet 无返回值。

相关主题

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

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

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