diff options
Diffstat (limited to 'src/main/java/gregtech/api/util')
4 files changed, 69 insertions, 28 deletions
diff --git a/src/main/java/gregtech/api/util/GT_ModHandler.java b/src/main/java/gregtech/api/util/GT_ModHandler.java index 58cadd9d7d..8097f82dea 100644 --- a/src/main/java/gregtech/api/util/GT_ModHandler.java +++ b/src/main/java/gregtech/api/util/GT_ModHandler.java @@ -9,6 +9,7 @@ import static gregtech.api.enums.GT_Values.M; import static gregtech.api.enums.GT_Values.RA; import static gregtech.api.enums.GT_Values.V; import static gregtech.api.enums.GT_Values.W; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; import java.util.ArrayList; import java.util.Arrays; @@ -597,28 +598,34 @@ public class GT_ModHandler { return true; } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1) { return addPulverisationRecipe(aInput, aOutput1, null, 0, false); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, 100, false); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, aChance, false); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, boolean aOverwrite) { return addPulverisationRecipe(aInput, aOutput1, null, 0, aOverwrite); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, boolean aOverwrite) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, 100, aOverwrite); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance, boolean aOverwrite) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, aChance, null, 0, aOverwrite); @@ -627,6 +634,7 @@ public class GT_ModHandler { /** * Adds Several Pulverizer-Type Recipes. */ + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance2, ItemStack aOutput3, int aChance3, boolean aOverwrite) { aOutput1 = GT_OreDictUnificator.get(true, aOutput1); @@ -644,6 +652,7 @@ public class GT_ModHandler { return true; } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInputItem, ItemStack[] aOutputArray, int[] aChanceArray, int aEUt, int aRecipeDurationInTicks) { @@ -830,6 +839,7 @@ public class GT_ModHandler { /** * IC2-ThermalCentrifuge Recipe. Overloads old Recipes automatically */ + @Deprecated public static boolean addThermalCentrifugeRecipe(ItemStack aInput, int[] aChances, int aHeat, Object... aOutput) { if (aInput == null || aOutput == null || aOutput.length <= 0 || aOutput[0] == null) return false; if (!GregTech_API.sRecipeFile.get(ConfigCategories.Machines.thermalcentrifuge, aInput, true)) return false; @@ -844,6 +854,7 @@ public class GT_ModHandler { return true; } + @Deprecated public static boolean addThermalCentrifugeRecipe(ItemStack aInput, int aHeat, Object... aOutput) { if (aInput == null || aOutput == null || aOutput.length <= 0 || aOutput[0] == null) return false; if (!GregTech_API.sRecipeFile.get(ConfigCategories.Machines.thermalcentrifuge, aInput, true)) return false; @@ -909,6 +920,7 @@ public class GT_ModHandler { /** * IC2-Compressor Recipe. Overloads old Recipes automatically */ + @Deprecated public static boolean addCompressionRecipe(ItemStack aInput, ItemStack aOutput) { return addCompressionRecipe(aInput, aOutput, 300, 2); } @@ -916,6 +928,7 @@ public class GT_ModHandler { /** * IC2-Compressor Recipe. Overloads old Recipes automatically */ + @Deprecated public static boolean addCompressionRecipe(ItemStack aInput, ItemStack aOutput, int duration, int EUPerTick) { aOutput = GT_OreDictUnificator.get(true, aOutput); if (aInput == null || aOutput == null || GT_Utility.areStacksEqual(aInput, aOutput, true)) return false; diff --git a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java index bb061eb2dc..bdd09f0a34 100644 --- a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java +++ b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java @@ -36,15 +36,13 @@ public class GT_RecipeBuilder { public static final int BUCKETS = 1000; static { - boolean tmp; if (System.getProperties() .containsKey("gt.recipebuilder.debug")) { - tmp = Boolean.getBoolean("gt.recipebuilder.debug"); + DEBUG_MODE = Boolean.getBoolean("gt.recipebuilder.debug"); } else { // turn on debug by default in dev mode - tmp = (Boolean) Launch.blackboard.get("fml.deobfuscatedEnvironment"); + DEBUG_MODE = (Boolean) Launch.blackboard.get("fml.deobfuscatedEnvironment"); } - DEBUG_MODE = tmp; PANIC_MODE = DEBUG_MODE && Boolean.getBoolean("gt.recipebuilder.panic"); } @@ -273,6 +271,11 @@ public class GT_RecipeBuilder { return this; } + public GT_RecipeBuilder duration(long duration) { + this.duration = (int) duration; + return this; + } + public GT_RecipeBuilder eut(int eut) { this.eut = eut; return this; diff --git a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java index a9e8f5cc09..2a5a251503 100644 --- a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java +++ b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java @@ -3,6 +3,10 @@ package gregtech.api.util; import static gregtech.api.enums.GT_Values.*; import static gregtech.api.enums.Materials.*; import static gregtech.api.enums.Materials.Void; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalArcFurnace; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import java.lang.reflect.Field; @@ -302,17 +306,24 @@ public class GT_RecipeRegistrator { boolean tHide = !tIron && GT_Mod.gregtechproxy.mHideRecyclingRecipes; if (aData.mPrefix == OrePrefixes.toolHeadDrill) { - RA.addArcFurnaceRecipe( - aStack, - new ItemStack[] { GT_OreDictUnificator.getIngotOrDust(aData.mMaterial) }, - null, - 90, - (int) Math.max(16, tAmount / M), - tHide); + GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder(); + + recipeBuilder.itemInputs(aStack) + .itemOutputs(GT_OreDictUnificator.getIngotOrDust(aData.mMaterial)) + .fluidInputs(Materials.Oxygen.getGas(90)) + .noFluidOutputs() + .duration(4 * SECONDS + 10 * TICKS) + .eut(Math.max(16, tAmount / M)); + if (tHide) { + recipeBuilder.hidden(); + } + recipeBuilder.addTo(UniversalArcFurnace); } else { - RA.addArcFurnaceRecipe( - aStack, - new ItemStack[] { GT_OreDictUnificator.getIngotOrDust(aData.mMaterial), + GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder(); + + recipeBuilder.itemInputs(aStack) + .itemOutputs( + GT_OreDictUnificator.getIngotOrDust(aData.mMaterial), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(0)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(1)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(2)), @@ -320,11 +331,15 @@ public class GT_RecipeRegistrator { GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(5)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(6)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(7)), - GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(8)) }, - null, - (int) Math.max(16, tAmount / M), - 90, - tHide); + GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(8))) + .fluidInputs(Materials.Oxygen.getGas(90)) + .noFluidOutputs() + .duration(8 * SECONDS + 10 * TICKS) + .eut((int) Math.max(16, tAmount / M)); + if (tHide) { + recipeBuilder.hidden(); + } + recipeBuilder.addTo(UniversalArcFurnace); } } @@ -378,15 +393,26 @@ public class GT_RecipeRegistrator { tHide); } - if (aAllowHammer) for (MaterialStack tMaterial : aData.getAllMaterialStacks()) + if (!aAllowHammer) { + return; + } + + for (MaterialStack tMaterial : aData.getAllMaterialStacks()) { if (tMaterial.mMaterial.contains(SubTag.CRYSTAL) && !tMaterial.mMaterial.contains(SubTag.METAL) && tMaterial.mMaterial != Materials.Glass) { - if (RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1, aStack), - GT_OreDictUnificator.getDust(aData.mMaterial), - 200, - 30)) break; - } + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1, aStack)) + .itemOutputs(GT_OreDictUnificator.getDust(aData.mMaterial)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(sHammerRecipes); + + break; + } + } + } /** diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java index 8d9d0814dc..91d5a90fe6 100644 --- a/src/main/java/gregtech/api/util/GT_Utility.java +++ b/src/main/java/gregtech/api/util/GT_Utility.java @@ -20,7 +20,6 @@ import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.util.*; -import java.util.Map.Entry; import java.util.function.Function; import java.util.function.IntFunction; import java.util.function.Supplier; @@ -3005,7 +3004,7 @@ public class GT_Utility { public static <X, Y extends Comparable<Y>> LinkedHashMap<X, Y> sortMapByValuesAcending(Map<X, Y> map) { return map.entrySet() .stream() - .sorted(Entry.comparingByValue()) + .sorted(Map.Entry.comparingByValue()) .collect(CollectorUtils.entriesToMap(LinkedHashMap::new)); } |