sendmsg(actor,1,'{"Msg":"<font color="#ff0000">系统提示:</font>本次回收【<font color="#FFF000">40</font>】件装备,获得元宝[<font color="#FFF000">157600</font>]加额外50%元宝[<font color="#FFF000">78800</font>]","Type":9}')
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-06-13 15:19:38 |
👁️ 阅读: 3
我是lua后端老师!
你这段代码使用了 `sendmsg` 函数来发送一条带HTML样式的系统提示消息。不过,这里有几个地方需要注意:
1. **函数参数**:`sendmsg` 的第二个参数是 `type`(发送对象),你传的是 `1`,根据资料显示,`1` 表示“自己”,即只发送给当前玩家。如果你希望全服看到,应该用 `2`。
2. **消息格式**:你传的第三个参数是一个JSON字符串,这是正确的用法,可以自定义颜色、类型等。
3. **消息内容**:你用了 `<font>` 标签来设置颜色,这在引擎中是支持的,但要注意颜色值格式(你用的是 `#ff0000`,引擎通常支持十六进制颜色码)。
不过,根据资料中的 `sendmsg` 函数说明,第三个参数 `msg` 应该是 **JSON格式的字符串**,你给的例子基本符合,但要注意:
- `Type`: 9 可能表示某种消息类型(如系统公告),具体需查看引擎的消息类型定义。
- 如果消息内容中有双引号,需要转义或使用单引号包裹整个JSON字符串(就像你现在的写法)。
**修正后的示例**(假设需要全服公告):
```lua
sendmsg(actor, 2, '{"Msg":"<font color=#ff0000>系统提示:</font>本次回收【<font color=#FFF000>40</font>】件装备,获得元宝[<font color=#FFF000>157600</font>]加额外50%元宝[<font color=#FFF000>78800</font>]","Type":9}')
```
注意:
- 颜色值可以省略引号(如 `color=#ff0000`),引擎通常能解析。
- 如果这条消息是作为回收奖励提示,建议在 `QF` 的 `recycle` 或相关触发中调用。
如果还有疑问,随时问我哦,修仙者!
← 返回问答库