Скачать Hologram / Leaderboard API — Minecraft Моды — MetaMods

Hologram / Leaderboard API

Активный

Установок

0

Последнее обновление

10 месяцев назад

Версии

1.19 — 1.21.4
Сервер
Библиотеки
Технологические
Утилиты

Программный интерфейс Hologram / Leaderboard API

Визуализируйте динамический текст прямо в игровом пространстве Minecraft с помощью современной технологии пакетных голограмм.

Ключевые возможности

  • Анимированный текст - Создавайте движущиеся и меняющиеся текстовые эффекты
  • Поддержка MiniMessage - Используйте современное форматирование текста с цветами и стилями
  • Основано на пакетах - Высокоэффективная система отображения без нагрузки на сервер
  • Персонализированные голограммы - Каждый игрок видит свой уникальный контент
  • Динамические таблицы лидеров - Автоматическое создание рейтинговых досок
  • Гибкая настройка - Полный контроль над внешним видом и поведением
  • Прикрепление объектов - Возможность связывать голограммы с другими сущностями
  • Различные режимы отображения - Настройка под разные игровые ситуации

Важная информация: совместимость ограничена версиями 1.19.4+. Не работает с игроками Bedrock Edition. Это исключительно программная библиотека, требующая интеграции в ваши проекты.

Установка зависимостей

Вариант для Gradle

repositories {
  maven { url 'https://jitpack.io' }
}

dependencies {
  compileOnly 'com.github.max1mde:HologramAPI:1.4.7'
}

Вариант для Maven

<repository>
  <id>jitpack.io</id>
  <url>https://jitpack.io&lt;/url&gt;
</repository>

<dependency>
  <groupId>com.github.max1mde</groupId>
  <artifactId>HologramAPI</artifactId>
  <version>1.4.7</version>
  <scope>provided</scope>
</dependency>

Добавьте зависимость в plugin.yml:

depend:
  - HologramAPI

Практические примеры использования

Получение экземпляра менеджера

private HologramManager hologramManager;

@Override
public void onEnable() {
    hologramManager = HologramAPI.getManager().orElse(null);
    if (hologramManager == null) {
        getLogger().severe("Ошибка инициализации HologramAPI менеджера.");
        return;
    }
}

Создание базовой голограммы

TextHologram hologram = new TextHologram("уникальный_идентификатор")
    .setMiniMessageText("<aqua>Привет мир!")
    .setSeeThroughBlocks(false)
    .setBillboard(Display.Billboard.VERTICAL)
    .setShadow(true)
    .setScale(1.5F, 1.5F, 1.5F)
    .setTextOpacity((byte) 200)
    .setBackgroundColor(Color.fromARGB(60, 255, 236, 222).asARGB())
    .setAlignment(TextDisplay.TextAlignment.CENTER)
    .setViewRange(1.0)
    .setMaxLineWidth(200);

Управление отображением

hologramManager.spawn(hologram, <местоположение>);
hologramManager.remove(hologram);

Создание анимации

TextAnimation animation = new TextAnimation()
        .addFrame( "<red>Первый кадр")
        .addFrame("<green>Второй кадр")
        .addFrame("Третий кадр\n" +
                "Вторая строка в третьем кадре")
        .addFrame("Последний кадр");
animation.setDelay(20L); // 1 секунда
animation.setDelay(20L * 2);
hologramManager.applyAnimation(this.hologram, animation);

Создание таблицы лидеров

Map<Integer, String> leaderboardData = new LinkedHashMap<>() {{
    put(1, "ИгрокОдин:1000");
    put(2, "ИгрокДва:950");
    put(3, "ИгрокТри:900");
}};

TextHologram leaderboard = hologramManager.generateLeaderboard(
    локация,
    leaderboardData,
    HologramManager.LeaderboardOptions.builder()
        .title("Лучшие игроки")
        .showEmptyPlaces(true)
        .scale(1.2f)
        .maxDisplayEntries(10)
        .suffix("убийств")
        .build()
);
Участники проекта
maximde

maximde

Разработчик

Создан: 23 июн 2024

ID: 24808