SuperMartijn642's Config Lib [1.21.4] [1.20.6] [1.19.4]

 Библиотека конфигураций SuperMartijn642

Библиотека конфигураций SuperMartijn642 позволяет однократно задать настройки, после чего она автоматически обновляет значения при загрузке мира, синхронизирует параметры с клиентами и генерирует значения для исключительно клиентских или серверных частей.

Разделитель

Создание конфигурации:

Конфигурация создаётся с помощью ModConfigBuilder.

Просто создайте новый экземпляр через #ModConfigBuilder().

   ModConfigBuilderbuilder = new ModConfigBuilder();

Параметр добавляется в конфигурацию через ModConfigBuilder#define, принимающий имя и значение по умолчанию.

Для числовых значений (integer/double) также требуется указать минимальное и максимальное значение.

Пример блока кода;

ModConfigBuilder#define возвращает Supplier, который следует сохранить для доступа к значению.

   Supplier<Boolean> booleanValue = builder.define( "booleanValue", true );

   Supplier<Integer> integerValue = builder.define( "integerValue", 5, 0, 10 );

   Supplier<Double> doubleValue = builder.define( "doubleValue", 0.5, 0, 1);

   Supplier<ExampleEnum> enumValue = builder.define( "enumValue", ExampleEnum.VALUE_1 );

Комментарий к параметру добавляется через ModConfigBuilder#comment(String) перед его объявлением.

   Supplier<Boolean> valueWithComment = builder.comment( "Комментарий для 'valueWithComment'" ).define( "valueWithComment ", true );

По умолчанию значения обновляются при загрузке мира.

Это можно изменить на обновление только при запуске Minecraft через ModConfigBuilder#gameRestart().

   Supplier<Boolean> notReloadedValue = builder.comment( "Это значение не будет обновляться" ).define( "notReloadedValue", true );

Параметры в конфигах COMMON/SERVER синхронизируются с клиентами по умолчанию. Для отключения используйте ModConfigBuilder#dontSync().

   Supplier<Boolean> notSynchronizedValue = builder.comment( "Это значение не синхронизируется" ).define( "notSynchronizedValue", true );

Параметры можно группировать в категории.

ModConfigBuilder#push(String) создаёт категорию, ModConfigBuilder#pop() закрывает её.

   builder.push( "special" );

   Supplier<Boolean> specialValuebuilder.comment( "Этот параметр в категории 'special'" ).define( "specialValue", true );

   builder.pop();

Комментарий к категории добавляется через ModConfigBuilder#categoryComment(String).

   builder.push( "client" ).categoryComment( "Комментарий для категории 'client'" );

После объявления параметров необходимо вызвать ModConfigBuilder#build().

   builder.build();

Теперь значения будут автоматически обновляться и синхронизироваться. Для доступа используйте сохранённые Supplier.

Библиотека совместима с версиями Minecraft 1.12, 1.14, 1.15, и 1.16.

Разделитель

Пример мода:

Полный пример использования можно найти в тестовом моде.

Скачать SuperMartijn642's Config Lib

 
Тип Скачать Версия Загрузчик Обновлено Размер
ReleaseSuperMartijn642's Config Library 1.1.8 for Forge 1.181.18.1+2 NeoForge21 августа 2023201,7 КБ
ReleaseSuperMartijn642's Config Library 1.1.8 for Forge 1.191.19.3+4 NeoForge21 августа 2023201,7 КБ
ReleaseSuperMartijn642's Config Library 1.1.8 for Forge 1.201.20.1+1 NeoForge21 августа 2023201,7 КБ
ReleaseSuperMartijn642's Config Lib 1.1.8 for Fabric 1.181.18.1+2 Fabric21 августа 2023202,7 КБ
ReleaseSuperMartijn642's Config Lib 1.1.8 for Fabric 1.191.19.3+4 Fabric21 августа 2023202,7 КБ
ReleaseSuperMartijn642's Config Lib 1.1.8 for Fabric 1.201.20.1+1 Fabric21 августа 2023203,1 КБ
ReleaseSuperMartijn642's Config Lib 1.1.6 for Fabric 1.201.20.1+1 Fabric12 июня 2023203 КБ
ReleaseSuperMartijn642's Config Library 1.1.6 for Forge 1.201.20.1+1 Forge12 июня 2023201,1 КБ
ReleaseSuperMartijn642's Config Lib 1.1.6 for Fabric 1.181.18.1+2 Fabric17 апреля 2023202,5 КБ
ReleaseSuperMartijn642's Config Lib 1.1.6 for Fabric 1.191.19.3+4 Fabric17 апреля 2023202,5 КБ
Пожалуйста авторизуйтесь, чтобы оставить свой комментарий.