package lv.enes.mc.eris_alchemy; import lv.enes.mc.eris_alchemy.block.ErisAlchemyBlocks; import lv.enes.mc.eris_alchemy.block.entity.ErisAlchemyBlockEntities; import lv.enes.mc.eris_alchemy.menu.ErisAlchemyMenus; import lv.enes.mc.eris_alchemy.recipe.ErisAlchemyRecipeSerializers; import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroup; import net.minecraft.core.Registry; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; import org.quiltmc.loader.api.ModContainer; import org.quiltmc.qsl.base.api.entrypoint.ModInitializer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ErisAlchemy implements ModInitializer { public static final String ID = "eris_alchemy"; public static final Logger LOGGER = LoggerFactory.getLogger(ID); public static final CreativeModeTab ITEM_GROUP = FabricItemGroup.builder() .icon(() -> new ItemStack(ErisAlchemyItems.LOW_COVALENCE_DUST)) .title(Component.translatable("itemGroup.eris_alchemy.item_group")) .displayItems((context, entries) -> ErisAlchemyItems.consumeItems((id, item) -> entries.accept(item))) .build(); @Override public void onInitialize(ModContainer mod) { LOGGER.info("Hello World from {}!", mod.metadata().name()); if (!mod.metadata().id().equals(ID)) { throw new RuntimeException("Hardcoded mod ID doesn't match the configured one!"); } Registry.register(BuiltInRegistries.CREATIVE_MODE_TAB, new ResourceLocation(ID, "item_group"), ITEM_GROUP); ErisAlchemyBlocks.consumeBlocks((id, block) -> Registry.register(BuiltInRegistries.BLOCK, id, block)); ErisAlchemyBlockEntities.consumeBlockEntities((id, block) -> Registry.register(BuiltInRegistries.BLOCK_ENTITY_TYPE, id, block)); ErisAlchemyItems.consumeItems((id, item) -> Registry.register(BuiltInRegistries.ITEM, id, item)); ErisAlchemyMenus.consumeMenus((id, menu) -> Registry.register(BuiltInRegistries.MENU, id, menu)); ErisAlchemyRecipeSerializers.consumeSerializers((id, serializer) -> Registry.register(BuiltInRegistries.RECIPE_SERIALIZER, id, serializer)); } }