diff --git a/src/main/java/emt/gthandler/common/loader/EMT_RecipeAdder.java b/src/main/java/emt/gthandler/common/loader/EMT_RecipeAdder.java index e4786c2..13ce65b 100644 --- a/src/main/java/emt/gthandler/common/loader/EMT_RecipeAdder.java +++ b/src/main/java/emt/gthandler/common/loader/EMT_RecipeAdder.java @@ -7,6 +7,7 @@ import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; import java.util.HashSet; @@ -17,10 +18,19 @@ import static gregtech.api.enums.GT_Values.RES_PATH_GUI; public class EMT_RecipeAdder { public static final GT_Recipe.GT_Recipe_Map sFusionCraftingRecipes = new GT_Recipe.GT_Recipe_Map(new HashSet<>(4), "emt.recipe.fusioncrafting", "Draconic Evolution Fusion Crafter", null, RES_PATH_GUI + "basicmachines/Default", 6, 1, 1, 0, 1, "Tier Casing: ", 1, E, false, false); - public static void addFusionCraftingRecipe(ItemStack[] inputs, ItemStack output, int aDuration, int aEUt, int aTier) { - sFusionCraftingRecipes.addRecipe(true, inputs, new ItemStack[]{output}, null, null, null, aDuration, aEUt, aTier); + public static void addFusionCraftingRecipe(ItemStack[] inputs, FluidStack[] fluidinputs, ItemStack[] outputs, FluidStack[] fluidoutputs, int aDuration, int aEUt, int aTier) { + sFusionCraftingRecipes.addRecipe(true, inputs, outputs, null, fluidinputs, fluidoutputs, aDuration, aEUt, aTier); } + public static void addFusionCraftingRecipe(ItemStack[] inputs, ItemStack output, int aDuration, int aEUt, int aTier) { + addFusionCraftingRecipe(inputs, null, new ItemStack[] { output }, null, aDuration, aEUt, aTier); + } + + public static void addFusionCraftingRecipe(ItemStack[] inputs, FluidStack fluidinput, ItemStack output, FluidStack fluidoutput, int aDuration, int aEUt, int aTier) { + addFusionCraftingRecipe(inputs, new FluidStack[] { fluidinput }, new ItemStack[] { output }, new FluidStack[] { fluidoutput }, aDuration, aEUt, aTier); + } + + public static void Run() { // CORES diff --git a/src/main/java/emt/gthandler/common/tileentities/machines/multi/DE_Fusion_Crafter.java b/src/main/java/emt/gthandler/common/tileentities/machines/multi/DE_Fusion_Crafter.java index b048054..a2cd6d6 100644 --- a/src/main/java/emt/gthandler/common/tileentities/machines/multi/DE_Fusion_Crafter.java +++ b/src/main/java/emt/gthandler/common/tileentities/machines/multi/DE_Fusion_Crafter.java @@ -24,6 +24,7 @@ import java.util.Arrays; import java.util.List; import static com.gtnewhorizon.structurelib.structure.StructureUtility.*; +import static gregtech.api.enums.GT_Values.V; import static gregtech.api.enums.Textures.BlockIcons.*; import static gregtech.api.util.GT_StructureUtility.ofHatchAdder; @@ -127,11 +128,12 @@ public class DE_Fusion_Crafter extends GT_MetaTileEntity_EnhancedMultiBlockBase< addOtherStructurePart("Tiered Fusion Casing", "Rings (5x5 hollow) at layer 4 and 7"). addStructureInfo("Bloody Ichorium for tier 1, Draconium for tier 2, etc"). addStructureInfo("To use tier 3 + you have to use fusion casing MK II"). - addMaintenanceHatch("Any bottom casing", 1). addInputBus("Any bottom casing", 1). - addOutputBus("Any bottom casing", 1). addInputHatch("Any bottom casing", 1). + addOutputBus("Any bottom casing", 1). + addOutputHatch("Any bottom casing", 1). addEnergyHatch("Any bottom casing", 1). + addMaintenanceHatch("Any bottom casing", 1). toolTipFinisher(EMT.NAME); return tt; } @@ -173,12 +175,12 @@ public class DE_Fusion_Crafter extends GT_MetaTileEntity_EnhancedMultiBlockBase< @Override public boolean checkRecipe(ItemStack aStack) { ItemStack[] tInputs = getCompactedInputs(); - //FluidStack[] tFluids = getCompactedFluids(); unused for now + FluidStack[] tFluids = getCompactedFluids(); if (tInputs.length > 0) { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - GT_Recipe tRecipe = EMT_RecipeAdder.sFusionCraftingRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], null, tInputs); + GT_Recipe tRecipe = EMT_RecipeAdder.sFusionCraftingRecipes.findRecipe(getBaseMetaTileEntity(), false, V[tTier], tFluids, tInputs); if ((tRecipe != null) && (this.mTierCasing >= tRecipe.mSpecialValue) && (tRecipe.isRecipeInputEqual(true, null, tInputs))) { calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 2, tVoltage); if (this.mEUt > 0)