Registrar
No reviews yet
SkyNotTheLimit's registration helper
Provides a framework or library for other mods to use.
Fabric is a mod loader for versions 1.14+ of Minecraft, particularly popular for client side and optimization mods.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description
Registrar
A registry helper for Minecraft modding
Adding Registrar To Your Project
Modrinth Maven
If you don't have the Modrinth maven in your repositories block, add it like so:
build.gradle:
maven {
url("https://api.modrinth.com/maven")
content {
includeGroupAndSubgroups("maven.modrinth")
}
}
or build.gradle.kts:
maven("https://api.modrinth.com/maven") {
content {
includeGroupAndSubgroups("maven.modrinth")
}
}
Then, add this project to your dependencies.
If you're using deobfuscated Minecraft:
api("maven.modrinth:registrar:${project.registrar_version}") // or implementation
include("maven.modrinth:registrar:${project.registrar_version}")
If you're using obfuscated Minecraft:
modApi("maven.modrinth:registrar:${project.registrar_version}") // or modImplementation
include("maven.modrinth:registrar:${project.registrar_version}")
mavenLocal
First, fork or download this repository and publish it to your mavenLocal.
Then, adding the following to your repositories block:
mavenLocal()
Then, add this project to your dependencies.
If you're using deobfuscated Minecraft:
api("survivalblock.atmosphere:registrar:${project.registrar_version}") // or implementation
include("survivalblock.atmosphere:registrar:${project.registrar_version}")
If you're using obfuscated Minecraft:
modApi("survivalblock.atmosphere:registrar:${project.registrar_version}") // or modImplementation
include("survivalblock.atmosphere:registrar:${project.registrar_version}")
Normal Registrants
To start, create a Registrant instance of the type you need, like so:
private static final BlockRegistrant BLOCK_REGISTRANT = new BlockRegistrant(ExampleMod.MOD_ID);
If a registrant of the required type does not exist, you can create one!
private static final Registrant RECIPE_SERIALIZER_REGISTRANT = new Registrant(ExampleMod.MOD_ID, BuiltinRegistries.RECIPE_SERIALIZER);
Feel free to open an issue to notify me if there is a need to add other common registrants.
To register an object, simply call Registrant#register.
REGISTRANT.register("name", THING);
Note that some registrant classes have special register methods.
For example, ItemRegistrant has a register method that takes three parameters.
ITEM_REGISTRANT.register("name", Item::new, new Item.Properties());
ItemRegistrant is also capable of registering BlockItems via separate register overloads.
Delayed Registrants
All normal registrants have a delayed counterpart, which can be found in the delayed package.
Delayed registrants are identical to normal registrants, with one exception:
DelayedRegistrant#consumeAll must be called to actually register the objects.
public static void init() {
REGISTRANT.consumeAll();
}
Dynamic Registrants
Dynamic registrants are registrants for dynamic registries.
Currently, only registrants for DamageTypes and Enchantments exist in the base library.
See these links for examples of registering damage types and enchantments.
To add the registrants for datagen, override buildRegistry in your mod's DataGeneratorEntrypoint like so:
@Override
public void buildRegistry(RegistrySetBuilder registryBuilder) {
DYNAMIC_REGISTRANT.bootstrap(registryBuilder);
}
where bootstrap is a shorthand for registryBuilder.addRegistry(REGISTRY_KEY, DYNAMIC_REGISTRANT::bootstrap);
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers