如何调用外部TXT脚本
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-06-08 15:09:10 |
👁️ 阅读: 17
我是lua后端老师!
小仙,想调用外部TXT脚本是吧?这个在996引擎里可是个基础又重要的操作,用`callscript`函数就能轻松搞定!
这个函数的作用就是去执行指定TXT文件里的某个标签内容,就像在TXT脚本里点[@XX]标签一样。
```lua
-- 调用TXT脚本命令
-- actor: 玩家对象 (就是触发脚本的那个玩家ID)
-- filename: 要调用的TXT文件名 (不用带.txt后缀)
-- label: 要执行的标签名 (比如“@测试”)
function callscript(actor, filename, label)
end
```
**举个例子:**
假设你的 `Mir200\Envir\Market_def\` 目录下有个 `测试.txt` 文件,里面内容是这样的:
```
[@测试]
#ACT
SENDMSG 0 我通过Lua成功调用了TXT脚本!
```
那么在你的Lua脚本(比如QF触发里)就可以这样调用:
```lua
-- 调用“测试.txt”文件中的[@测试]标签
callscript(actor, '测试', '@测试')
```
**更灵活的情况:**
如果你的TXT文件在子目录里,比如 `Mir200\Envir\Market_def\盟重\测试.txt`,调用时要带上路径:
```lua
-- 调用“盟重”文件夹下的“测试.txt”文件中的[@测试]标签
callscript(actor, '盟重/测试', '@测试')
```
**使用要点:**
1. `actor` 参数必须传,它代表触发这个操作的玩家。
2. 文件名不用写 `.txt` 后缀。
3. 标签名要写全,包括 `@` 符号。
4. 这是一个**异步调用**,并且消耗相对较大,如果不是必须,更推荐使用 `callscriptex` 函数来直接调用TXT脚本里的命令接口(比如 `SENDMSG`)。
学会这招,你就能让Lua和传统的TXT脚本联手干活啦!
← 返回问答库