基本信息
我的世界Java版本
平台
其他链接
搬运团队
详情信息
PAPIProxyBridge 是一个库桥接插件,你需要在后端和代理服务器上安装它,以便代理插件可以使用 PlaceholderAPI 占位符来格式化文本。
对于服务器所有者
这是一个库插件,旨在与实现其 API 的插件一起使用。无需进行任何配置。
在你的 Spigot(1.16.5+)服务器上,将最新版本的插件与 PlaceholderAPI 插件 一起安装,或者在你的 Fabric(1.19.3+)服务器上安装 PlaceholderAPI 模组,然后在你的 BungeeCord 或 Velocity 代理服务器上安装该插件。
请注意,此插件不是 PlaceholderAPI 的替代品。你仍然需要在你的 Spigot/Fabric 服务器上安装 PlaceholderAPI。
对于开发者
PAPIProxyBridge 公开了一个跨平台 API,让你可以使用 PlaceholderAPI 占位符来格式化文本。
将库添加到你的项目中
PAPIProxyBridge 可在 repo.william278.net
上获取(在此查看 Java 文档)。首先,将 Maven 存储库添加到你的 build.gradle
中:
repositories {
maven { url 'https://repo.william278.net/releases/' }
}
然后添加依赖项:
dependencies {
implementation 'net.william278:papiproxybridge:1.6'
}
示例用法
PlaceholderAPI
类公开了用于格式化占位符的 API。目前,仅支持单例非括号占位符(未来会有更多)。
使用 PlaceholderAPI.getInstance() 获取该类的实例,然后使用 #formatPlaceholders
方法在玩家(使用 UUID 指定以实现跨平台简单性)上格式化包含占位符的字符串。
该方法返回一个 CompletableFuture(因为我们不希望在代理与后端的玩家进行网络连接时锁定线程),你可以使用它来接受格式化后的字符串。
// 使用占位符格式化字符串
final PlaceholderAPI api = PlaceholderAPI.createInstance();
final UUID player = player.getUniqueId();
api.formatPlaceholders("Hello %player_name%!", player).thenAccept(formatted -> {
player.sendMessage(formatted);
});
切勿在对 #formatPlaceholders
的调用上调用 #join()
;这是不安全的。
PAPIProxyBridge 将已解析的请求缓存 30000 毫秒(30 秒),以避免在服务器的网络通道上导致过多的流量。你可以使用 PlaceholderAPI#setCacheExpiry(long)
方法调整缓存请求的时间长度。
还存在 #formatComponentPlaceholders
。此方法允许你提供包含占位符的字符串,并接收包含格式化文本的冒险组件,该文本可能包含格式和聊天事件。