本文整理汇总了Java中mezz.jei.api.IModRegistry.addRecipeCatalyst方法的典型用法代码示例。如果您正苦于以下问题:Java IModRegistry.addRecipeCatalyst方法的具体用法?Java IModRegistry.addRecipeCatalyst怎么用?Java IModRegistry.addRecipeCatalyst使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mezz.jei.api.IModRegistry
的用法示例。
在下文中一共展示了IModRegistry.addRecipeCatalyst方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry)
{
for(MagibenchRegistry.Tier t : PurMag.INSTANCE.getMagibenchRegistry().getTiers())
{
registry.addRecipeCatalyst(new ItemStack(ItemRegistry.magibench, 1, t.getTier()), MagibenchRecipeCategory.ID);
registry.addRecipeCatalyst(new ItemStack(ItemRegistry.magibench, 1, t.getTier()), VanillaRecipeCategoryUid.CRAFTING);
}
registry.handleRecipes(AbstractMagibenchRecipeWrapper.class, recipe -> recipe, MagibenchRecipeCategory.ID);
List<AbstractMagibenchRecipeWrapper> lst = new ArrayList<>();
for(IRecipe rec : ForgeRegistries.RECIPES)
{
if(rec instanceof MagibenchRecipe)
lst.add(new MagibenchShapedRecipeWrapper((MagibenchRecipe)rec, registry.getJeiHelpers().getStackHelper()));
if(rec instanceof MagibenchShapelessRecipe)
lst.add(new MagibenchShapelessRecipeWrapper((MagibenchShapelessRecipe)rec, registry.getJeiHelpers().getStackHelper()));
}
registry.addRecipes(lst, MagibenchRecipeCategory.ID);
registry.getRecipeTransferRegistry().addRecipeTransferHandler(new MagibenchTransferInfo(MagibenchRecipeCategory.ID));
registry.getRecipeTransferRegistry().addRecipeTransferHandler(new MagibenchTransferInfo(VanillaRecipeCategoryUid.CRAFTING));
}
示例2: addCommonEntries
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
private void addCommonEntries(IModRegistry registry, JEIRecipe recipe, String moduleName, int inputSlots)
{
if (recipe.icon != null)
{
registry.addRecipeCatalyst(recipe.icon.getItemStack(), recipe.getUid());
}
if (recipe.recipeAreaWidth > 0 && recipe.recipeAreaHeight > 0)
{
registry.addRecipeClickArea(recipe.getGui().getGuiClass(),
recipe.recipeAreaX,
recipe.recipeAreaY,
recipe.recipeAreaWidth,
recipe.recipeAreaHeight,
recipe.getUid());
}
registry.getRecipeTransferRegistry().addRecipeTransferHandler(new TransferInfo(recipe.getUid(), moduleName, inputSlots));
}
示例3: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(final IModRegistry registry)
{
QBarRecipeHandler.RECIPES.forEach((name, category) -> registry.addRecipes(category.getRecipes(), name));
registry.addRecipeCatalyst(new ItemStack(QBarBlocks.ROLLING_MILL), QBarRecipeHandler.ROLLINGMILL_UID);
registry.addRecipeCatalyst(new ItemStack(QBarBlocks.SAWMILL), QBarRecipeHandler.SAW_MILL_UID);
QBarJEIRecipeWrapper.Builder rollingMillWrapper = QBarJEIRecipeWrapper.builder(registry.getJeiHelpers().getGuiHelper())
.background(GuiRollingMill.BACKGROUND).u(176).v(14).width(24).height(17);
registry.handleRecipes(RollingMillRecipe.class, rollingMillWrapper::create, QBarRecipeHandler.ROLLINGMILL_UID);
QBarJEIRecipeWrapper.Builder sawMillWrapper = QBarJEIRecipeWrapper.builder(registry.getJeiHelpers().getGuiHelper())
.background(GuiSawMill.BACKGROUND).u(176).v(14).width(24).height(17);
registry.handleRecipes(SawMillRecipe.class, sawMillWrapper::create, QBarRecipeHandler.SAW_MILL_UID);
registry.addRecipeClickArea(GuiRollingMill.class, 80, 35, 26, 20, QBarRecipeHandler.ROLLINGMILL_UID);
registry.addRecipeClickArea(GuiSteamFurnace.class, 80, 35, 26, 20, VanillaRecipeCategoryUid.SMELTING);
registry.addRecipeClickArea(GuiSawMill.class, 80, 35, 26, 20, QBarRecipeHandler.SAW_MILL_UID);
}
示例4: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry) {
jeiHelpers = registry.getJeiHelpers();
registry.addRecipes(ManaRecipes.recipesList, ManaCraftingCategory.UID);
registry.handleRecipes(ManaCraftingRecipe.class, new IRecipeWrapperFactory<ManaCraftingRecipe>() {
@Override
public IRecipeWrapper getRecipeWrapper(ManaCraftingRecipe recipe) {
return new ManaCraftingWrapper(recipe);
}
}, ManaCraftingCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Blocks.manaCraftingTable), ManaCraftingCategory.UID);
registry.addRecipeClickArea(GuiManaCraftingTable.class, 90, 35, 21, 14, ManaCraftingCategory.UID);
IIngredientBlacklist blacklist = registry.getJeiHelpers().getIngredientBlacklist();
blacklist.addIngredientToBlacklist(new ItemStack(Blocks.researchStoneBrick));
}
示例5: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(@Nonnull IModRegistry registry)
{
registry.handleRecipes(Dryable.DryingRecipe.class, DryingRecipeWrapper::wrap, DryingCategory.UID);
registry.addRecipes(Dryable.RECIPES, DryingCategory.UID);
if (Survivalist.rack != null)
{
registry.addRecipeCatalyst(new ItemStack(Survivalist.rack), DryingCategory.UID);
}
registry.handleRecipes(Choppable.ChoppingRecipe.class, ChoppingRecipeWrapper::wrap, ChoppingCategory.UID);
registry.addRecipes(Choppable.RECIPES, ChoppingCategory.UID);
if (Survivalist.chopping_block != null)
{
registry.addRecipeCatalyst(new ItemStack(Survivalist.chopping_block, 1,0), ChoppingCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Survivalist.chopping_block, 1, 4), ChoppingCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Survivalist.chopping_block, 1, 8), ChoppingCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Survivalist.chopping_block, 1, 12), ChoppingCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Survivalist.chopping_block2, 1, 0), ChoppingCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Survivalist.chopping_block2, 1, 4), ChoppingCategory.UID);
}
if (Survivalist.sawmill != null)
{
registry.addRecipeCatalyst(new ItemStack(Survivalist.sawmill), ChoppingCategory.UID);
}
}
示例6: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry)
{
registry.addRecipeClickArea(GuiEnderFurnace.class, 58, 35, 22, 15, VanillaRecipeCategoryUid.SMELTING);
// FIXME Add the custom fuels to a custom handler(?)
registry.addRecipeClickArea(GuiEnderFurnace.class, 34, 36, 15, 14, VanillaRecipeCategoryUid.FUEL);
registry.addRecipeClickArea(GuiCreationStation.class, 27, 11, 10, 10, VanillaRecipeCategoryUid.SMELTING);
registry.addRecipeClickArea(GuiCreationStation.class, 9, 29, 15, 14, VanillaRecipeCategoryUid.FUEL);
registry.addRecipeClickArea(GuiCreationStation.class, 203, 11, 10, 10, VanillaRecipeCategoryUid.SMELTING);
registry.addRecipeClickArea(GuiCreationStation.class, 217, 29, 15, 14, VanillaRecipeCategoryUid.FUEL);
registry.addRecipeClickArea(GuiCreationStation.class, 97, 36, 10, 10, VanillaRecipeCategoryUid.CRAFTING);
registry.addRecipeClickArea(GuiCreationStation.class, 133, 72, 10, 10, VanillaRecipeCategoryUid.CRAFTING);
registry.getRecipeTransferRegistry().addRecipeTransferHandler(new RecipeHandlerCreationStation<ContainerCreationStation>());
// Creation Station
registry.addRecipeCatalyst(new ItemStack(EnderUtilitiesBlocks.MACHINE_1, 1, 2),
VanillaRecipeCategoryUid.CRAFTING, VanillaRecipeCategoryUid.SMELTING, VanillaRecipeCategoryUid.FUEL);
// Ender Furnace
registry.addRecipeCatalyst(new ItemStack(EnderUtilitiesBlocks.ENDER_FURNACE, 1, 0),
VanillaRecipeCategoryUid.SMELTING, VanillaRecipeCategoryUid.FUEL);
}
示例7: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry) {
IJeiHelpers jeiHelpers = registry.getJeiHelpers();
registry.addRecipes(BasicThermopneumaticProcessingPlantRecipe.recipes, ModCategoryUid.THERMO_PNEUMATIC);
registry.addRecipes(PressureChamberRecipe.chamberRecipes, ModCategoryUid.PRESSURE_CHAMBER);
registry.addRecipes(new JEIPlasticMixerCategory(jeiHelpers).getAllRecipes(), ModCategoryUid.PLASTIC_MIXER);
registry.addRecipes(new JEIRefineryCategory(jeiHelpers).getAllRecipes(), ModCategoryUid.REFINERY);
registry.addRecipes(new JEIEtchingAcidCategory(jeiHelpers).getAllRecipes(), ModCategoryUid.ETCHING_ACID);
registry.addRecipes(new JEICompressedIronCategory(jeiHelpers).getAllRecipes(), ModCategoryUid.COMPRESSED_IRON_EXPLOSION);
registry.addRecipes(new JEIUVLightBoxCategory(jeiHelpers).getAllRecipes(), ModCategoryUid.UV_LIGHT_BOX);
registry.addRecipes(AssemblyRecipe.drillRecipes, ModCategoryUid.ASSEMBLY_CONTROLLER);
registry.addRecipes(AssemblyRecipe.laserRecipes, ModCategoryUid.ASSEMBLY_CONTROLLER);
registry.addRecipes(AssemblyRecipe.drillLaserRecipes, ModCategoryUid.ASSEMBLY_CONTROLLER);
registry.addRecipes(new JEIAmadronTradeCategory(jeiHelpers).getAllRecipes(), ModCategoryUid.AMADRON_TRADE);
registry.handleRecipes(PressureChamberRecipe.class,
JEIPressureChamberRecipeCategory.ChamberRecipeWrapper::new, ModCategoryUid.PRESSURE_CHAMBER);
registry.handleRecipes(BasicThermopneumaticProcessingPlantRecipe.class,
JEIThermopneumaticProcessingPlantCategory.ThermopneumaticRecipeWrapper::new, ModCategoryUid.THERMO_PNEUMATIC);
registry.handleRecipes(AssemblyRecipe.class,
JEIAssemblyControllerCategory.AssemblyRecipeWrapper::new, ModCategoryUid.ASSEMBLY_CONTROLLER);
registry.addRecipeClickArea(GuiAssemblyController.class, 68, 75, 24, 17, ModCategoryUid.ASSEMBLY_CONTROLLER);
registry.addRecipeClickArea(GuiPressureChamber.class, 100, 7, 40, 40, ModCategoryUid.PRESSURE_CHAMBER);
registry.addRecipeClickArea(GuiRefinery.class, 47, 21, 27, 47, ModCategoryUid.REFINERY);
registry.addRecipeClickArea(GuiThermopneumaticProcessingPlant.class, 30, 31, 48, 20, ModCategoryUid.THERMO_PNEUMATIC);
registry.addRecipeCatalyst(new ItemStack(Itemss.AMADRON_TABLET), ModCategoryUid.AMADRON_TRADE);
registry.addRecipeCatalyst(new ItemStack(Blockss.ASSEMBLY_CONTROLLER), ModCategoryUid.ASSEMBLY_CONTROLLER);
registry.addRecipeCatalyst(FluidUtil.getFilledBucket(new FluidStack(Fluids.ETCHING_ACID, 1000)), ModCategoryUid.ETCHING_ACID);
registry.addRecipeCatalyst(new ItemStack(Blockss.PLASTIC_MIXER), ModCategoryUid.PLASTIC_MIXER);
registry.addRecipeCatalyst(new ItemStack(Blockss.PRESSURE_CHAMBER_WALL), ModCategoryUid.PRESSURE_CHAMBER);
registry.addRecipeCatalyst(new ItemStack(Blockss.REFINERY), ModCategoryUid.REFINERY);
registry.addRecipeCatalyst(new ItemStack(Blockss.THERMOPNEUMATIC_PROCESSING_PLANT), ModCategoryUid.THERMO_PNEUMATIC);
registry.addRecipeCatalyst(new ItemStack(Blockss.UV_LIGHT_BOX), ModCategoryUid.UV_LIGHT_BOX);
registry.addAdvancedGuiHandlers(new GuiTabHandler());
}
示例8: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry) {
registry.addRecipes(CraftingRegistry.dawnstoneAnvilRecipes, DawnstoneAnvilCategory.UID);
registry.addRecipes(generateDawnstoneAnvilRecipes(), DawnstoneAnvilCategory.UID);
registry.addRecipes(CraftingRegistry.alchemicalMixingRecipes, AlchemicalMixerCategory.UID);
registry.handleRecipes(RecipeDawnstoneAnvil.class, DawnstoneAnvilWrapper::new, DawnstoneAnvilCategory.UID);
registry.handleRecipes(RecipeAlchemicalMixer.class, AlchemicalMixerWrapper::new, AlchemicalMixerCategory.UID);
registry.addRecipeCatalyst(new ItemStack(RegistryManager.dawnstone_anvil), DawnstoneAnvilCategory.UID);
registry.addRecipeCatalyst(new ItemStack(RegistryManager.mixer), AlchemicalMixerCategory.UID);
registry.addRecipeCatalyst(new ItemStack(Registry.ALCHEMY_GLOBE), AlchemicalMixerCategory.UID);
}
示例9: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@SuppressWarnings("deprecation")
@Override
public void register(IModRegistry registry) {
registry.handleRecipes(Ritual.class, new RitualWrapperFactory(registry.getJeiHelpers().getGuiHelper()), RitualCategory.UID);
registry.addRecipes(Ritual.REGISTRY.getValues().stream().sorted(BewitchmentJEIPlugin::compareRituals).collect(Collectors.toList()), RitualCategory.UID);
registry.addRecipeCatalyst(new ItemStack(ModItems.ritual_chalk, 1, BlockCircleGlyph.GlyphType.GOLDEN.ordinal()), RitualCategory.UID);
registry.handleRecipes(SpinningThreadRecipe.class, i -> new SpinnerWrapper(i), SpinnerCategory.UID);
registry.addRecipes(SpinningThreadRecipe.REGISTRY.getValues(), SpinnerCategory.UID);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.thread_spinner), SpinnerCategory.UID);
}
示例10: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
public void register(IModRegistry registry)
{
registry.addRecipes(RecipeHelper.ELEMENTAL_RECIPES, ARCANE_TRANSFIGURATION_UID);
registry.handleRecipes(IArcaneTransfigurationRecipe.class, WrapperArcaneTransfiguration::new, ARCANE_TRANSFIGURATION_UID);
registry.addRecipeCatalyst(new ItemStack(ModRegistry.ARCANE_TRANSFIGURATION_TABLE), ARCANE_TRANSFIGURATION_UID);
registry.addIngredientInfo(new ItemStack(ModRegistry.ANCIENT_PARCHMENT), ItemStack.class,
"desc.arcanemagic.ancient_parchment");
}
示例11: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry) {
registry.addRecipes(DefierRecipeRegistry.getRecipes(), DefierRecipeCategory.uid);
registry.handleRecipes(DefierRecipe.class, new DefierRecipeWrapperFactory(), DefierRecipeCategory.uid);
registry.addRecipeCatalyst(new ItemStack(ModItems.defier), DefierRecipeCategory.uid);
registry.addIngredientInfo(new ItemStack(ModItems.largemass), ItemStack.class, "When placed in a compressor, accounts for 1 million items (configurable). Useful to speed up compression but expensive.");
registry.addIngredientInfo(new ItemStack(ModItems.defiercore), ItemStack.class, "Obtained by placing the max amount of items into a compressor.");
registry.addIngredientInfo(new ItemStack(ModItems.speedstar), ItemStack.class, "Up to 8 can be placed onto an energy provider to decrease cooldown.");
registry.addIngredientInfo(new ItemStack(ModItems.energystar, 1, 0), ItemStack.class, "Tier 1 energy provider storage upgrade.");
registry.addIngredientInfo(new ItemStack(ModItems.energystar, 1, 1), ItemStack.class, "Tier 2 energy provider storage upgrade.");
registry.addIngredientInfo(new ItemStack(ModItems.energystar, 1, 2), ItemStack.class, "Tier 3 energy provider storage upgrade.");
registry.addIngredientInfo(new ItemStack(ModItems.energystar, 1, 3), ItemStack.class, "Tier 4 energy provider storage upgrade.");
}
示例12: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(@Nonnull IModRegistry reg) {
IJeiHelpers hlp = reg.getJeiHelpers();
reg.handleRecipes(FluxGenRecipeJEI.class, (t) -> t, ID_FLUXGEN);
reg.addRecipeClickArea(GuiFluxGen.class, 84, 34, 4, 18, ID_FLUXGEN);
reg.addRecipes(FluxGenRecipeMaker.getFluxGenRecipes(hlp), ID_FLUXGEN);
reg.addRecipeCatalyst(new ItemStack(MCFluxResources.FLUXGEN), ID_FLUXGEN);
addItemDescriptions(reg, MFTOOL, UPCHIP, Item.getItemFromBlock(ECHARGER), Item.getItemFromBlock(WET));
for (int i = 0; i < 4; i++) {
Item it = Item.getItemFromBlock(ENERGY_MACHINE);
ItemStack is = new ItemStack(it, 1, i);
reg.addIngredientInfo(is, ItemStack.class, it.getUnlocalizedName(is) + ".jeidesc");
}
}
示例13: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(@Nonnull IModRegistry registry) {
registry.handleRecipes(WinnowingMachineRecipe.class, new IRecipeWrapperFactory<WinnowingMachineRecipe>() {
@Override
@Nonnull
public IRecipeWrapper getRecipeWrapper(@Nonnull WinnowingMachineRecipe recipe) {
return new WinnowingRecipeWrapper(null, recipe);
}
}, WINNOWING);
registry.addRecipes(WinnowingRecipeWrapper.getRecipes(), WINNOWING);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.FAN_HOUSING), WINNOWING);
registry.addRecipeCatalyst(new ItemStack(ModBlocks.SEPARATOR), WINNOWING);
}
示例14: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(IModRegistry registry) {
this.registry = registry;
registry.handleRecipes(RitualRecipes.class, new JEIRitualHandler(), JEICategoryUIDs.RITUAL);
registry.handleRecipes(CauldronRecipes.class, new JEICauldronHandler(), JEICategoryUIDs.CAULDRON);
registry.handleRecipes(PedestalSlabRecipes.class, new JEIPedestalSlabHandler(), JEICategoryUIDs.PENDESTAL_SLAB);
registry.handleRecipes(HereticRitualRecipes.class, new JEIHereticRitualHandler(), JEICategoryUIDs.HERETIC_RITUAL);
registry.handleRecipes(MagicTableRecipe.class, new JEIMagicTableHandler(), JEICategoryUIDs.MAGIC_TABLE);
registry.getRecipeTransferRegistry().addRecipeTransferHandler(ContainerMagicTable.class, JEICategoryUIDs.MAGIC_TABLE, 0, 5, 5, 36);
registry.addRecipeClickArea(GuiMagicTable.class, 105, 77, 59, 34, JEICategoryUIDs.MAGIC_TABLE);
for(Item item : ForgeRegistries.ITEMS.getValues())
if(HarshenEnchantmetns.MIXUP.canApply(new ItemStack(item)))
{
if(item.isEnchantable(new ItemStack(item)))
continue;
ItemStack stack = new ItemStack(item);
stack.addEnchantment(HarshenEnchantmetns.MIXUP, 1);
registry.addAnvilRecipe(new ItemStack(item), HarshenUtils.toArray(HarshenUtils.getMixupBook()), HarshenUtils.toArray(stack));
}
registry.addRecipes(HarshenAPIHandler.allRitualRecipes, JEICategoryUIDs.RITUAL);
registry.addRecipes(HarshenAPIHandler.allCauldronRecipes, JEICategoryUIDs.CAULDRON);
registry.addRecipes(HarshenAPIHandler.allPedestalRecipes, JEICategoryUIDs.PENDESTAL_SLAB);
registry.addRecipes(HarshenAPIHandler.allHereticCauldronRecipes, JEICategoryUIDs.HERETIC_RITUAL);
registry.addRecipes(HarshenAPIHandler.allMagicTableRecipes, JEICategoryUIDs.MAGIC_TABLE);
registry.addRecipeCatalyst(new ItemStack(HarshenBlocks.HARSHEN_DIMENSIONAL_PEDESTAL), JEICategoryUIDs.RITUAL);
registry.addRecipeCatalyst(new ItemStack(HarshenItems.RITUAL_STICK), JEICategoryUIDs.CAULDRON);
registry.addRecipeCatalyst(new ItemStack(HarshenItems.RITUAL_STICK, 1, 1), JEICategoryUIDs.HERETIC_RITUAL);
registry.addRecipeCatalyst(new ItemStack(HarshenBlocks.PEDESTAL_SLAB), JEICategoryUIDs.PENDESTAL_SLAB);
registry.addRecipeCatalyst(new ItemStack(HarshenBlocks.HARSHEN_MAGIC_TABLE), JEICategoryUIDs.MAGIC_TABLE);
info(HarshenItems.HARSHEN_SOUL_FRAGMENT);
info(HarshenItems.HARSHEN_CRYSTAL);
info(HarshenItems.LIGHT_EMITTED_SEED);
info(HarshenItems.LIGHT_EMITTED_ESSENCE);
info(HarshenItems.SOUL_HARSHER_PICKAXE);
info(HarshenItems.PONTUS_WORLD_GATE_PARTS);
info(HarshenItems.BLOOD_ESSENCE);
info(HarshenItems.BLOOD_COLLECTOR);
info(HarshenItems.VALOR_BADGE);
info(HarshenItems.IRON_HEART);
info(HarshenItems.LIGHTNING_STAFF);
info(HarshenBlocks.BLOOD_VESSEL);
info(HarshenBlocks.HARSHEN_SOUL_FLOWER);
info(HarshenBlocks.BLOOD_BLOCK);
}
示例15: register
import mezz.jei.api.IModRegistry; //导入方法依赖的package包/类
@Override
public void register(@Nonnull IModRegistry reg) {
IJeiHelpers helper = reg.getJeiHelpers();
IGuiHelper guiHelper = helper.getGuiHelper();
reg.addRecipeCategories(
new TataraRecipeCategory(guiHelper),
new FireNetRecipeCategory(guiHelper),
new WaterNetRecipeCategory(guiHelper),
new SandNetRecipeCategory(guiHelper),
new SoakingBoxRecipeCategory(guiHelper),
new DryingBoxRecipeCategory(guiHelper),
new SpindleRecipeCategory(guiHelper),
new InfuserRecipeCategory(guiHelper),
new TransmutationRecipeCategory(guiHelper)
);
reg.handleRecipes(NetRecipe.class, NetRecipeWrapper::new, SandNetRecipeCategory.UID);
reg.handleRecipes(NetRecipe.class, NetRecipeWrapper::new, WaterNetRecipeCategory.UID);
reg.handleRecipes(NetRecipe.class, NetRecipeWrapper::new, FireNetRecipeCategory.UID);
reg.handleRecipes(SpindleRecipe.class, SpindleRecipeWrapper::new, SpindleRecipeCategory.UID);
reg.handleRecipes(CherryBoxRecipe.class, CherryBoxRecipeWrapper::new, SoakingBoxRecipeCategory.UID);
reg.handleRecipes(CherryBoxRecipe.class, CherryBoxRecipeWrapper::new, DryingBoxRecipeCategory.UID);
reg.handleRecipes(SmeltingRecipe.class, SmeltingRecipeWrapper::new, TataraRecipeCategory.UID);
reg.handleRecipes(TransmutationRecipe.class, TransmutationRecipeWrapper::new, TransmutationRecipeCategory.UID);
reg.handleRecipes(ShapedInfuserRecipe.class, recipe -> new InfuserRecipeWrapper(new ShapedOreRecipeWrapper(helper, recipe),recipe.getRecipeRequiredSpirit()), InfuserRecipeCategory.UID);
reg.handleRecipes(ShapelessInfuserRecipe.class, recipe -> new InfuserRecipeWrapper(new ShapelessOreRecipeWrapper(helper, recipe),recipe.getRecipeRequiredSpirit()), InfuserRecipeCategory.UID);
reg.addRecipes(CraftingManagerSandNet.getInstance().getRecipes(),SandNetRecipeCategory.UID);
reg.addRecipes(CraftingManagerWaterNet.getInstance().getRecipes(),WaterNetRecipeCategory.UID);
reg.addRecipes(CraftingManagerFireNet.getInstance().getRecipes(),FireNetRecipeCategory.UID);
reg.addRecipes(CraftingManagerSpindle.getInstance().getRecipes(),SpindleRecipeCategory.UID);
reg.addRecipes(CraftingManagerDryingBox.instance().getRecipes(),DryingBoxRecipeCategory.UID);
reg.addRecipes(CraftingManagerSoakingBox.instance().getRecipes(),SoakingBoxRecipeCategory.UID);
reg.addRecipes(CraftingManagerTatara.instance().getRecipes(),TataraRecipeCategory.UID);
reg.addRecipes(CraftingManagerInfuser.getInstance().getRecipeList(),InfuserRecipeCategory.UID);
reg.addRecipes(CraftingManagerInfuserTransmutation.instance().getRecipes(),TransmutationRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.tatara), TataraRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.cherrybox, 1, 0), SoakingBoxRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.cherrybox, 1, 1), DryingBoxRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.nettedScreen), WaterNetRecipeCategory.UID, SandNetRecipeCategory.UID, FireNetRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.spindle), SpindleRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.infuser), InfuserRecipeCategory.UID);
reg.addRecipeCatalyst(new ItemStack(ModBlocks.infuser), TransmutationRecipeCategory.UID);
reg.addRecipeClickArea(GuiTatara.class, 78, 32, 28, 23, TataraRecipeCategory.UID);
reg.addRecipeClickArea(GuiSoakingBox.class, 78, 32, 28, 23, SoakingBoxRecipeCategory.UID);
reg.addRecipeClickArea(GuiDryingBox.class, 78, 32, 28, 23, DryingBoxRecipeCategory.UID);
reg.addRecipeClickArea(GuiInfuser.class, 94, 35, 19, 16, InfuserRecipeCategory.UID);
}