TabooLib 复合文本
用 fmsg 为聊天消息添加样式、悬停与点击。
消息写法
# 图标 action 字段
action: "fmsg '&7帮助:[打开菜单](color=b;hover=点击打开 hello;command=/invero menu open hello)'"点击消息中的“打开菜单”执行玩家命令,悬停时显示提示。命令需要玩家具备相应权限。
基本格式
普通文字[特殊文字](属性=值;另一属性=值;标志属性)普通文字方括号包住文本,圆括号设置属性;多个属性用分号隔开,属性与值用等号连接。b、i 等样式标志直接填写。
样式属性
| 属性 | 简写 | 示例 |
|---|---|---|
color | c | color=a、color=#47856e |
gradient | g | gradient=#47856e,#2c89a0 |
bold | b | b |
italic | i | i |
| 删除线 | s | s |
| 下划线 | u | u |
obf | o | o |
reset | r | reset |
font | f | font=minecraft:default |
newline | br、nl | br |
例如 [你好](color=a;b) 为绿色粗体。渐变颜色使用逗号分隔。b、i 等为样式标志,省略时不主动添加该样式。
点击与悬停
| 属性 | 作用 | 示例 |
|---|---|---|
command / cmd | 执行玩家命令 | command=/invero menu open hello |
suggest | 填入聊天输入框 | suggest=/invero menu open hello |
url | 打开链接 | url=https://github.com/0ruuid/Invero |
copy | 复制文字 | copy=hello |
hover / h | 显示悬停说明 | `hover=第一行 |
insertion / insert | Shift 点击插入文字 | insertion=hello |
同一文本块设置一种点击方式;悬停可以和点击组合。command 包含开头 /,suggest 只填入文字而不执行。
常用消息
action: "fmsg '[帮助](color=e;hover=第一行||第二行||第三行)'"悬停文字使用 || 或 <br> 换行。
不同样式与嵌套
[这一句有[强调](color=e;b)的部分](color=7)外层为整句设置灰色,内层将“强调”改为黄色粗体。多个独立点击区域使用并列文本块,各自填写属性。
引用悬停内容
action: |-
fmsg """[帮助](hover=@help)
@help=第一行[重点](color=e)
"""hover=@help 引用下面单独一行的 @help 内容。引用中可继续使用文字样式。
转义
需要原样显示 [、]、(、)、;、= 或反斜杠时,在其前面加反斜杠:
action: |-
fmsg '\[公告\] [查看](hover=包含\;分号与\=等号)'这条消息原样显示 [公告],悬停内容中保留分号和等号。多行 YAML 写法可保留这些转义字符。
客户端文字
| 写法 | 显示内容 |
|---|---|
[key.jump](keybind) | 跳跃键名称 |
[translation.key](translate) | 客户端语言键 |
[玩家名](score;objective=目标名) | 对应记分板目标的分数 |
这些文字需要对应的客户端语言键或记分板目标。
菜单示例
menu:
title: '&8两套富文本'
rows: 1
panels:
- layout:
- ' F M '
icons:
F:
material: BOOK
name: '&bTabooLib 复合文本'
action: "fmsg '[帮助](color=b;hover=这是一条 TabooLib 悬停消息)'"
M:
material: PAPER
name: '&aMiniMessage'
action: "mmsg '<green><hover:show_text:这里是MiniMessage>帮助</hover></green>'"下载 text-demo.yml。两个按钮分别发送复合文本与 MiniMessage,悬停效果显示在聊天消息上。
最后更新于