Скачать Armor Render Lib — Minecraft Моды — MetaMods

Armor Render Lib

Активный

Установок

0

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

3 года назад

Версии

1.18.2 — 1.19.2
Клиент
Fabric
Оружие и броня
Библиотеки

Armor Render Lib

Armor Render Lib представляет собой легковесную библиотеку-расширение для модуля fabric-rendering-v1 из Fabric API. Поскольку стандартная реализация Fabric API является довольно абстрактной, для некоторых специфических случаев применения требуется более целенаправленный подход. Данная библиотека была создана для многократного использования кода в различных модах автора.

Особенности

Библиотека отличается надежностью и использует минимальное количество целевых миксинов. Она полностью совместима с такими модами, как Cosmetic Armor и GeckoLib.

Интеграция в проект

Для подключения библиотеки к вашему проекту добавьте следующие строки в файл build.gradle:

repositories {
    maven {
        name = "Modrinth"
        url = "https://api.modrinth.com/maven"
        content {
            includeGroup "maven.modrinth"
        }
    }
}
dependencies {
    modImplementation "maven.modrinth:armor-render-lib:<version>"
    include "maven.modrinth:armor-render-lib:<version>"
}

Применение

Armor Render Lib добавляет слои отрисовки брони - объекты, содержащие динамическое расположение текстуры, цвет и параметр свечения, которые отвечают за визуализацию брони для предмета или нескольких предметов. По функциональности они схожи с методом ArmorRenderer#renderPart из Fabric API, но с возможностью динамического определения текстуры, цвета и эффекта свечения на основе ItemStack, LivingEntity и EquipmentSlot.

Регистрация слоев отрисовки осуществляется следующим образом:

public class ExampleMod implements ClientModInitializer {
    private static ArmorRenderProvider render(ItemStack stack, LivingEntity entity, EquipmentSlot slot) {
        // Динамический путь к текстуре
        String texture = "examplemod:textures/model/armor/example_chestplate.png";

        // Динамический цвет
        int color = 0xFF00FF;

        return data -> data.accept(texture, color, stack.hasGlint());
    }

    @Override
    public void onInitializeClient() {
        ArmorRenderLib.register(ExampleMod::render, Items.IRON_CHESTPLATE);
    }
}

Важные особенности

  • К одному предмету можно привязать несколько различных слоев отрисовки брони
  • Один и тот же слой отрисовки может использоваться для нескольких разных предметов
  • Регистрация слоя отрисовки для стандартного предмета брони (или другого броневого предмета) переопределяет стандартную отрисовку брони, что позволяет изменять текстуру, цвет и/или эффект зачарования стандартной брони
Участники проекта
clevernucleus

clevernucleus

Разработчик

Создан: 27 июл 2022

ID: 1664