Lua接口/装备操作:修订间差异

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

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

装备强化、升档、锁定与类型查询。装备操作多数传入背包格子位置(bagIndex / BagPos),不是物品配置编号。

强化

接口 参数与返回
LuaFnEquipEnhance sceneId, selfId, equipBagIndex, materialBagIndex → 1-2 个值。0 成功+新等级,-6 失败,-1 表缺失,-2 装备无效,-3 材料无效或金币不足,-4 达到上限。
LuaFnGetEquipFaileTimes sceneId, selfId, bagIndex → 强化失败次数;暗器和非装备返回 0。

LuaFnEquipEnhance 返回数量可变(1 或 2 个),用两个变量接收并先判第一项类型。金币不足时返回 -3、所需费用,不是只返回 -3。

升档

接口 参数与返回
LuaFnEquipLevelUp sceneId, selfId, equipBagIndex, materialBagIndex → 1-2 个值。-2/-3/-1/-8/-6/-7。

LuaFnEquipLevelUp 返回数量也可变,用两个变量接收。

类型查询

接口 参数与返回
IsEquipItem itemTableIndex → 是否装备。
IsWhiteEquip itemTableIndex → 是否固定零条随机属性。
GetItemEquipPoint itemTableIndex → 穿戴部位;非装备 -1。
LuaFnGetBagEquipType sceneId, selfId, nBagPos → 装备类型;非装备 -1。
GeEquipReqLevel itemTableIndex → 装备需求等级;非装备 -1。

IsEquipItemIsWhiteEquipGetItemEquipPointGeEquipReqLevel 只传物品编号(不传 sceneId / selfId),从配置表读取。LuaFnGetBagEquipType 传背包格子位置,读运行时数据。

装备锁

接口 参数与返回
LuaFnEquipLock sceneId, selfId, bagIndex → 0 成功、-1 失败、-2 装备无效、-3 交易锁。

LuaFnEquipLock 设置装备持久锁并同步完整物品信息。

外观更换

接口 参数与返回
GetChangeHairItemIdAndItemCount hairStyle → 物品编号和数量;失败 -1。
GetChangeFaceItemIdAndItemCount faceStyle → 物品编号和数量;失败 -1。
GetChangeHeadInfo headStyle → 物品编号和数量;失败 -1。

这三个接口返回 1 或 2 个值,用两个变量接收。

检查并强化装备

local equipType = LuaFnGetBagEquipType(sceneId, selfId, bagIndex)
if type(equipType) == "number" and equipType ~= -1 then
    local result, newLevel = LuaFnEquipEnhance(sceneId, selfId, bagIndex, materialBagIndex)
    if type(result) == "number" then
        -- result 0 成功、负值失败
    end
end

LuaFnEquipEnhance 返回 1 或 2 个值,用两个变量接收并先判第一项类型;不要用 if LuaFnEquipEnhance(...) then,避免把 0 当假。

查询装备需求等级

local reqLevel = GeEquipReqLevel(itemTableIndex)
if type(reqLevel) == "number" and reqLevel ~= -1 then
    -- 取得装备需求等级
end

GeEquipReqLevel 只传物品编号,非装备返回 -1。

相关主题

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

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

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