查看“︁Lua接口/服务端调用约定”︁的源代码
来自天龙知识库
←
Lua接口/服务端调用约定
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
__NOTOC__ <div class="lua-reference"> [[首页|首页]] · [[Lua接口/服务端函数索引|服务端接口]] · [[Lua接口/服务端调用约定|调用约定]] == 参数 == {| class="wikitable" ! scope="col" | 参数类型 ! scope="col" | 约定 |- | <code>sceneId</code> | 当前调用所处的场景编号。跨场景逻辑需通过对应接口完成。 |- | <code>selfId / targetId</code> | 当前场景内的对象 ID,玩家、NPC 和怪物对象不能随意互换。 |- | <code>GUID</code> | 角色或珍兽的全局唯一标识;与场景对象 ID 不同。 |- | <code>itemTypeSn / itemId</code> | 物品配置编号,与背包格子位置不同。 |- | <code>number</code> | 数值参数。布尔型开关若按数值读取,应使用约定的 0 或 1。 |- | <code>string</code> | 字符串参数。文字编码需与服务端脚本和客户端约定一致。 |} 参数按位置传入,变量名可由脚本自行命名。并不是每个函数都以 sceneId、selfId 开头,例如 AddText 的第二个参数就是文字,AddItem 的第二个参数是物品编号。 == 返回值 == * 无返回值与返回数字 0 不同。无返回值的函数被赋给变量时,变量得到 nil。 * Lua 中只有 nil 和 false 在条件判断中为假,数字 0 和 -1 都为真。 * 部分接口用 1 表示成功,部分接口返回对象编号、计数、错误码或多个值,必须查阅该函数的约定。 * 返回多个值时按顺序接收,例如 local x, z = GetWorldPos(sceneId, selfId)。 * 具有可变返回数量的接口,失败时可能只返回一项,其余接收变量为 nil。 == 运行环境 == 这些函数由游戏服务端注册,需在服务端脚本回调中调用。普通独立 Lua 环境或客户端脚本不保证存在同名函数。对象必须仍在相应场景中,并满足接口所要求的玩家、怪物或珍兽类型。 == 脚本调用点 == 每个函数页的「脚本中的调用」列出来自随包服务端脚本的真实调用点,按实参形态去重。它有两个用途:确认参数顺序(脚本里的实参按位置对应该页的参数表),以及核对实参个数(页面会给出脚本中出现过的实参个数与次数,与实现体读取的位置数不一致时会写入注意事项)。 脚本调用点只能说明"有人这样调用过",既不能证明该写法在当前版本仍然有效,也不能说明调用一定成功;接口是否已废弃、前置条件是否满足,仍要看实现体与注意事项给出的依据。 == 名称 == 注册名称保留原拼写。例如 <code>LuaFnSetLifeTimeAttrRefix_CriticalDefebce</code> 中的 Defebce 是当前可调用名称,不应自行改写为 Defence。 [[Lua接口/服务端调用示例|常用调用示例]] == 调用问题 == * [[Lua接口/函数不存在|函数不存在或提示 nil]] * [[Lua接口/参数类型与顺序|参数类型与传入顺序]] * [[Lua接口/返回值判断|返回值为 0、负数或空字符串]] * [[Lua接口/对象ID与GUID|对象 ID 与 GUID 的区别]] * [[Lua接口/服务端与客户端调用范围|服务端与客户端的调用范围]] </div>
返回
Lua接口/服务端调用约定
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
创建账号
登录
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
搜索
工具
链入页面
相关更改
页面信息