Lexiconfig avatar

Lexiconfig [1.20.6] [1.19.2] [1.18.2]

Обзор

Это API конфигурации, предназначенное для обеспечения совместимости с различными библиотеками конфигурации, а также для удобства использования в проектах с мультизагрузчиком, в основном для применения в моих модах.

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

Если вы пользователь мода, эта информация, скорее всего, не очень полезна для вас. Если же вы разработчик модов и хотели бы использовать Lexiconfig в своих проектах, перейдите к разделу Разработка.

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

Текущий и планируемый статус интеграций с различными библиотеками/API конфигурации:

❌ - Не интегрировано ✅ - Интегрировано ❓ - В процессе

СтатусМод
Cloth Config
oωo config
Configured
Forge Config Screens

Разработка

Этот мод содержит API, который можно использовать для размещения новых lexicon, прослушивания событий и т.д.

Зависимости

build.gradle

dependencies {
  implementation "com.codinglitch.lexiconfig:lexiconfig-api:API_VERSION_HERE"
}

Актуальную версию API можно посмотреть на https://versions.codinglitch.com.

Использование

Для размещения ваших собственных lexicon сначала необходимо создать свою Библиотеку. Для этого создайте новый класс, расширяющий класс Library, и аннотируйте его аннотацией LexiconLibrary.

@LexiconLibrary
public class MyNewLibrary extends Library {
  @Override
  public void shelveLexicons() {

  }
}

В среде Forge дополнительные изменения не требуются. При разработке для Fabric необходимо добавить этот класс как точку входа в fabric.mod.json.

fabric.mod.json

//...
"entrypoints": {
  "lexiconfig": [
    "com.path.to.MyNewLibrary"
  ]
}
//...

Следующий шаг — создание и размещение ваших lexicon. Создайте класс для lexicon с соответствующими аннотациями:

@Lexicon(name = MY_LEXICON_TITLE) // предпочтительно использовать ваш mod id в качестве имени
public class MyLexicon extends LexiconData {
  @LexiconEntry(comment = "Комментарий к простому полю!")
  public String mySimpleField = "content";

  @LexiconPage(comment = "Комментарий к новой категории!")
  public MyNewPage myNewPage = new MyNewPage();

  public static class MyNewPage extends LexiconPageData {
    @LexiconEntry(comment = "Это поле внутри страницы lexicon!")
    public Boolean myPageField = true;
  }
}

Заключительный шаг — размещение lexicon. Добавьте его экземпляр как поле в библиотеке и разместите в методе shelveLexicons.

@LexiconLibrary
public class MyNewLibrary extends Library {
  public static MyLexicon MY_LEXICON = new MyLexicon();

  @Override
  public void shelveLexicons() {
    LexiconfigApi.shelveLexicon(MY_LEXICON);
  }
}

Скачать Lexiconfig

 
Тип Скачать Версия Загрузчик Обновлено Размер
Release[FORGE] Lexiconfig 1.4.181.18.2+8 Forge9 мая 202552,9 КБ
Release[FORGE] Lexiconfig 1.4.18-11.18.2+8 Forge9 мая 202552,9 КБ
Release[NEOFORGE] Lexiconfig 1.4.181.18.2+8 NeoForge8 мая 202551,5 КБ
Release[FABRIC] Lexiconfig 1.4.181.18.2+8 Fabric7 мая 2025258,2 КБ
Release[FABRIC] Lexiconfig 1.4.171.18.2+6 Fabric2 мая 2025257,9 КБ
Release[FORGE] Lexiconfig 1.4.171.18.2+6 Forge2 мая 202552,7 КБ
Release[NEOFORGE] Lexiconfig 1.4.171.18.2+6 NeoForge2 мая 202551,3 КБ
Release[FORGE] Lexiconfig 1.4.17-a1.18.2+6 Forge2 мая 202552,7 КБ
Release[NEOFORGE] Lexiconfig 1.4.17-a1.18.2+6 NeoForge2 мая 202551,3 КБ
Release[FABRIC] Lexiconfig 1.4.17-a1.18.2+6 Fabric2 мая 2025257,9 КБ
Пожалуйста авторизуйтесь, чтобы оставить свой комментарий.