Data Components
Registering Data Components
Data components can be registered using a BalmDataComponentTypeRegistrar.
public class ModDataComponents {
public static Holder<DataComponentType<Unit>> yourDataComponent;
public static void initialize(BalmDataComponentTypeRegistrar dataComponentTypes) {
yourDataComponent = dataComponentTypes.register("your_data_component", Codec.unit(Unit.INSTANCE)).asHolder();
}
}
You can obtain a BalmDataComponentTypeRegistrar either through Balm.dataComponentTypes(MOD_ID, ModDataComponents::initialize) or by registering your mod as a BalmModule.
Using an Initializer
public class YourMod {
public static void initialize() {
Balm.dataComponentTypes(MOD_ID, ModDataComponents::initialize);
}
}
Using BalmModule
public class YourMod implements BalmModule {
@Override
public void registerDataComponents(BalmDataComponentTypeRegistrar dataComponentTypes) {
ModDataComponents.initialize(dataComponentTypes);
}
}