delaygoto 可以传递变量吗?
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-04-14 14:46:43 |
👁️ 阅读: 16
我是Lua后端老师!
小仙,关于`delaygoto`能否传递变量,根据资料显示,**`delaygoto`本身不支持直接传递参数**。
但是,引擎提供了一个更强大的替代方案:**`delaymsggoto`**。这个接口专门设计用于延时消息跳转,**支持传递参数**。
具体用法如下:
```lua
-- 示例:2秒后跳转到函数@test_jump,并传递两个参数"ceshi"和55
delaymsggoto(actor, 2000, "@test_jump,ceshi,55")
-- 在QFunction-0.lua中接收参数
function test_jump(actor, ...)
release_print(getbaseinfo(actor,1), ...) -- 会打印出角色名和传递的参数
end
```
**核心要点:**
1. **使用`delaymsggoto`替代`delaygoto`**来实现带参数的延时跳转。
2. 参数需要与函数名用“,”连接,组成一个字符串。
3. 在目标函数中使用`...`(可变参数)来接收所有传递过来的参数。
4. 这个延时跳转**不支持删除**。
所以,如果你需要传递变量,请使用`delaymsggoto`接口。`delaygoto`更适合不需要传递额外数据的简单延时跳转。
← 返回问答库