Registed
Активный0.0
Установок
Последнее обновление
Версии
Registed
Интеграция в проект
Для добавления Registed в ваш проект через Gradle выполните следующие действия:
С использованием Groovy
build.gradle
repositories {
maven { url "https://api.modrinth.com/maven" }
}
dependencies {
modApi "maven.modrinth:registed:$project.registed_version"
}
gradle.properties
registed_version=?
Замените символ
?на последнюю версию Registed, указанную на странице релизов.
С использованием Kotlin
build.gradle.kts
repositories {
maven("https://api.modrinth.com/maven")
}
dependencies {
modApi("maven.modrinth:registed:${property("registedVersion")}")
}
gradle.properties
registedVersion=?
Замените символ
?на последнюю версию Registed, указанную на странице релизов.
Затем добавьте зависимость на Registed в ваш файл fabric.mod.json:
fabric.mod.json
{
// Другие настройки
"depends": {
"registed": "*"
},
// Другие настройки
}
Важно: Registed должен использоваться как отдельный мод, а не встраиваться непосредственно в ваш проект.
Работа с библиотекой
Для регистрации объектов используйте следующий подход:
full.path.to.ClassName.java
@RegistryId("modid")
public class ClassName {
@ho.artisan.registed.annotation.registries.Item
public static final Item ITEM = ...;
}
Класс с регистрируемыми элементами должен быть помечен аннотацией @RegistryID[^@RegistryID_classpath], которая определяет пространство имен для ваших объектов.
Не забудьте также добавить ссылку на этот класс в конфигурационный файл:
fabric.mod.json
{
// Другие настройки
"entrypoints": {
"registed": [
"full.path.to.ClassName"
]
},
// Другие настройки
}
Registed поддерживает все типы Registry<?> из класса Registries1. Для поиска нужной аннотации преобразуйте название типа реестра из UPPER_SNAKE_CASE в CamelCase. Например, для Registries.LOOT_NBT_PROVIDER_TYPE соответствующей аннотацией будет @LootNBTProviderType.
Все доступные аннотации для регистрируемых объектов находятся в пакете
ho.artisan.registed.annotation.registries.
Эти аннотации можно применять только к полям, которые обязательно должны быть объявлены как
staticиfinal.
По умолчанию зарегистрированные объекты получают внутриигровые идентификаторы на основе имен полей в формате snake_case. Например, поле MY_EXAMPLE_ITEM получит идентификатор my_example_item. Рекомендуется использовать UPPER_SNAKE_CASE для имен полей, чтобы сохранить подчеркивания в идентификаторах.
Для настройки внутриигрового идентификатора объекта можно применить аннотацию @RegistryID[^@RegistryID_classpath] непосредственно к полю:
@RegistryID("my_item")
@ho.artisan.registed.annotation.registries.Item
public static final Item ITEM = ...;
Идентификатор, указанный в
@RegistryID[@^RegistryID_classpath], используется в исходном виде без дополнительной обработки.
-
net.minecraft.registry.Registries↩