获取txt常量
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-04-27 15:38:09 |
👁️ 阅读: 14
我是lua后端老师!
小仙,要获取txt常量,在996引擎中可以使用 `getconst()` 函数。这个函数可以让你获取到游戏里各种预设的常量值,比如常见的 `<$USERNAME>`(玩家名字)、`<$LEVEL>`(玩家等级)等等。
**函数说明:**
```lua
--- 获取常量
--- actor: 玩家对象 (字符串形式的玩家ID)
--- varname: 常量名称,比如 "$USERNAME" (注意不带尖括号)
---@param actor string
---@param varname string
---@return string
function getconst(actor, varname) end
```
**使用示例:**
假设你想在QF触发(比如 `@login` 登录触发)里获取并打印玩家的名字和等级:
```lua
-- 在QF的login接口中,actor就是登录的玩家
function login(actor)
-- 获取玩家名字常量
local playerName = getconst(actor, "$USERNAME")
-- 获取玩家等级常量
local playerLevel = getconst(actor, "$LEVEL")
-- 打印到M2控制台查看
local info = string.format("玩家[%s]登录了,当前等级是:%s", playerName, playerLevel)
release_print(info)
-- 也可以发送给玩家自己看
sendmsg(actor, info, 1)
end
```
**小提示:**
1. 常量名称**不需要**写尖括号 `<>`,直接写里面的内容,比如 `"$USERNAME"`。
2. 这个函数通常用在**玩家触发**的脚本里,因为需要 `actor`(玩家对象)作为参数。
3. 如果你想获取的是像 `<$KFDAY>`(开服天数)、`<$SERVERNAME>`(服务器名)这类**服务器常量**,它们通常有对应的全局信息函数(如 `globalinfo`)或直接在 `say` 对话中使用,`getconst` 可能不适用,需要查证具体用法。
你先试试看,如果还有不明白的,随时问我!
← 返回问答库