首页:修订间差异

来自天龙知识库
跳到导航跳到搜索
Waylee留言 | 贡献
撤销Waylee讨论)的修订版本3
标签撤销 已被回退
雪舞留言 | 贡献
创建 Lua 函数手册首页,整理接口分类、常用函数和调用示例
 
(未显示另一用户的1个中间版本)
第1行: 第1行:
__NOTOC__
__NOTOC____NOEDITSECTION__
__NOEDITSECTION__
<div class="tlbb-wiki-home" style="max-width:1200px;margin:0 auto;color:#29343a;font-family:Arial,'Microsoft YaHei','PingFang SC',sans-serif;font-size:14px;line-height:1.8;letter-spacing:0;overflow-wrap:anywhere;">


<div style="max-width:1200px;margin:0 auto;">
<div style="padding:22px 0 20px;border-top:4px solid #287568;border-bottom:1px solid #dbe3e6;">
<div style="font-size:12px;color:#66767c;">TLBB LUA REFERENCE</div>
<div role="heading" aria-level="2" style="margin:5px 0 8px;font-size:28px;font-weight:bold;line-height:1.4;color:#193d37;">天龙 Lua 函数手册</div>
<div style="color:#526168;">游戏内置接口的 Lua 用法:函数说明、参数含义、返回值与脚本示例。</div>
<div style="display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:14px;font-size:13px;">
<div>[[Lua接口/函数索引|全部函数]]</div>
<div>[[Lua接口/服务端函数索引|服务端接口]]</div>
<div>[[Lua接口/客户端函数索引|客户端接口]]</div>
<div>[[Lua接口/示例索引|脚本示例]]</div>
<div>[[Special:Search|搜索函数]]</div>
</div>
</div>
 
