SignLink - 动态告示牌文本显示
动态在告示牌上显示生成的文本和变量
Bukkit / Spigot
作者 bergerkiller
支持版本 1.8 - 1.20
服务器使用量
165
服务玩家数
82
下载量
14,435
插件详细介绍
SignLink 是一款连接插件与告示牌的桥梁插件,它允许玩家在告示牌上使用以 % 包裹的“变量”来动态显示信息,无需手动输入命令或进行繁琐操作。插件还内置了自定义文本和滚动动画等功能,所有告示牌数据均会保存,支持重载与服务器重启。
前置要求与链接
- 本插件需要 BKCommonLib 才能运行。
- 插件帮助与讨论 Discord:https://discord.gg/wvU2rFgSnw
- 适用于 1.7.2 R0.1/R0.2 的旧版构建可在上述链接中找到。
核心功能
- 变量显示:在告示牌文本中插入
%变量名%即可动态显示信息。 - 变量嵌套:一个变量的值可以包含其他变量(例如
%playername%),实现动态组合与别名功能。 - 滚动动画:可为变量设置向左、向右或闪烁的滚动效果。
- 持久化存储:告示牌位置与变量数据均保存于文件,重启服务器不丢失。
- 玩家专属变量:可为不同玩家设置不同的变量值。
- PlaceholderAPI 双向支持:既可在告示牌上显示 PAPI 变量,也可让其他插件通过
sl_前缀调用 SignLink 变量。
命令列表
命令 /variable 可简写为 /var。游戏内可使用 /help 查看详情。
基础控制
/togglesignupdate- 全局开启或关闭告示牌更新。/reloadsignlink- 重载values.yml中的变量值。
变量管理
/variable list- 列出所有可编辑的变量。/variable deleteall- 删除所有变量。/variable deleteunused- 删除所有未被告示牌使用的变量。/variable delete (force)- 删除当前编辑的变量(若未被使用)。添加force参数则强制删除。
编辑变量
/variable edit [name]- 切换到指定变量进行编辑,可与其他命令链式使用。/variable forplayers [names]- 设置当前编辑的变量仅对指定玩家生效。/variable set [value]- 设置当前编辑变量的值。/variable get- 获取当前编辑变量的值。/variable setticker [args]- 为变量设置滚动动画。参数格式:
- `/variable setticker [left/right/blink/none] [间隔]`- `/variable setticker [间隔] [left/right/blink/none]`- `/variable setticker [left/right/blink/none]`- `/variable setticker [间隔]`配置说明
values.yml
在此文件中设置变量的默认值、滚动行为与显示文本。
# 此处可设置插件的默认值。
# ticker 属性可设为 LEFT、RIGHT 或 NONE,用于设置信息滚动方向。
# tickerInterval 设置滚动更新的间隔(单位:刻,1刻=1/20秒)。
# value 是要显示或滚动的文本内容。
# 若要在文本中使用颜色,请使用 § 符号后跟 0-F 的值。
# 示例:§cRed 将显示为红色的“Red”字样。
# 你可以在网上找到所有颜色代码(它们可能使用 & 符号,请忽略!)
sign:
ticker: NONE
value: This is a regular message you can set and is updated only once.
test:
tickerInterval: 3
ticker: LEFT
value: 'This is a test message being ticked from right to left. '其他文件
linkedsigns.txt- 记录所有已关联的告示牌位置信息。config.yml- 主配置文件,可配置autoUpdateVariables列表以自动将指定 PAPI 变量应用于告示牌。
PlaceholderAPI 集成
在告示牌上使用 PAPI 变量
- 将所需的 PAPI 变量名添加到
config.yml的autoUpdateVariables列表中。 - 或使用命令
/var edit 变量名 papiautoupdate添加。 - 之后即可在告示牌上直接使用
%变量名%显示。
在其他插件中使用 SignLink 变量
在其他支持 PlaceholderAPI 的插件中,可通过 sl_ 前缀引用 SignLink 变量。
- 示例:
%sl_time%将显示 SignLink 中名为time的变量值。
长变量名简化
若 PAPI 变量名过长,可创建一个简短的 SignLink 变量作为别名。
- 示例:执行
/variable edit time set %server_time_long%,之后在告示牌上使用%time%即可显示长变量内容。
权限节点
所有权限默认仅 OP 可访问。
signlink.addsign- 允许玩家创建包含变量的告示牌。signlink.toggleupdate- 允许玩家使用/togglesignupdate命令。signlink.reload- 允许玩家使用/reloadsignlink命令。
高级用法
命令方块联动
可通过命令方块链式执行 /variable edit 与 /variable set 来改变变量值。
/variable edit varname set newvalue变量嵌套示例
自 1.16.5-v1 版本起,支持在变量值中嵌套其他变量。
/variable edit message set Hello, %playername%! It is %time%之后在告示牌(或其他变量)中使用 %message%,将自动替换为 %playername% 和 %time% 的实际值。此功能也可用于为长变量名创建短别名。
注意事项
- 若服务器因大量动态告示牌导致卡顿,可使用
/togglesignupdate临时关闭更新。 - 颜色代码需使用
§符号,而非&。 - 告示牌一旦放置并包含变量,其位置会自动记录,无需手动注册。
测试支持版本
版本分布
基本信息
插件名称
SignLink
作者
bergerkiller
平台
Bukkit / Spigot
支持版本
1.8 - 1.20
点赞数
1
Modrinth 下载
353
最近版本
1.21.5-v1
67
2.0.0
46
1.21.1-v1
15
1.20.4-v1
7
1.20.1-v1
7
2.0.0-SNAPSHOT
4
1.21.11-v1-SNAPSHOT
4
1.21.1-v2-SNAPSHOT
4
1.20.2-v1
2
1.21.5-v1-SNAPSHOT
1
1.21.1-v1-SNAPSHOT
1
1.20.4-v2-SNAPSHOT
1