diff options
author | iouter <3155186831@qq.com> | 2021-11-14 16:35:48 +0800 |
---|---|---|
committer | iouter <3155186831@qq.com> | 2021-11-14 16:35:48 +0800 |
commit | c2ea5172788af9a0c66ad122c22659da599d77a9 (patch) | |
tree | 71df2438c9a149cecfdb5d0555acadfb117362eb /src/Java/gtPlusPlus/xmod/gregtech | |
parent | 01f920644376e0d056b09fd6203035936af4e9ba (diff) | |
download | GT5-Unofficial-c2ea5172788af9a0c66ad122c22659da599d77a9.tar.gz GT5-Unofficial-c2ea5172788af9a0c66ad122c22659da599d77a9.tar.bz2 GT5-Unofficial-c2ea5172788af9a0c66ad122c22659da599d77a9.zip |
separate recipes of the multiblock mixer
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech')
3 files changed, 34 insertions, 2 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java index 7e36b19b04..468567bfe1 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java @@ -103,7 +103,7 @@ extends GregtechMeta_MultiBlockBase { @Override public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sMixerRecipes; + return gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map.sMultiblockMixerRecipes_GT; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java index b94dbfa51f..0d76114e57 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java @@ -93,7 +93,7 @@ public class RecipeGen_MultisUsingFluidInsteadOfCells { if (aFoundFluid == null) { for (ItemStack aBadStack : mItemsToIgnore) { if (doesItemMatchIgnoringStackSize(aInputStack, aBadStack)) { - continue recipe; // Skip this recipe entirely if we find an item we don't like + continue recipe; // Skip this recipe entirely if we find an item we don't like } } if (!isEmptyCell(aInputStack)) { @@ -152,6 +152,10 @@ public class RecipeGen_MultisUsingFluidInsteadOfCells { aNewFluidOutputs[i] = aOutputFluidsMap.get(i); } + //Skip repeatedly recipes + if (aOutputs.findRecipe(null, false, Integer.MAX_VALUE, aNewFluidInputs, aNewItemInputs) != null) + continue recipe; + // Add Recipe to map GT_Recipe aNewRecipe = new GTPP_Recipe( false, diff --git a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java index 1f41bf84e3..0b4649e414 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java @@ -785,6 +785,34 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { } + public boolean addMultiblockMixerRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUtick, int aSpecial){ + if (areItemsAndFluidsBothNull(aInputs, aFluidInputs) || areItemsAndFluidsBothNull(aOutputs, aFluidOutputs) || aEUtick <= 0) { + return false; + } + if (!ItemUtils.checkForInvalidItems(aInputs, aOutputs)) { + Logger.INFO("[Recipe] Error generating Large Mixer recipe."); + Logger.INFO("Inputs: "+ItemUtils.getArrayStackNames(aInputs)); + Logger.INFO("Fluid Inputs: "+ItemUtils.getArrayStackNames(aFluidInputs)); + Logger.INFO("Outputs: "+ItemUtils.getArrayStackNames(aOutputs)); + Logger.INFO("Fluid Outputs: "+ItemUtils.getArrayStackNames(aFluidOutputs)); + return false; + } + + GTPP_Recipe aRecipe = new GTPP_Recipe( + false, + aInputs, + aOutputs, + null, + aChances, + aFluidInputs, + aFluidOutputs, + aDuration, + aEUtick, + aSpecial); + GTPP_Recipe.GTPP_Recipe_Map.sMultiblockMixerRecipes_GT.addRecipe(aRecipe); + return true; + } + public boolean addAssemblerRecipeWithOreDict(Object aInput1, int aAmount1, Object aInput2, int aAmount2, ItemStack aOutput, int a1, int a2) { if (aInput1 instanceof String || aInput2 instanceof String) { int mCompleted = 0; |