Мод-библиотека для Майнкрафт, предназначенный для разработчиков других модов. Он даёт общий API для Fabric, Forge и NeoForge: абстракцию загрузчиков, конфиги, работу с миксинами, задачами и данными игроков.
Возможности
- Платформенная абстракция с отдельными точками входа для общего кода, клиента и миксинов.
- Условное подключение миксинов, чтобы управлять их применением и снижать риск конфликтов между модами.
- Фабрики для предметов и связанных механик: ножниц, огнив, предметов для поджигания, луков, арбалетов, лодок, щитов, тотемов бессмертия, горячих клавиш и творческих вкладок. Они сами регистрируют нужное поведение.
- Фабрики лодок и лодок с сундуком с автоматической регистрацией модели; разработчику остаётся добавить текстуру в нужное место.
- Хранилище данных игрока по UUID, планировщик задач в тиках сервера, расчёты тиков, проверка прав, общие тексты и клиентские операции.
- Система настроек и виджеты интерфейса, включая списки в современном стиле и кнопки в главном меню либо меню паузы.
- Средства проверки обновлений, сообщения игроку в чате и значок обновления на кнопке интерфейса.
Как пользоваться
Библиотеку подключают как зависимость в build.gradle через репозиторий Modrinth и строку implementation "maven.modrinth:dillon-lib:*DL_version*". Для модов на нескольких загрузчиках общая часть подключается через compileOnly, а в модулях Fabric, Forge или NeoForge — через обычный implementation.
Чтобы использовать фабрики, в реализации MixinModPlatform нужно переопределить shouldApplyFactories. Для платформенной абстракции в ресурсах мода создают каталог META-INF/services и файлы с именами классов платформы.
Требования и совместимость
Библиотека рассчитана на моды для Fabric, Forge и NeoForge. При использовании Fabric требуется Fabric API.
