|
2 | 2 |
|
3 | 3 | import exnihilocreatio.ModItems; |
4 | 4 |
|
| 5 | +import exnihilocreatio.compatibility.jei.crucible.CrucibleRecipe; |
| 6 | + |
5 | 7 | import gregtech.api.recipes.ModHandler; |
6 | 8 | import gregtech.api.recipes.builders.SimpleRecipeBuilder; |
7 | 9 | import gregtech.api.recipes.chance.output.ChancedOutputLogic; |
|
13 | 15 | import gregtech.api.unification.ore.OrePrefix; |
14 | 16 | import gregtech.api.unification.stack.UnificationEntry; |
15 | 17 | import gregtech.common.blocks.MetaBlocks; |
| 18 | +import gregtech.integration.exnihilo.ExNihiloConfig; |
16 | 19 | import gregtech.integration.exnihilo.ExNihiloModule; |
17 | 20 | import gregtech.loaders.recipe.MetaTileEntityLoader; |
18 | 21 |
|
|
25 | 28 | import exnihilocreatio.registries.manager.ExNihiloRegistryManager; |
26 | 29 | import exnihilocreatio.registries.types.Siftable; |
27 | 30 |
|
| 31 | +import net.minecraftforge.fluids.FluidUtil; |
| 32 | + |
28 | 33 | import java.util.ArrayList; |
29 | 34 | import java.util.Arrays; |
| 35 | +import java.util.List; |
30 | 36 |
|
| 37 | +import static gregtech.api.recipes.RecipeMaps.EXTRACTOR_RECIPES; |
31 | 38 | import static gregtech.api.unification.material.Materials.*; |
32 | 39 | import static gregtech.api.unification.ore.OrePrefix.stick; |
33 | 40 | import static gregtech.api.unification.ore.OrePrefix.stone; |
@@ -128,5 +135,25 @@ public static void registerExNihiloRecipes() { |
128 | 135 | builder.buildAndRegister(); |
129 | 136 | } |
130 | 137 | } |
| 138 | + |
| 139 | + // Mirror Crucible recipes to Extractor RecipeMap if enabled in config |
| 140 | + if (ExNihiloConfig.crucibleExtractorRecipes) { |
| 141 | + for (CrucibleRecipe recipe : ExNihiloRegistryManager.CRUCIBLE_STONE_REGISTRY.getRecipeList()) { |
| 142 | + if (FluidUtil.getFluidContained(recipe.getFluid()) != null) { |
| 143 | + for (List<ItemStack> listStack : recipe.getInputs()) { |
| 144 | + for (ItemStack stack : listStack) { |
| 145 | + if (EXTRACTOR_RECIPES.findRecipe(4, Arrays.asList(stack), new ArrayList<>(), true) != |
| 146 | + null) |
| 147 | + continue; |
| 148 | + EXTRACTOR_RECIPES.recipeBuilder() |
| 149 | + .inputs(stack) |
| 150 | + .fluidOutputs(FluidUtil.getFluidContained(recipe.getFluid())) |
| 151 | + .duration(100) |
| 152 | + .buildAndRegister(); |
| 153 | + } |
| 154 | + } |
| 155 | + } |
| 156 | + } |
| 157 | + } |
131 | 158 | } |
132 | 159 | } |
0 commit comments