Typho's Config
Активный0.0
Установок
Последнее обновление
Версии
Typho's Config - Легковесная система конфигурации для Minecraft

Typho's Config представляет собой облегченный мод для настройки параметров, который поддерживает отдельные конфигурации для каждого мира (аналогично игровым правилам) с синхронизацией на клиенте, а также независимую клиентскую конфигурацию.
Для игроков
Меню настроек мода отображается в виде квадратных кнопок с иконками на экране параметров, подобно реализации в модах Create и Quark. Внутри интерфейса организованы группы настроек - для перехода в группу нужно нажать на нее, а для возврата назад использовать клавишу Escape. Встроенные типы параметров включают логические значения true/false (переключаются кликом), целые числа и десятичные дроби (изменяются прокруткой).
Для разработчиков
Для подключения в файле build.gradle:
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
modImplementation "com.github.TheTypholorian:config:${project.typho_config_version}"
}
Затем в файле gradle.properties необходимо добавить строку typho_config_version=1.1 (актуальную версию можно найти во вкладке релизов)
После этого создайте RootConfigOptionGroup для вашего мода. Не требуется размещать его где-либо дополнительно, просто создайте объект:
RootConfigOptionGroup root = new RootConfigOptionGroup.Builder().env(EnvType.SERVER).id(Identifier.of(MOD_ID, "root")).icon(new ItemStack(Items.DIRT)).build();
Это создаст кнопку конфигурации для вашего мода в меню настроек. Для добавления целочисленного значения:
IntConfigOption someIntValue = new IntConfigOption.Builder().parent(root).id("some_int_value").value(16).icon(new ItemStack(Items.DIAMOND)).build();
Также доступно создание логических и вещественных параметров, включая ограниченные диапазонами целые числа и дроби. Для организации подгрупп с целью структурирования настроек используется аналогичный подход:
ConfigOptionGroup subGroup = new ConfigOptionGroup.Builder().parent(root).id("sub_group").icon(new ItemStack(Items.DIAMOND_SWORD)).build();
Серверные настройки автоматически синхронизируются с клиентом, а значения можно получать статически с помощью метода ConfigOption::get.