B-Utils
Активный0.0
Установок
Последнее обновление
Версии
BlanketUtils
Примечание: Если вы видите эту модификацию в списке зависимостей другого мода, просто установите ее — подробное описание здесь не потребуется.
BlanketUtils представляет собой библиотеку инструментов, разработанную специально для создания модификаций на платформе Fabric. Она включает готовые решения для часто используемых функций, что значительно упрощает работу разработчиков:
Основные возможности
Управление конфигурационными файлами
- Поддержка JSONC формата с комментариями
- Автоматическое создание резервных копий и миграция конфигураций
- Отслеживание изменений в файлах и перезагрузка настроек без перезапуска игры
- Типобезопасная работа с конфигурацией через Kotlin data-классы
data class MyConfig(
override val version: String = "1.0.0",
override val configId: String = "mymod"
// Здесь размещаются параметры вашей конфигурации
) : ConfigData
val configManager = ConfigManager(
currentVersion = "1.0.0",
defaultConfig = MyConfig(),
configClass = MyConfig::class
)
Расширенная система команд
- Интуитивно понятный API для построения команд
- Встроенная система проверки прав доступа
- Поддержка подкоманд и их альтернативных названий
commandManager.command("mycommand", permission = "mymod.command") {
executes { context ->
// Логика основной команды
1
}
subcommand("subcommand") {
executes { context ->
// Логика подкоманды
1
}
}
}
Фреймворк для графических интерфейсов
Модуль для быстрого создания инвентарных графических интерфейсов включает:
- Базовые элементы и кнопки
- Обработка взаимодействий со слотами
- Динамическое обновление содержимого
CustomGui.openGui(
player = player,
title = "My GUI",
layout = listOf(/ Элементы интерфейса /),
onInteract = { context ->
// Обработка взаимодействий
}
)
Зависимости
Для работы требуется установка:
- Kotlin
- Fabric API
- Fabric Language Kotlin
Настройка проекта
Добавьте следующую строку в файл build.gradle.kts:
dependencies {
modImplementation("com.username:blanketutils:1.0.0")
}
Практические примеры
Работа с настройками
// Создание конфигурации
data class MyConfig(
override val version: String = "1.0.0",
override val configId: String = "mymod",
var debugMode: Boolean = false
) : ConfigData
// Инициализация менеджера конфигурации
val configManager = ConfigManager(
currentVersion = "1.0.0",
defaultConfig = MyConfig(),
configClass = MyConfig::class,
metadata = ConfigMetadata(
headerComments = listOf("Конфигурация моего мода")
)
)
// Получение текущих настроек
val currentConfig = configManager.getCurrentConfig()
Регистрация команд
val commandManager = CommandManager("mymod")
commandManager.command("hello", permission = "mymod.hello") {
executes { context ->
val source = context.source
CommandManager.sendSuccess(source, "Hello, World!")
1
}
}
Создание интерфейсов
CustomGui.openGui(
player = player,
title = "My GUI",
layout = listOf(
CustomGui.createNormalButton(
ItemStack(Items.DIAMOND),
"Нажми меня!",
listOf("Описание кнопки")
)
),
onInteract = { context ->
// Обработка нажатий кнопок
}
)
Наиболее актуальная версия исходного кода доступна на платформе GitHub в соответствующем репозитории разработчиков.
Добавление в проект
Добавьте эти строки в файл build.gradle.kts:
dependencies {
modCompileOnly(files("libs/blanketutils-1.0.0.jar"))
}
Для корректной работы удостоверьтесь, что файл BlanketUtils JAR расположен в директории libs вашего проекта.