
PAPIProxyBridge
Активный0.0
Установок
Последнее обновление
Версии
PAPIProxyBridge
PAPIProxyBridge представляет собой библиотечный плагин-мост, который устанавливается как на бэкенд-серверы, так и на прокси-серверы. Его основная функция — предоставление возможности плагинам прокси форматировать текст с использованием плейсхолдеров PlaceholderAPI.
Для владельцев серверов
Данный плагин является библиотечным компонентом, предназначенным для использования с другими плагинами, которые реализуют его API. Настройка не требуется.
Установите последнюю версию плагина вместе с плагином PlaceholderAPI на ваш Spigot-сервер (версия 1.16.5 и выше) или модом PlaceholderAPI на Fabric-сервер (версия 1.19.3 и выше). Затем установите плагин на ваш BungeeCord или Velocity прокси-сервер.
Важно отметить, что этот плагин не заменяет PlaceholderAPI. Вам по-прежнему необходимо устанавливать PlaceholderAPI на ваш Spigot/Fabric сервер.
Для разработчиков
PAPIProxyBridge предоставляет кроссплатформенный API, позволяющий форматировать текст с использованием плейсхолдеров PlaceholderAPI.
Подключение библиотеки к проекту
PAPIProxyBridge доступен в репозитории repo.william278.net
. Сначала добавьте 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);
});
Никогда не вызывайте #join()
на вызовах #formatPlaceholders
— это небезопасно.
PAPIProxyBridge кэширует разрешенные запросы на 30000 миллисекунд (30 секунд), чтобы избежать избыточного трафика по сетевым каналам вашего сервера. Вы можете настроить время кэширования запросов с помощью метода PlaceholderAPI#setCacheExpiry(long)
.
Также существует метод #formatComponentPlaceholders
. Этот метод позволяет передать строку, содержащую плейсхолдеры, и получить компонент adventure с отформатированным текстом, который может содержать форматирование и события чата.