<div style="display:flex;flex-wrap:wrap;gap:8px 24px;padding:12px 0;border-bottom:1px solid #dbe3e6;font-size:13px;">
<div>[[#接口分类|接口分类]]</div>
<div>[[#常用函数|常用函数]]</div>
<div>[[#示例与常见问题|示例与常见问题]]</div>
<div>[[Special:PrefixIndex/Lua接口/|全部接口文档]]</div>
<div>[[Special:RecentChanges|最近更新]]</div>
</div>


<!-- ==================== 顶部欢迎区域 ==================== -->
<h2 id="接口分类" style="margin:24px 0 14px;padding:0 0 8px;border-bottom:1px solid #dbe3e6;font-family:inherit;font-size:19px;font-weight:bold;">接口分类</h2>
<div style="
<div style="display:flex;flex-wrap:wrap;gap:16px;">
background:linear-gradient(135deg,#32251b,#5b3b23);
border:1px solid #8c6a42;
border-radius:6px;
padding:28px 32px;
margin-bottom:18px;
color:#f5ead5;
box-shadow:0 2px 8px rgba(0,0,0,.18);
">


<div style="font-size:32px;font-weight:bold;margin-bottom:8px;">
<div style="flex:1 1 300px;min-width:0;box-sizing:border-box;padding:16px 18px;border:1px solid #dbe3e6;border-top:3px solid #287568;border-radius:4px;background:#fff;">
天龙知识库
<h3 style="margin:0 0 5px;padding:0;font-family:inherit;font-size:17px;font-weight:bold;">角色与属性</h3>
<div style="margin-bottom:10px;font-size:13px;color:#657078;">角色信息、等级、生命与经验。</div>
<div>[[Lua接口/角色信息|角色信息]] · [[Lua接口/属性读取与修改|属性读取与修改]]</div>
<div>[[Lua接口/等级与经验|等级与经验]] · [[Lua接口/货币相关|货币相关]]</div>
<div style="margin-top:8px;font-family:Consolas,monospace;font-size:13px;">[[Lua接口/服务端/GetName|GetName]] · [[Lua接口/服务端/GetLevel|GetLevel]] · [[Lua接口/服务端/GetHp|GetHp]]</div>
</div>
</div>


<div style="font-size:16px;color:#dbc9a9;line-height:1.8;">
<div style="flex:1 1 300px;min-width:0;box-sizing:border-box;padding:16px 18px;border:1px solid #dbe3e6;border-top:3px solid #467797;border-radius:4px;background:#fff;">
天龙八部客户端、服务端、脚本、数据库、游戏资源与开发技术资料库
<h3 style="margin:0 0 5px;padding:0;font-family:inherit;font-size:17px;font-weight:bold;">物品与背包</h3>
<div style="margin-bottom:10px;font-size:13px;color:#657078;">物品查询、数量判断与道具操作。</div>
<div>[[Lua接口/物品查询|物品查询]] · [[Lua接口/物品发放与扣除|物品发放与扣除]]</div>
<div>[[Lua接口/背包空间|背包空间]] · [[Lua接口/装备操作|装备操作]]</div>
<div style="margin-top:8px;font-family:Consolas,monospace;font-size:13px;">[[Lua接口/服务端/GetItemCount|GetItemCount]]</div>
</div>
</div>


<div style="margin-top:18px;font-size:14px;">
<div style="flex:1 1 300px;min-width:0;box-sizing:border-box;padding:16px 18px;border:1px solid #dbe3e6;border-top:3px solid #9a7940;border-radius:4px;background:#fff;">
'''[[天龙八部|开始浏览]]'''
<h3 style="margin:0 0 5px;padding:0;font-family:inherit;font-size:17px;font-weight:bold;">任务与对话</h3>
&nbsp;&nbsp;·&nbsp;&nbsp;
<div style="margin-bottom:10px;font-size:13px;color:#657078;">任务状态、进度记录与 NPC 对话。</div>
'''[[Special:Search|搜索知识库]]'''
<div>[[Lua接口/任务状态|任务状态]] · [[Lua接口/任务变量|任务变量]]</div>
&nbsp;&nbsp;·&nbsp;&nbsp;
<div>[[Lua接口/NPC对话|NPC 对话]] · [[Lua接口/对话选项|对话选项]]</div>
'''[[Special:RecentChanges|最近更新]]'''
<div style="margin-top:8px;font-family:Consolas,monospace;font-size:13px;">[[Lua接口/服务端/BeginEvent|BeginEvent]] · [[Lua接口/服务端/AddText|AddText]]</div>
&nbsp;&nbsp;·&nbsp;&nbsp;
'''[[帮助:目录|使用帮助]]'''
</div>
</div>


<div style="flex:1 1 300px;min-width:0;box-sizing:border-box;padding:16px 18px;border:1px solid #dbe3e6;border-top:3px solid #597c66;border-radius:4px;background:#fff;">
<h3 style="margin:0 0 5px;padding:0;font-family:inherit;font-size:17px;font-weight:bold;">场景与活动</h3>
<div style="margin-bottom:10px;font-size:13px;color:#657078;">场景信息、位置、传送与活动控制。</div>
<div>[[Lua接口/场景查询|场景查询]] · [[Lua接口/坐标与传送|坐标与传送]]</div>
<div>[[Lua接口/副本相关|副本相关]] · [[Lua接口/活动相关|活动相关]]</div>
<div>[[Lua接口/时间与计时|时间与计时]] · [[Lua接口/怪物相关|怪物相关]]</div>
</div>
</div>


 
<div style="flex:1 1 300px;min-width:0;box-sizing:border-box;padding:16px 18px;border:1px solid #dbe3e6;border-top:3px solid #7d6472;border-radius:4px;background:#fff;">
<!-- ==================== 公告 ==================== -->
<h3 style="margin:0 0 5px;padding:0;font-family:inherit;font-size:17px;font-weight:bold;">技能与珍兽</h3>
 
<div style="margin-bottom:10px;font-size:13px;color:#657078;">技能、心法、状态效果与珍兽操作。</div>
<div style="
<div>[[Lua接口/技能相关|技能相关]] · [[Lua接口/心法相关|心法相关]]</div>
border-left:4px solid #9b6c32;
<div>[[Lua接口/状态效果|状态效果]] · [[Lua接口/生活技能|生活技能]]</div>
background:#f8f5ef;
<div>[[Lua接口/珍兽查询|珍兽查询]] · [[Lua接口/珍兽操作|珍兽操作]]</div>
padding:12px 16px;
margin-bottom:20px;
">
 
'''📢 知识库公告'''
 
天龙知识库正在持续整理中,主要收录天龙八部经典版本客户端、服务端、开发、修改及技术研究资料。
 
欢迎完善缺失内容、修正错误资料。
 
</div>
</div>


 
<div style="flex:1 1 300px;min-width:0;box-sizing:border-box;padding:16px 18px;border:1px solid #dbe3e6;border-top:3px solid #a36761;border-radius:4px;background:#fff;">
<!-- ==================== 主分类 ==================== -->
<h3 style="margin:0 0 5px;padding:0;font-family:inherit;font-size:17px;font-weight:bold;">交互与界面</h3>
 
<div style="margin-bottom:10px;font-size:13px;color:#657078;">队伍、帮会、消息与界面脚本。</div>
<div style="font-size:22px;font-weight:bold;border-bottom:2px solid #8a673d;padding-bottom:7px;margin:24px 0 14px;">
<div>[[Lua接口/队伍相关|队伍相关]] · [[Lua接口/帮会相关|帮会相关]]</div>
知识库导航
<div>[[Lua接口/消息与提示|消息与提示]] · [[Lua接口/聊天与公告|聊天与公告]]</div>
<div>[[Lua接口/客户端窗口操作|客户端窗口操作]] · [[Lua接口/客户端事件|客户端事件]]</div>
</div>
</div>
{| style="width:100%;border-spacing:12px;border-collapse:separate;"
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 🎮 客户端 ===
* [[客户端|客户端总览]]
* [[客户端版本|客户端版本]]
* [[客户端配置文件|配置文件]]
* [[客户端Lua脚本|Lua 脚本]]
* [[客户端界面系统|界面 UI]]
* [[客户端资源|客户端资源]]
* [[客户端错误与调试|错误与调试]]
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 🖥️ 服务端 ===
* [[服务端|服务端总览]]
* [[服务端架构|服务端架构]]
* [[服务端配置|服务端配置]]
* [[服务端源码|服务端源码]]
* [[服务端编译|编译环境]]
* [[服务端错误与调试|错误与调试]]
* [[服务端部署|服务器部署]]
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 🗄️ 数据库 ===
* [[数据库|数据库总览]]
* [[MySQL|MySQL]]
* [[MariaDB|MariaDB]]
* [[MongoDB|MongoDB]]
* [[数据库表结构|数据库表结构]]
* [[数据库字段说明|字段说明]]
* [[数据库常见问题|常见问题]]
|}
{| style="width:100%;border-spacing:12px;border-collapse:separate;"
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 📜 Lua与脚本 ===
* [[Lua|Lua 总览]]
* [[客户端Lua|客户端 Lua]]
* [[服务端脚本|服务端脚本]]
* [[Lua函数|Lua 函数]]
* [[Lua接口|Lua 接口]]
* [[脚本错误大全|脚本错误大全]]
* [[脚本开发实例|开发实例]]
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 🛠️ 开发技术 ===
* [[开发环境|开发环境]]
* [[C++|C++]]
* [[Visual Studio|Visual Studio]]
* [[GCC|GCC]]
* [[CMake|CMake]]
* [[64位客户端|X64 客户端]]
* [[64位服务端|X64 服务端]]
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 🔍 调试与逆向 ===
* [[调试技术|调试技术]]
* [[IDA Pro|IDA Pro]]
* [[x64dbg|x64dbg]]
* [[GDB|GDB]]
* [[AddressSanitizer|AddressSanitizer]]
* [[崩溃分析|崩溃分析]]
* [[逆向分析|逆向分析]]
|}
{| style="width:100%;border-spacing:12px;border-collapse:separate;"
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 🖼️ 游戏资源 ===
* [[游戏资源|资源总览]]
* [[模型|模型]]
* [[贴图|贴图]]
* [[特效|特效]]
* [[地图|地图]]
* [[声音|声音]]
* [[Interface|Interface 界面资源]]
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== ⚙️ 游戏引擎 ===
* [[OGRE|OGRE]]
* [[Direct3D|Direct3D]]
* [[Direct3D 9|Direct3D 9]]
* [[Direct3D 11|Direct3D 11]]
* [[OpenGL|OpenGL]]
* [[渲染系统|渲染系统]]
* [[游戏引擎研究|引擎研究]]
| style="width:33%;vertical-align:top;background:#faf9f7;border:1px solid #ddd3c5;padding:18px;border-radius:5px;" |
=== 📦 工具与资料 ===
* [[开发工具|开发工具]]
* [[资源工具|资源工具]]
* [[GM工具|GM 工具]]
* [[数据库工具|数据库工具]]
* [[版本资料|版本资料]]
* [[技术文档|技术文档]]
* [[资料索引|资料索引]]
|}
<!-- ==================== 重点专题 ==================== -->
<div style="font-size:22px;font-weight:bold;border-bottom:2px solid #8a673d;padding-bottom:7px;margin:28px 0 14px;">
重点技术专题
</div>
</div>


{| class="wikitable" style="width:100%;"
<h2 id="常用函数" style="margin:26px 0 12px;padding:0 0 8px;border-bottom:1px solid #dbe3e6;font-family:inherit;font-size:19px;font-weight:bold;">常用函数</h2>
! style="width:22%;" | 专题
<div style="margin-bottom:10px;font-size:13px;color:#657078;">服务端 Lua 接口</div>
! 内容
{| class="wikitable" style="width:100%;margin:0;border-collapse:collapse;table-layout:fixed;font-size:13px;"
! style="width:15%;" | 状态
! scope="col" style="width:24%;padding:9px 10px;text-align:left;background:#edf3f2;" | 函数
|-
! scope="col" style="width:41%;padding:9px 10px;text-align:left;background:#edf3f2;" | Lua 调用
| '''[[天龙八部0.85版本|0.85版本研究]]'''
! scope="col" style="padding:9px 10px;text-align:left;background:#edf3f2;" | 用途
| 经典0.85客户端、服务端、资源结构及相关技术资料
| 整理中
|-
| '''[[64位客户端|客户端 X64 重制]]'''
| 32位客户端向64位架构迁移、兼容性修复及代码重构
| 持续更新
|-
|-
| '''[[64位服务端|服务端 X64 重制]]'''
| style="padding:10px;" | [[Lua接口/服务端/GetName|GetName]]
| 服务端64位重构、Linux编译、运行与调试
| style="padding:10px;" | <code style="white-space:normal;overflow-wrap:anywhere;">GetName(sceneId, selfId)</code>
| 持续更新
| style="padding:10px;" | 获取角色名称。
|-
|-
| '''[[2038年问题|2038年问题]]'''
| style="padding:10px;" | [[Lua接口/服务端/GetLevel|GetLevel]]
| Unix 时间戳、32位 time_t 与老游戏兼容问题
| style="padding:10px;" | <code style="white-space:normal;overflow-wrap:anywhere;">GetLevel(sceneId, selfId)</code>
| 已收录
| style="padding:10px;" | 获取角色等级。
|-
|-
| '''[[OGRE|OGRE 引擎研究]]'''
| style="padding:10px;" | [[Lua接口/服务端/GetHp|GetHp]]
| OGRE 1.x、Mesh、RenderSystem、D3D9及图形接口研究
| style="padding:10px;" | <code style="white-space:normal;overflow-wrap:anywhere;">GetHp(sceneId, selfId)</code>
| 整理中
| style="padding:10px;" | 获取角色当前生命值。
|-
|-
| '''[[Lua|Lua 系统研究]]'''
| style="padding:10px;" | [[Lua接口/服务端/GetItemCount|GetItemCount]]
| 客户端 Lua UI、函数接口、事件系统及错误分析
| style="padding:10px;" | <code style="white-space:normal;overflow-wrap:anywhere;">GetItemCount(sceneId, selfId, itemTypeSn)</code>
| 持续更新
| style="padding:10px;" | 统计指定物品数量,包含已装备与背包中的物品。
|}
|}


 
<h2 id="示例与常见问题" style="margin:26px 0 12px;padding:0 0 8px;border-bottom:1px solid #dbe3e6;font-family:inherit;font-size:19px;font-weight:bold;">示例与常见问题</h2>
<!-- ==================== 新手入口 ==================== -->
<div style="display:flex;flex-wrap:wrap;gap:18px 32px;">
 
<div style="flex:1 1 380px;min-width:0;">
<div style="font-size:22px;font-weight:bold;border-bottom:2px solid #8a673d;padding-bottom:7px;margin:28px 0 14px;">
<h3 style="margin:0 0 8px;padding:0;font-family:inherit;font-size:15px;font-weight:bold;">读取角色信息</h3>
新手入门
<pre style="margin:0 0 10px;padding:14px;border:1px solid #dbe3e6;border-left:3px solid #287568;border-radius:3px;background:#f5f7f8;color:#29343a;font-family:Consolas,monospace;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;"><nowiki>local name = GetName(sceneId, selfId)
local level = GetLevel(sceneId, selfId)
local hp = GetHp(sceneId, selfId)</nowiki></pre>
<div style="font-size:13px;color:#657078;">适用于服务端脚本回调中的有效角色。<code>sceneId</code> 为当前场景 ID,<code>selfId</code> 为场景内对象 ID,取自当前回调参数。</div>
<div style="margin-top:10px;">[[Lua接口/参数说明|参数说明]] · [[Lua接口/返回值说明|返回值说明]] · [[Lua接口/示例索引|更多示例]]</div>
</div>
</div>
 
<div style="flex:1 1 320px;min-width:0;">
{| style="width:100%;"
<h3 style="margin:0 0 8px;padding:0;font-family:inherit;font-size:15px;font-weight:bold;">调用问题</h3>
| style="width:50%;vertical-align:top;padding-right:25px;" |
<div style="padding:7px 0;border-bottom:1px solid #edf0f2;">[[Lua接口/函数不存在|函数不存在或提示 nil]]</div>
 
<div style="padding:7px 0;border-bottom:1px solid #edf0f2;">[[Lua接口/参数类型与顺序|参数类型与传入顺序]]</div>
==== 想研究客户端 ====
<div style="padding:7px 0;border-bottom:1px solid #edf0f2;">[[Lua接口/返回值判断|返回值为 0、负数或空字符串]]</div>
 
<div style="padding:7px 0;border-bottom:1px solid #edf0f2;">[[Lua接口/对象ID与GUID|对象 ID 与 GUID 的区别]]</div>
建议从以下内容开始:
<div style="padding:7px 0;">[[Lua接口/服务端与客户端调用范围|服务端与客户端的调用范围]]</div>
 
# [[客户端目录结构]]
# [[客户端启动流程]]
# [[客户端配置文件]]
# [[客户端Lua脚本]]
# [[OGRE]]
# [[客户端调试]]
# [[客户端源码分析]]
 
| style="width:50%;vertical-align:top;" |
 
==== 想研究服务端 ====
 
建议从以下内容开始:
 
# [[服务端目录结构]]
# [[服务端启动流程]]
# [[服务端配置文件]]
# [[服务端数据库]]
# [[服务端源码]]
# [[服务端编译]]
# [[服务端调试]]
 
|}
 
 
<!-- ==================== 常见问题 ==================== -->
 
<div style="font-size:22px;font-weight:bold;border-bottom:2px solid #8a673d;padding-bottom:7px;margin:28px 0 14px;">
常见问题
</div>
 
* [[客户端无法启动]]
* [[客户端崩溃问题]]
* [[服务端Segmentation fault]]
* [[Lua Wrong Param]]
* [[数据库连接失败]]
* [[MySQL表已满]]
* [[MongoDB认证失败]]
* [[OGRE模型版本不兼容]]
* [[32位程序升级64位常见问题]]
* [[Visual Studio编译错误大全]]
 
 
<!-- ==================== Wiki动态 ==================== -->
 
<div style="font-size:22px;font-weight:bold;border-bottom:2px solid #8a673d;padding-bottom:7px;margin:28px 0 14px;">
知识库动态
</div>
</div>
{| style="width:100%;"
| style="width:50%;vertical-align:top;" |
==== 最近更新 ====
查看:
'''[[Special:RecentChanges|最近更改]]'''
'''[[Special:NewPages|最新页面]]'''
'''[[Special:Log|操作日志]]'''
| style="width:50%;vertical-align:top;" |
==== 知识库统计 ====
当前共有:
'''{{NUMBEROFARTICLES}}''' 个内容页面
'''{{NUMBEROFFILES}}''' 个文件
'''{{NUMBEROFUSERS}}''' 位注册用户
'''{{NUMBEROFEDITS}}''' 次页面编辑
|}
<!-- ==================== 编辑知识库 ==================== -->
<div style="
margin-top:30px;
padding:20px;
background:#f7f4ed;
border:1px solid #d7c7ae;
border-radius:5px;
">
=== 📝 参与建设天龙知识库 ===
天龙知识库的目标是长期保存、整理和完善天龙八部相关技术资料。
创建内容时建议遵循:
* 一个技术问题对应一个独立页面
* 页面名称尽量准确、简洁
* 错误分析保留完整错误信息
* 源码分析注明客户端或服务端版本
* 不确定的研究结果应明确标记
* 重要资料尽可能记录来源和版本
'''[[Special:WantedPages|待创建页面]]'''
&nbsp;·&nbsp;
'''[[Special:AllPages|所有页面]]'''
&nbsp;·&nbsp;
'''[[Special:Categories|所有分类]]'''
</div>
</div>


 
<div style="display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:24px;padding:14px 0;border-top:1px solid #dbe3e6;font-size:12px;color:#657078;">
<!-- ==================== 页脚 ==================== -->
<div>天龙 Lua 函数手册</div>
 
<div>[[Lua接口/函数索引|函数索引]] · [[Lua接口/示例索引|调用示例]] · [[Special:RecentChanges|最近更新]]</div>
<div style="
text-align:center;
color:#777;
font-size:13px;
margin-top:35px;
padding:18px;
border-top:1px solid #ddd;
">
 
'''天龙知识库 · Waylee.net'''
 
专注于天龙八部经典版本、客户端、服务端及相关开发技术研究。
 
</div>
</div>
</div>
</div>

2026年9月7日 (一) 18:31的最新版本

TLBB LUA REFERENCE
天龙 Lua 函数手册
游戏内置接口的 Lua 用法:函数说明、参数含义、返回值与脚本示例。

接口分类

角色与属性

角色信息、等级、生命与经验。

物品与背包

物品查询、数量判断与道具操作。

任务与对话

任务状态、进度记录与 NPC 对话。

场景与活动

场景信息、位置、传送与活动控制。

技能与珍兽

技能、心法、状态效果与珍兽操作。

交互与界面

队伍、帮会、消息与界面脚本。

常用函数

服务端 Lua 接口
函数 Lua 调用 用途
GetName GetName(sceneId, selfId) 获取角色名称。
GetLevel GetLevel(sceneId, selfId) 获取角色等级。
GetHp GetHp(sceneId, selfId) 获取角色当前生命值。
GetItemCount GetItemCount(sceneId, selfId, itemTypeSn) 统计指定物品数量,包含已装备与背包中的物品。

示例与常见问题

读取角色信息

local name = GetName(sceneId, selfId)
local level = GetLevel(sceneId, selfId)
local hp = GetHp(sceneId, selfId)
适用于服务端脚本回调中的有效角色。sceneId 为当前场景 ID,selfId 为场景内对象 ID,取自当前回调参数。
天龙 Lua 函数手册