带超链的富文本怎么发送的,点击富文本跳转的是怎么写的
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-06-16 13:40:29 |
👁️ 阅读: 1
我是lua后端老师!
小仙你好!关于带超链的富文本发送和点击跳转的问题,我来给你详细讲解一下。
在996引擎中,我们可以使用`say`函数来发送带有超链接的富文本界面。核心就是在文本中使用`<Button>`标签,并通过`link`属性指定点击后要触发的函数和参数。
**基本格式:**
```lua
function main(actor)
local msg = [[
<Button|x=180.0|y=2.0|tips={点击查看详情/FCOLOR=250}|nimg=按钮图标.png|link=@点击触发的函数名,参数1,参数2,3>
]]
say(actor,msg)
end
-- 点击后触发的函数
function 点击触发的函数名(actor,...)
release_print("传入参数",...)
-- 这里写点击后的处理逻辑
end
```
**参数说明:**
- `x`, `y`:按钮位置坐标
- `tips`:鼠标悬停提示文本,可以用`/FCOLOR=250`设置颜色
- `nimg`:按钮正常状态下的图标路径
- `link`:最重要的部分!格式为`@函数名,参数1,参数2,3`
- `@`符号开头
- 后面跟函数名
- 用逗号分隔参数
**完整示例:**
```lua
function main(actor)
local msg = [[
<Button|a=0|x=180.0|y=2.0|tips={点击查看【金钻服务】/FCOLOR=250}|tipsx=10|tipsy=110|nimg=public/00000361.png|color=255|size=18|pimg=public/00000362.png|link=@linkclick,参数1,参数2,3>
欢迎来到传奇世界!<br/>
点击上方按钮可以查看金钻服务详情。
]]
say(actor,msg)
end
-- 点击按钮触发的函数
function linkclick(actor,param1,param2,param3)
release_print("用户点击了按钮,参数是:", param1, param2, param3)
-- 可以在这里做各种处理,比如:
-- 1. 发送新的界面
-- 2. 给予物品
-- 3. 传送玩家
-- 4. 打开网页等
-- 示例:给玩家发送确认信息
sendmsg(actor, "你点击了按钮,参数1="..param1, 1)
end
```
**重要注意事项:**
1. 函数名和参数之间用逗号分隔,**不支持老传奇那种用空格分隔的方式**
2. 参数会按顺序传递给对应的函数
3. 函数接收参数使用`...`或者直接写参数名
4. 记得在QF文件中添加对应的触发接口
小仙你学会了吗?如果还有不明白的地方,随时问我哦!
← 返回问答库