
服务器链接发送器
基于原版1.21功能构建。为玩家提供可通过暂停菜单在游戏内打开的链接!
查看大图ServerLinksSender
背景
Minecraft 1.21 发布了一项新功能,允许原版服务器向原版客户端发送特定链接,客户端随后可以在暂停菜单中一个名为“服务器链接”的新选项下显示这些链接。在那里它们会被列出并且可以点击。
原版仅提供了发送“漏洞报告链接”的功能,玩家可以用它来报告服务器上的漏洞,但该系统实际上能够做更多事情!这个模组正是为此而生。
描述
ServerLinksSender 允许为这些链接配置自定义按钮标签和链接,因此你可以提供自己的链接和标签,例如服务器网站、投票链接、Discord 链接等,并在服务器运行时定期更新它们。 此外,它还支持 placeholder API 和 quicktext,便于实现简单且动态的文本组件。 最后,你可以利用 Predicate API 仅在特定条件下发送某些链接,例如,仅向拥有 staff 权限的玩家发送指向 staff 文档的链接,或者当玩家处于活动世界时发送包含活动规则的链接!
限制
首先,你无法使用任何形式的点击事件或悬停效果,因为这些内容用于按钮而非聊天。我还没有测试所有内容,但可以确认文本装饰和颜色可以正常工作。
此外,原版服务器链接界面在发送新链接时不会重新渲染。它只会在玩家实际打开它时重新渲染,而且只渲染一次,这意味着你无法使用像世界时间这样的超级动态占位符,因为当玩家查看它们时它们不会更新。
命令
| 命令 | 权限 | 描述 |
|---|---|---|
/reloadserverlinks [--force-update] |
serverlinks.main |
从文件重新加载配置,并可选择将新列表发送给所有当前在线的玩家;如果玩家只获取一次链接(详见下文),而你希望在不要求玩家重新登录的情况下更新链接,这尤其有用 |
配置示例
模组会创建一个默认配置,你可以将其作为基础使用,下面是一个类似的配置并附有一些说明(以 // 标记)
{
// 在列表再次发送给所有玩家之前应经过多少刻
// 如果你使用了在玩家游戏过程中会变化的占位符,就需要这个。将其设置为 20 意味着大约每秒发送一次。不建议低于 20。
// 将其设置为 -1 将禁用定期更新,意味着玩家只会在登录时(或使用 --force-update 时)获取列表
"refresh_interval": -1,
// 发送给所有用户且不带任何条件的链接列表
"global_server_links": {
"<red><bold>My cool link!": "https://google.com"
},
// 多组链接,如果玩家满足要求(例如拥有特定权限或处于特定世界),则可以在上述链接之外额外发送这些链接
"additional_links": [
{
"links": {
"<rb>My cool extra link!": "https://google.com"
},
// 有关如何使用此功能的更多信息,请参见此处 https://github.com/Patbox/PredicateAPI/blob/1.21/BUILTIN.md
"requirement": {
"type": "permission",
"permission": "example.permission",
"operator": 2
}
}
]
}
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。