From b6caaf255da083516286321155ef339b60a07393 Mon Sep 17 00:00:00 2001 From: miozune Date: Mon, 4 Dec 2023 06:26:09 +0900 Subject: Migrate to new RecipeMap (#788) * Remove reference to GTPP_Recipe itself * Remove GTPP_Recipe_Map_Internal * Move recipemaps to separated class * Remove unused recipemaps * Migrate GT++ recipemaps Remove sElementalDuplicatorRecipes in favor of GT replicatorRecipes supporting findRecipe * Migrate the rest * Adjust catalyst priorities * Add ABS non-alloy recipe category * Remove s prefixes from recipemaps * Adapt to GT_StreamUtil rename * Adjust recipe catalysts * Fix build * update gradle+bs+deps (cherry picked from commit 8b185c7a4d881d38580cc98456265ebb751b6d93) * update deps --------- Co-authored-by: Martin Robertz --- .../java/gregtech/api/util/AdvFusionPower.java | 43 - .../api/util/AdvancedFusionOverclockDescriber.java | 23 + .../java/gregtech/api/util/FishPondFakeRecipe.java | 5 +- src/main/java/gregtech/api/util/GTPP_Recipe.java | 877 --------------------- src/main/java/gregtech/api/util/HotFuel.java | 6 +- .../gregtech/api/util/SemiFluidFuelHandler.java | 17 +- src/main/java/gtPlusPlus/GTplusplus.java | 37 +- .../api/recipe/ChemicalPlantFrontend.java | 68 ++ .../api/recipe/GTPPRecipeCategories.java | 19 + .../java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java | 157 ++++ .../gtPlusPlus/api/recipe/MillingFrontend.java | 46 ++ .../java/gtPlusPlus/api/recipe/TGSFrontend.java | 68 ++ src/main/java/gtPlusPlus/core/item/ModItems.java | 4 +- .../core/item/base/ingots/BaseItemIngotHot.java | 4 +- .../core/item/base/ingots/BaseItemIngot_OLD.java | 4 +- .../core/item/chemistry/AgriculturalChem.java | 18 +- .../core/item/chemistry/GenericChem.java | 30 +- .../core/item/chemistry/RocketFuels.java | 33 +- .../java/gtPlusPlus/core/proxy/ClientProxy.java | 4 + .../gtPlusPlus/core/recipe/RECIPES_GREGTECH.java | 154 ++-- .../gtPlusPlus/core/recipe/RECIPES_General.java | 10 +- .../core/recipe/RECIPES_LaserEngraver.java | 24 +- .../core/recipe/RECIPES_RareEarthProcessing.java | 26 +- .../gtPlusPlus/core/util/minecraft/FluidUtils.java | 10 +- .../java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java | 2 +- src/main/java/gtPlusPlus/nei/NEI_GTPP_Config.java | 99 +++ src/main/java/gtPlusPlus/nei/NEI_GT_Config.java | 41 - src/main/java/gtPlusPlus/nei/NEI_IMC_Sender.java | 134 ---- .../gtPlusPlus/plugin/agrichem/BioRecipes.java | 74 +- .../gtPlusPlus/recipes/CokeAndPyrolyseOven.java | 3 +- .../java/gtPlusPlus/recipes/RecipeRemovals.java | 29 +- .../xmod/bop/blocks/BOP_Block_Registrator.java | 6 +- .../xmod/forestry/bees/custom/GTPP_Bees.java | 4 +- .../xmod/forestry/bees/custom/ItemCustomComb.java | 4 +- .../xmod/forestry/bees/items/output/GTPP_Drop.java | 4 +- .../forestry/bees/items/output/GTPP_Propolis.java | 4 +- .../java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java | 74 -- ...etaTileEntity_Hatch_ElementalDataOrbHolder.java | 3 - .../GT_MetaTileEntity_Hatch_InputBattery.java | 4 +- .../GT_MetaTileEntity_Hatch_Steam_BusInput.java | 4 +- .../base/GregtechMeta_MultiBlockBase.java | 22 +- .../base/GregtechMeta_SteamMultiBase.java | 8 +- .../GregtechRocketFuelGeneratorBase.java | 20 +- .../GT_MetaTileEntity_Hatch_NbtConsumable.java | 2 - .../GT_MetaTileEntity_SemiFluidGenerator.java | 10 +- .../GregtechMetaTileEntityGeothermalGenerator.java | 7 +- .../GregtechMetaTileEntityRocketFuelGenerator.java | 8 +- .../generators/GregtechMetaTileEntity_RTG.java | 13 +- .../basic/GregtechMetaTileEntity_AutoChisel.java | 30 +- .../machines/multi/misc/GMTE_AmazonPackager.java | 7 +- ...gtechMetaTileEntity_IndustrialAlloySmelter.java | 6 +- ...regtechMetaTileEntity_IndustrialArcFurnace.java | 24 +- ...regtechMetaTileEntity_IndustrialCentrifuge.java | 8 +- .../GregtechMetaTileEntity_IndustrialChisel.java | 33 +- .../GregtechMetaTileEntity_IndustrialCokeOven.java | 8 +- ...echMetaTileEntity_IndustrialCuttingMachine.java | 23 +- ...regtechMetaTileEntity_IndustrialDehydrator.java | 19 +- ...gtechMetaTileEntity_IndustrialElectrolyzer.java | 7 +- .../GregtechMetaTileEntity_IndustrialExtruder.java | 12 +- ...egtechMetaTileEntity_IndustrialFluidHeater.java | 7 +- ...egtechMetaTileEntity_IndustrialForgeHammer.java | 7 +- ...GregtechMetaTileEntity_IndustrialMacerator.java | 12 +- .../GregtechMetaTileEntity_IndustrialMixer.java | 7 +- ...aTileEntity_IndustrialMolecularTransformer.java | 8 +- ...gtechMetaTileEntity_IndustrialMultiMachine.java | 68 +- ...regtechMetaTileEntity_IndustrialPlatePress.java | 23 +- .../GregtechMetaTileEntity_IndustrialSifter.java | 12 +- ...MetaTileEntity_IndustrialThermalCentrifuge.java | 7 +- ...techMetaTileEntity_IndustrialVacuumFreezer.java | 8 +- ...GregtechMetaTileEntity_IndustrialWashPlant.java | 29 +- .../GregtechMetaTileEntity_IndustrialWireMill.java | 12 +- .../processing/GregtechMetaTileEntity_IsaMill.java | 8 +- ...hMetaTileEntity_NuclearSaltProcessingPlant.java | 6 +- .../GregtechMetaTileEntity_SpargeTower.java | 16 +- ...egtechMetaTileEntity_Adv_DistillationTower.java | 26 +- .../advanced/GregtechMetaTileEntity_Adv_EBF.java | 11 +- .../GregtechMetaTileEntity_Adv_Fusion_MK4.java | 34 +- .../GregtechMetaTileEntity_Adv_Fusion_MK5.java | 35 +- .../GregtechMetaTileEntity_Adv_Implosion.java | 12 +- .../GregtechMetaTileEntity_SteamCompressor.java | 6 +- .../GregtechMetaTileEntity_SteamMacerator.java | 6 +- .../multi/production/GT4Entity_AutoCrafter.java | 6 +- .../multi/production/GT4Entity_ThermalBoiler.java | 10 +- .../GregtechMTE_ElementalDuplicator.java | 211 +---- .../production/GregtechMTE_FrothFlotationCell.java | 7 +- .../production/GregtechMTE_NuclearReactor.java | 8 +- .../production/GregtechMetaTileEntityTreeFarm.java | 15 +- .../GregtechMetaTileEntity_AlloyBlastSmelter.java | 8 +- .../GregtechMetaTileEntity_Cyclotron.java | 8 +- ...egtechMetaTileEntity_IndustrialFishingPond.java | 9 +- ...egtechMetaTileEntity_IndustrialRockBreaker.java | 55 +- .../GregtechMetaTileEntity_LargeRocketEngine.java | 10 +- ...techMetaTileEntity_LargeSemifluidGenerator.java | 4 +- .../GregtechMetaTileEntity_MassFabricator.java | 36 +- ...techMetaTileEntity_QuantumForceTransformer.java | 7 +- .../GregtechMetaTileEntity_Refinery.java | 8 +- .../GregtechMetaTileEntity_SolarTower.java | 8 +- .../algae/GregtechMTE_AlgaePondBase.java | 24 +- .../chemplant/GregtechMTE_ChemicalPlant.java | 8 +- ...egTechMetaTileEntity_MegaAlloyBlastSmelter.java | 7 +- .../turbines/GT_MTE_LargeTurbine_Gas.java | 16 +- .../turbines/GT_MTE_LargeTurbine_Plasma.java | 16 +- .../common/tools/TOOL_Gregtech_AngleGrinder.java | 14 +- .../gregtech/loaders/RecipeGen_BlastSmelter.java | 27 +- .../loaders/RecipeGen_BlastSmelterGT_GTNH.java | 304 ++++--- .../gregtech/loaders/RecipeGen_FluidCanning.java | 32 +- .../RecipeGen_MultisUsingFluidInsteadOfCells.java | 15 +- .../xmod/gregtech/loaders/RecipeGen_Plates.java | 6 +- .../loaders/misc/AddCustomMachineToPA.java | 5 +- .../loaders/recipe/RecipeLoader_AlgaeFarm.java | 3 +- .../loaders/recipe/RecipeLoader_ChemicalSkips.java | 4 +- .../gregtech/loaders/recipe/RecipeLoader_LFTR.java | 8 +- .../loaders/recipe/RecipeLoader_Nuclear.java | 26 +- .../recipe/RecipeLoader_NuclearFuelProcessing.java | 8 +- .../xmod/gregtech/recipes/GregtechRecipeAdder.java | 115 +-- .../registration/gregtech/GregtechDehydrator.java | 49 +- .../gregtech/GregtechIndustrialMassFabricator.java | 28 +- .../registration/gregtech/GregtechLFTR.java | 18 +- .../gregtech/GregtechSimpleWasher.java | 28 +- .../registration/gregtech/GregtechSolarTower.java | 4 +- .../xmod/pamsharvest/fishtrap/FishTrapHandler.java | 18 +- .../xmod/railcraft/HANDLER_Railcraft.java | 4 +- .../recipe/TF_Gregtech_Recipes.java | 18 +- .../resources/assets/miscutils/lang/en_US.lang | 58 +- .../textures/gui/picture/abs_non_alloy_recipes.png | Bin 0 -> 452 bytes 125 files changed, 1666 insertions(+), 2410 deletions(-) delete mode 100644 src/main/java/gregtech/api/util/AdvFusionPower.java create mode 100644 src/main/java/gregtech/api/util/AdvancedFusionOverclockDescriber.java delete mode 100644 src/main/java/gregtech/api/util/GTPP_Recipe.java create mode 100644 src/main/java/gtPlusPlus/api/recipe/ChemicalPlantFrontend.java create mode 100644 src/main/java/gtPlusPlus/api/recipe/GTPPRecipeCategories.java create mode 100644 src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java create mode 100644 src/main/java/gtPlusPlus/api/recipe/MillingFrontend.java create mode 100644 src/main/java/gtPlusPlus/api/recipe/TGSFrontend.java create mode 100644 src/main/java/gtPlusPlus/nei/NEI_GTPP_Config.java delete mode 100644 src/main/java/gtPlusPlus/nei/NEI_GT_Config.java delete mode 100644 src/main/java/gtPlusPlus/nei/NEI_IMC_Sender.java create mode 100644 src/main/resources/assets/miscutils/textures/gui/picture/abs_non_alloy_recipes.png (limited to 'src') diff --git a/src/main/java/gregtech/api/util/AdvFusionPower.java b/src/main/java/gregtech/api/util/AdvFusionPower.java deleted file mode 100644 index 2ea04d9e0d..0000000000 --- a/src/main/java/gregtech/api/util/AdvFusionPower.java +++ /dev/null @@ -1,43 +0,0 @@ -package gregtech.api.util; - -import static gregtech.api.enums.GT_Values.V; - -import gregtech.common.power.FusionPower; -import gregtech.nei.FusionSpecialValueFormatter; - -public class AdvFusionPower extends FusionPower { - - public AdvFusionPower(byte tier, int startupPower) { - super(tier, startupPower); - } - - @Override - public void computePowerUsageAndDuration(int euPerTick, int duration, int specialValue) { - originalVoltage = computeVoltageForEuRate(euPerTick); - recipeEuPerTick = euPerTick; - recipeDuration = duration; - // It's safe to assume fusion is above ULV. We put this as safety check here anyway - if (tier > 0) { - int maxPossibleOverclocks = FusionSpecialValueFormatter.getFusionTier(this.specialValue, V[tier - 1]) - - FusionSpecialValueFormatter.getFusionTier(specialValue, euPerTick); - // Isn't too low EUt check? - long tempEUt = Math.max(euPerTick, V[1]); - - recipeDuration = duration; - - while (tempEUt <= V[tier - 1] * (long) amperage && maxPossibleOverclocks-- > 0 && recipeDuration > 1) { - tempEUt <<= 2; // this actually controls overclocking - recipeDuration >>= 2; // this is effect of overclocking - } - if (tempEUt > Integer.MAX_VALUE - 1) { - recipeEuPerTick = Integer.MAX_VALUE - 1; - recipeDuration = Integer.MAX_VALUE - 1; - } else { - recipeEuPerTick = (int) tempEUt; - if (recipeEuPerTick == 0) recipeEuPerTick = 1; - if (recipeDuration == 0) recipeDuration = 1; // set time to 1 tick - } - } - wasOverclocked = checkIfOverclocked(); - } -} diff --git a/src/main/java/gregtech/api/util/AdvancedFusionOverclockDescriber.java b/src/main/java/gregtech/api/util/AdvancedFusionOverclockDescriber.java new file mode 100644 index 0000000000..7a6e609f93 --- /dev/null +++ b/src/main/java/gregtech/api/util/AdvancedFusionOverclockDescriber.java @@ -0,0 +1,23 @@ +package gregtech.api.util; + +import javax.annotation.ParametersAreNonnullByDefault; + +import gregtech.api.objects.overclockdescriber.FusionOverclockDescriber; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class AdvancedFusionOverclockDescriber extends FusionOverclockDescriber { + + public AdvancedFusionOverclockDescriber(byte energyTier, long capableStartup) { + super(energyTier, capableStartup); + } + + @Override + protected int getEUtIncreasePerOC() { + return 2; + } + + protected int getDurationDecreasePerOC() { + return 2; + } +} diff --git a/src/main/java/gregtech/api/util/FishPondFakeRecipe.java b/src/main/java/gregtech/api/util/FishPondFakeRecipe.java index e6b754deb7..81403c1612 100644 --- a/src/main/java/gregtech/api/util/FishPondFakeRecipe.java +++ b/src/main/java/gregtech/api/util/FishPondFakeRecipe.java @@ -9,6 +9,7 @@ import net.minecraftforge.fluids.FluidStack; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.reflect.ReflectionUtils; @@ -59,7 +60,7 @@ public class FishPondFakeRecipe { } public static void addNewFishPondLoot(int circuit, ItemStack[] outputItems, int[] chances) { - GTPP_Recipe x = new GTPP_Recipe( + GT_Recipe x = new GT_Recipe( true, new ItemStack[] { CI.getNumberedCircuit(circuit) }, outputItems, @@ -71,6 +72,6 @@ public class FishPondFakeRecipe { 0, // No Eu produced 0); Logger.INFO("Fishing [" + circuit + "]: " + ItemUtils.getArrayStackNames(outputItems)); - GTPP_Recipe.GTPP_Recipe_Map.sFishPondRecipes.addRecipe(x, false, false, false); + GTPPRecipeMaps.fishPondRecipes.addRecipe(x, false, false, false); } } diff --git a/src/main/java/gregtech/api/util/GTPP_Recipe.java b/src/main/java/gregtech/api/util/GTPP_Recipe.java deleted file mode 100644 index 3058ea836e..0000000000 --- a/src/main/java/gregtech/api/util/GTPP_Recipe.java +++ /dev/null @@ -1,877 +0,0 @@ -package gregtech.api.util; - -import static gregtech.api.enums.GT_Values.E; -import static net.minecraft.util.EnumChatFormatting.GRAY; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.Collections; -import java.util.HashSet; -import java.util.List; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - -import com.gtnewhorizons.modularui.api.math.Pos2d; -import com.gtnewhorizons.modularui.common.widget.ProgressBar; -import com.gtnewhorizons.modularui.common.widget.ProgressBar.Direction; - -import gregtech.api.gui.modularui.GT_UITextures; -import gregtech.common.gui.modularui.UIHelper; -import gregtech.nei.GT_NEI_DefaultHandler.FixedPositionedStack; -import gregtech.nei.NEIRecipeInfo; -import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.core.item.ModItems; -import gtPlusPlus.core.util.math.MathUtils; -import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.xmod.gregtech.api.gui.GTPP_UITextures; - -/** - * Custom GT Recipe Class - * - * @author Alkalus - * - */ -public class GTPP_Recipe extends GT_Recipe { - - public GTPP_Recipe(final boolean aOptimize, final ItemStack[] aInputs, final ItemStack[] aOutputs, - final Object aSpecialItems, final int[] aChances, final FluidStack[] aFluidInputs, - final FluidStack[] aFluidOutputs, final int aDuration, final int aEUt, final int aSpecialValue) { - super( - aOptimize, - aInputs, - aOutputs, - aSpecialItems, - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue); - // Logger.SPECIFIC_WARNING(this.getClass().getName()+" | [GregtechRecipe]", "Created new recipe instance for - // "+ItemUtils.getArrayStackNames(aInputs), 167); - } - - public GTPP_Recipe(final ItemStack aInput1, final ItemStack aOutput1, final int aFuelValue, final int aType) { - this(aInput1, aOutput1, null, null, null, aFuelValue, aType); - } - - // aSpecialValue = EU per Liter! If there is no Liquid for this Object, then it gets multiplied with 1000! - public GTPP_Recipe(final ItemStack aInput1, final ItemStack aOutput1, final ItemStack aOutput2, - final ItemStack aOutput3, final ItemStack aOutput4, final int aSpecialValue, final int aType) { - this( - true, - new ItemStack[] { aInput1 }, - new ItemStack[] { aOutput1, aOutput2, aOutput3, aOutput4 }, - null, - null, - null, - null, - 0, - 0, - Math.max(1, aSpecialValue)); - - Logger.WARNING("Switch case method for adding fuels"); - if ((this.mInputs.length > 0) && (aSpecialValue > 0)) { - switch (aType) { - // Diesel Generator - case 0: - Logger.WARNING("Added fuel " + aInput1.getDisplayName() + " is ROCKET FUEL - continuing"); - GTPP_Recipe_Map.sRocketFuels.addRecipe(this); - break; - // Gas Turbine - case 1: - GTPP_Recipe_Map.sGeoThermalFuels.addRecipe(this); - break; - // Thermal Generator - case 2: - GTPP_Recipe_Map.sRTGFuels.addRecipe(this); - break; - // Plasma Generator - case 4: - // Gregtech_Recipe_Map.sPlasmaFuels.addRecipe(this); - break; - // Magic Generator - case 5: - // Gregtech_Recipe_Map.sMagicFuels.addRecipe(this); - break; - // Fluid Generator. Usually 3. Every wrong Type ends up in the Semifluid Generator - default: - // Gregtech_Recipe_Map.sDenseLiquidFuels.addRecipe(this); - break; - } - } - } - - /** - * Even though this is deprecated, it's still used to keep binary compatibility. (GoodGenerator and GTNHLanthanides - * reference to `sSimpleWasherRecipes` and `sChemicalDehydratorRecipes`) - */ - public static class GTPP_Recipe_Map_Internal extends GT_Recipe_Map { - - @Deprecated - public static final Collection sMappingsEx = new ArrayList<>(); - - public GTPP_Recipe_Map_Internal(Collection aRecipeList, String aUnlocalizedName, String aLocalName, - String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, - int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, - int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, - boolean aNEIAllowed) { - super( - aRecipeList, - aUnlocalizedName, - aLocalName, - aNEIName, - aNEIGUIPath, - aUsualInputCount, - aUsualOutputCount, - aMinimalInputItems, - aMinimalInputFluids, - aAmperage, - aNEISpecialValuePre, - aNEISpecialValueMultiplier, - aNEISpecialValuePost, - aShowVoltageAmperageInNEI, - aNEIAllowed); - } - } - - public static class GTPP_Recipe_Map { - - public static final GT_Recipe_Map sCokeOvenRecipes = new GT_Recipe_Map( - new HashSet<>(200), - "gtpp.recipe.cokeoven", - "Coke Oven", - null, - "", - 2, - 9, - 1, - 0, - 1, - E, - 1, - E, - true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN); - public static final GT_Recipe_Map sMatterFab2Recipes = new GT_Recipe_Map( - new HashSet<>(200), - "gtpp.recipe.matterfab2", - "Matter Fabricator", - null, - "", - 2, - 0, - 0, - 0, - 1, - E, - 1, - E, - true, - true).useModularUI(true); - - public static final GT_Recipe_Map_Fuel sRocketFuels = (GT_Recipe_Map_Fuel) new GT_Recipe_Map_Fuel( - new HashSet<>(10), - "gtpp.recipe.rocketenginefuel", - "Rocket Engine Fuel", - null, - "", - 0, - 0, - 0, - 0, - 1, - "Fuel Value: ", - 3000, - " EU", - true, - true).useModularUI(true); - - public static final GT_Recipe_Map sQuantumForceTransformerRecipes = new GT_Recipe_Map_LargeNEI( - new HashSet<>(20), - "gtpp.recipe.quantumforcesmelter", - "Quantum Force Transformer", - null, - "", - 6, - 6, - 1, - 0, - 1, - "Tier: ", - 1, - E, - true, - true).useModularUI(true).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE, Direction.RIGHT) - .setUsualFluidInputCount(6).setUsualFluidOutputCount(6); - - public static final GT_Recipe_Map sGeoThermalFuels = new GT_Recipe_Map( - new HashSet<>(10), - "gtpp.recipe.geothermalfuel", - "GeoThermal Fuel", - null, - "", - 1, - 1, - 0, - 0, - 1, - "Fuel Value: ", - 1000, - " EU", - true, - true).useModularUI(true); - public static final GTPP_Recipe_Map_Internal sChemicalDehydratorRecipes = (GTPP_Recipe_Map_Internal) new GTPP_Recipe_Map_Internal( - new HashSet<>(200), - "gtpp.recipe.chemicaldehydrator", - "Dehydrator", - null, - "", - 2, - 9, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN); - public static final GT_Recipe_Map sVacuumFurnaceRecipes = new GT_Recipe_Map_LargeNEI( - new HashSet<>(500), - "gtpp.recipe.vacfurnace", - "Vacuum Furnace", - null, - "", - 9, - 9, - 1, - 0, - 1, - "Heat Capacity: ", - 1, - " K", - false, - true).setUsualFluidInputCount(3).setUsualFluidOutputCount(3); - public static final GT_Recipe_Map sAlloyBlastSmelterRecipes = new GT_Recipe_Map_LargeNEI( - new HashSet<>(200), - "gtpp.recipe.alloyblastsmelter", - "Alloy Blast Smelter", - null, - "", - 9, - 9, - 1, - 0, - 1, - E, - 1, - E, - true, - true).setUsualFluidInputCount(3).setUsualFluidOutputCount(3); - - // LFTR recipes - public static final GT_Recipe_Map sLiquidFluorineThoriumReactorRecipes = new GT_Recipe_Map_FluidOnly( - new HashSet<>(50), - "gtpp.recipe.lftr", - "Liquid Fluoride Thorium Reactor", - null, - "", - 0, - 0, - 0, - 2, - 0, - "Power: ", - 1, - " EU/t per Dynamo", - true, - true).setUsualFluidInputCount(6).setUsualFluidOutputCount(6) - .setNEISpecialInfoFormatter((recipeInfo, applyPrefixAndSuffix) -> { - final long tEUt = recipeInfo.recipe.mSpecialValue; - final int tDuration = recipeInfo.recipe.mDuration; - return Arrays.asList( - applyPrefixAndSuffix.apply(recipeInfo.recipe.mSpecialValue), - "Dynamo: " + MathUtils.formatNumbers(tDuration * tEUt) + " EU", - "Total: " + MathUtils.formatNumbers(tDuration * tEUt * 4) + " EU"); - }); - - public static final GT_Recipe_Map sNuclearSaltProcessingPlantRecipes = new GT_Recipe_Map_LargeNEI( - new HashSet<>(50), - "gtpp.recipe.nuclearsaltprocessingplant", - "Nuclear Salt Processing Plant", - null, - "", - 0, - 6, - 0, - 0, - 1, - "", - 0, - "", - true, - true).setUsualFluidInputCount(2).setUsualFluidOutputCount(3); - - // Ore Milling Map - public static final GT_Recipe_Map sOreMillRecipes = new GT_Recipe_Map( - new HashSet<>(10000), - "gtpp.recipe.oremill", - "Milling", - null, - "", - 3, - 3, - 1, - 0, - 1, - E, - 1, - E, - true, - true) { - - @Override - protected List handleNEIItemInputTooltip(List currentTip, FixedPositionedStack pStack) { - if (ItemUtils.isMillingBall(pStack.item)) { - currentTip.add(GRAY + "Does not always get consumed in the process"); - } else { - super.handleNEIItemInputTooltip(currentTip, pStack); - } - return currentTip; - } - - @Override - protected void drawNEIOverlayForInput(FixedPositionedStack stack) { - if (ItemUtils.isMillingBall(stack.item)) { - drawNEIOverlayText("NC*", stack); - } else { - super.drawNEIOverlayForInput(stack); - } - } - }.useModularUI(true); - - // Fission Fuel Plant Recipes - public static final GT_Recipe_Map sFissionFuelProcessing = new GT_Recipe_Map_FluidOnly( - new HashSet<>(50), - "gtpp.recipe.fissionfuel", - "Nuclear Fuel Processing", - null, - "", - 0, - 0, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setUsualFluidInputCount(6).setUsualFluidOutputCount(6); - - // Cold Trap - public static final GT_Recipe_Map sColdTrapRecipes = new GT_Recipe_Map( - new HashSet<>(10000), - "gtpp.recipe.coldtrap", - "Cold Trap", - null, - "", - 2, - 9, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN); - - // Reactor Processing Unit - public static final GT_Recipe_Map sReactorProcessingUnitRecipes = new GT_Recipe_Map( - new HashSet<>(10000), - "gtpp.recipe.reactorprocessingunit", - "Reactor Processing Unit", - null, - "", - 2, - 9, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN); - - // Basic Washer Map - public static final GTPP_Recipe_Map_Internal sSimpleWasherRecipes = (GTPP_Recipe_Map_Internal) new GTPP_Recipe_Map_Internal( - new HashSet<>(3), - "gtpp.recipe.simplewasher", - "Simple Dust Washer", - null, - "", - 1, - 1, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CAULDRON) - .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE); - - // Molecular Transformer Map - public static final GT_Recipe_Map sMolecularTransformerRecipes = new GT_Recipe_Map( - new HashSet<>(3), - "gtpp.recipe.moleculartransformer", - "Molecular Transformer", - null, - "", - 1, - 1, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_MICROSCOPE); - - // Elemental Duplicator Map - public static final GT_Recipe_Map sElementalDuplicatorRecipes = new GT_Recipe_Map( - new HashSet<>(3), - "gtpp.recipe.elementaldupe", - "Elemental Duplicator", - null, - "", - 1, - 1, - 0, - 1, - 1, - E, - 1, - E, - true, - false); - - public static final GT_Recipe_Map sChemicalPlantRecipes = new GTPP_Recipe_Map_ChemicalPlant( - new HashSet<>(100), - "gtpp.recipe.fluidchemicaleactor", - "Chemical Plant", - null, - "", - 4, - 4, - 0, - 0, - 1, - "Tier: ", - 1, - E, - true, - true); - - // RTG Fuel Map - public static final GT_Recipe.GT_Recipe_Map_Fuel sRTGFuels = (GT_Recipe_Map_Fuel) new GT_Recipe_Map_Fuel( - new HashSet<>(10), - "gtpp.recipe.RTGgenerators", - "RTG", - null, - "", - 1, - 0, - 0, - 0, - 1, - "Fuel Value: ", - 365, - " Minecraft Days", - true, - true).useModularUI(true); - - // Thermal Boiler map - public static final GT_Recipe_Map sThermalFuels = new GT_Recipe_Map_LargeNEI( - new HashSet<>(10), - "gtpp.recipe.thermalgeneratorfuel", - "Thermal Generator Fuel", - null, - "", - 9, - 9, - 0, - 0, - 1, - null, - 1000, - null, - true, - true).setUsualFluidInputCount(3).setUsualFluidOutputCount(3); - - // Solar Tower map - public static final GT_Recipe_Map sSolarTowerRecipes = new GT_Recipe_Map_FluidOnly( - new HashSet<>(10), - "gtpp.recipe.solartower", - "Solar Tower", - null, - "", - 0, - 0, - 0, - 0, - 1, - null, - 1000, - null, - true, - true).useModularUI(true).setNEISpecialInfoFormatter( - (recipeInfo, applyPrefixAndSuffix) -> Arrays.asList( - "Solar Heater rings boost tier", - "R1:T1, R2:T2, R3:T4, R4:T8, R5:T16", - "Input Amount = 1000 x T")); - - // Cyclotron recipe map - public static final GT_Recipe_Map sCyclotronRecipes = new GT_Recipe_Map( - new HashSet<>(200), - "gtpp.recipe.cyclotron", - "COMET - Compact Cyclotron", - null, - "", - 9, - 9, - 0, - 0, - 1, - E, - 1, - E, - true, - true).useModularUI(true); - - // Mini Fusion - public static final GT_Recipe_Map sSlowFusionRecipes = new GT_Recipe_Map( - new HashSet<>(50), - "gtpp.recipe.slowfusionreactor", - "Mimir - Slow Fusion", - null, - "", - 0, - 0, - 0, - 2, - 1, - "Start: ", - 1, - " EU", - true, - true).useModularUI(true); - - // Special Maps for Multis - public static final GT_Recipe_Map sFishPondRecipes = new GT_Recipe_Map( - new HashSet<>(3), - "gtpp.recipe.fishpond", - "Zhuhai - Fishing Port", - null, - "", - 1, - 1, - 0, - 0, - 1, - E, - 1, - E, - true, - true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_CAULDRON) - .setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE); - public static final GT_Recipe_Map sSpargeTowerRecipes = new GT_Recipe_Map( - new HashSet<>(10000), - "gtpp.recipe.spargetower", - "Sparging", - null, - "", - 9, - 9, - 0, - 0, - 1, - E, - 1, - E, - true, - false); - - public static final GT_Recipe_Map sAdvFreezerRecipes_GT = new GT_Recipe_Map( - new HashSet<>(2000), - "gtpp.recipe.cryogenicfreezer", - "Cryogenic Freezer", - null, - "", - 1, - 1, - 0, - 0, - 1, - "", - 0, - "", - false, - true).setUsualFluidInputCount(2); - public static final GT_Recipe_Map sMultiblockCentrifugeRecipes_GT = new GT_Recipe_Map_LargeNEI( - new HashSet<>(2000), - "gtpp.recipe.multicentrifuge", - "Multiblock Centrifuge", - null, - "", - 6, - 6, - 0, - 0, - 1, - "", - 0, - "", - false, - true).setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT).setUsualFluidInputCount(6) - .setUsualFluidOutputCount(6); - public static final GT_Recipe_Map sMultiblockElectrolyzerRecipes_GT = new GT_Recipe_Map_LargeNEI( - new HashSet<>(2000), - "gtpp.recipe.multielectro", - "Multiblock Electrolyzer", - null, - "", - 6, - 6, - 0, - 0, - 1, - "", - 0, - "", - false, - true).setProgressBar(GT_UITextures.PROGRESSBAR_EXTRACT).setUsualFluidInputCount(6) - .setUsualFluidOutputCount(6); - - public static final GT_Recipe_Map sMultiblockMixerRecipes_GT = new GT_Recipe_Map_LargeNEI( - new HashSet<>(2000), - "gtpp.recipe.multimixer", - "Multiblock Mixer", - null, - "", - 9, - 9, - 0, - 0, - 1, - "", - 0, - "", - false, - true).setProgressBar(GT_UITextures.PROGRESSBAR_MIXER, ProgressBar.Direction.CIRCULAR_CW) - .setUsualFluidInputCount(6).setUsualFluidOutputCount(6); - - public static final GT_Recipe_Map sMultiblockChemicalDehydratorRecipes = new GT_Recipe_Map_LargeNEI( - new HashSet<>(2000), - "gtpp.recipe.multidehydrator", - "Multiblock Dehydrator", - null, - "", - 6, - 9, - 0, - 0, - 1, - "", - 0, - "", - false, - true).setUsualFluidInputCount(3).setUsualFluidOutputCount(3); - - // Semi-Fluid Fuel Map - public static final GT_Recipe_Map_Fuel sSemiFluidLiquidFuels = (GT_Recipe_Map_Fuel) new GT_Recipe_Map_Fuel( - new HashSet<>(10), - "gtpp.recipe.semifluidgeneratorfuels", - "Semifluid Generator Fuels", - null, - "", - 0, - 0, - 0, - 0, - 1, - "Fuel Value: ", - 1000, - " EU", - true, - true).useModularUI(true); - - // Flotation Cell - public static final GT_Recipe_Map sFlotationCellRecipes = new GT_Recipe_Map( - new HashSet<>(10000), - "gtpp.recipe.flotationcell", - "Flotation Cell", - null, - "", - 6, - 0, - 1, - 1, - 1, - "", - 1, - E, - true, - true).useModularUI(true); - - // Tree Growth Simulator - public static final GT_Recipe_Map sTreeSimFakeRecipes = new GT_Recipe_Map( - new HashSet<>(100), - "gtpp.recipe.treefarm", - "Tree Growth Simulator", - null, - "", - 1, - 2, - 1, - 0, - 1, - "", - 1, - "", - false, - true) { - - @Override - protected void drawNEIEnergyInfo(NEIRecipeInfo recipeInfo) {} - - @Override - protected void drawNEIDurationInfo(NEIRecipeInfo recipeInfo) {} - - @Override - protected List handleNEIItemOutputTooltip(List currentTip, FixedPositionedStack pStack) { - if (ModItems.fluidFertBasic != null && pStack.isChanceBased()) { - // noinspection deprecation - currentTip - .add(GRAY + "Outputted if " + ModItems.fluidFertBasic.getLocalizedName() + " is provided"); - } else { - super.handleNEIItemOutputTooltip(currentTip, pStack); - } - return currentTip; - } - - @Override - protected void drawNEIOverlayForOutput(FixedPositionedStack stack) {} - }.useModularUI(true).setNEISpecialInfoFormatter((recipeInfo, applyPrefixAndSuffix) -> { - List result = new ArrayList<>(); - if (ModItems.fluidFertBasic != null) { - result.add("The sapling is not consumed."); - // noinspection deprecation - result.add("If " + ModItems.fluidFertBasic.getLocalizedName() + " is provided,"); - result.add("Saplings are made instead"); - } - return result; - }); - } - - public static class GTPP_Recipe_Map_ChemicalPlant extends GT_Recipe_Map { - - private static final List tierMaterialNames = Arrays.asList( - "Bronze", - "Steel", - "Aluminium", - "Stainless Steel", - "Titanium", - "Tungsten Steel", - "Laurenium", - "Botmium"); - - public GTPP_Recipe_Map_ChemicalPlant(Collection aRecipeList, String aUnlocalizedName, - String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, - int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, - int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, - boolean aNEIAllowed) { - super( - aRecipeList, - aUnlocalizedName, - aLocalName, - aNEIName, - aNEIGUIPath, - aUsualInputCount, - aUsualOutputCount, - aMinimalInputItems, - aMinimalInputFluids, - aAmperage, - aNEISpecialValuePre, - aNEISpecialValueMultiplier, - aNEISpecialValuePost, - aShowVoltageAmperageInNEI, - aNEIAllowed); - setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_MOLECULAR_1); - setSlotOverlay(false, true, GT_UITextures.OVERLAY_SLOT_VIAL_1); - setSlotOverlay(true, false, GT_UITextures.OVERLAY_SLOT_MOLECULAR_3); - setSlotOverlay(true, true, GT_UITextures.OVERLAY_SLOT_VIAL_2); - setProgressBar(GTPP_UITextures.PROGRESSBAR_FLUID_REACTOR, ProgressBar.Direction.CIRCULAR_CW); - setProgressBarPos(82, 24); - setUsualFluidInputCount(4); - setUsualFluidOutputCount(2); - setNEISpecialInfoFormatter((recipeInfo, applyPrefixAndSuffix) -> { - int specialValue = recipeInfo.recipe.mSpecialValue; - String tierMaterial = ""; - for (int i = 0; i < tierMaterialNames.size(); i++) { - if (i == specialValue) { - tierMaterial = tierMaterialNames.get(i); - } - } - // blockrenderer uses 1-indexed - return Collections.singletonList(applyPrefixAndSuffix.apply(specialValue + 1) + " - " + tierMaterial); - }); - } - - @Override - public List getItemInputPositions(int itemInputCount) { - return UIHelper.getGridPositions(itemInputCount, 7, 6, itemInputCount, 1); - } - - @Override - public List getItemOutputPositions(int itemOutputCount) { - return UIHelper.getGridPositions(itemOutputCount, 106, 15, 2); - } - - @Override - public List getFluidInputPositions(int fluidInputCount) { - return UIHelper.getGridPositions(fluidInputCount, 7, 41, fluidInputCount, 1); - } - - @Override - public List getFluidOutputPositions(int fluidOutputCount) { - return UIHelper.getGridPositions(fluidOutputCount, 142, 15, 1, fluidOutputCount); - } - - @Override - protected List handleNEIItemInputTooltip(List currentTip, FixedPositionedStack pStack) { - if (ItemUtils.isCatalyst(pStack.item)) { - currentTip.add(GRAY + "Does not always get consumed in the process"); - currentTip.add(GRAY + "Higher tier pipe casings allow this item to last longer"); - } else { - super.handleNEIItemInputTooltip(currentTip, pStack); - } - return currentTip; - } - - @Override - protected void drawNEIOverlayForInput(FixedPositionedStack stack) { - if (ItemUtils.isCatalyst(stack.item)) { - drawNEIOverlayText("NC*", stack); - } else { - super.drawNEIOverlayForInput(stack); - } - } - } -} diff --git a/src/main/java/gregtech/api/util/HotFuel.java b/src/main/java/gregtech/api/util/HotFuel.java index b8fcef1308..15104807a4 100644 --- a/src/main/java/gregtech/api/util/HotFuel.java +++ b/src/main/java/gregtech/api/util/HotFuel.java @@ -3,11 +3,13 @@ package gregtech.api.util; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; + public class HotFuel { public static void addNewHotFuel(FluidStack aInput1, FluidStack aOutput1, ItemStack[] outputItems, int[] chances, int aSpecialValue) { - GTPP_Recipe.GTPP_Recipe_Map.sThermalFuels.addRecipe( + GTPPRecipeMaps.thermalBoilerRecipes.addRecipe( true, null, outputItems, @@ -22,7 +24,7 @@ public class HotFuel { } public static void addNewHotFuel(FluidStack aInput1, FluidStack aOutput1, FluidStack aOutput2, int aSpecialValue) { - GTPP_Recipe.GTPP_Recipe_Map.sThermalFuels.addRecipe( + GTPPRecipeMaps.thermalBoilerRecipes.addRecipe( false, null, null, diff --git a/src/main/java/gregtech/api/util/SemiFluidFuelHandler.java b/src/main/java/gregtech/api/util/SemiFluidFuelHandler.java index c808a892dc..be4dc21815 100644 --- a/src/main/java/gregtech/api/util/SemiFluidFuelHandler.java +++ b/src/main/java/gregtech/api/util/SemiFluidFuelHandler.java @@ -1,6 +1,6 @@ package gregtech.api.util; -import static gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map.sSemiFluidLiquidFuels; +import static gtPlusPlus.api.recipe.GTPPRecipeMaps.semiFluidFuels; import java.util.HashMap; @@ -8,6 +8,7 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidStack; +import gregtech.api.recipe.RecipeMaps; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.Pair; import gtPlusPlus.core.util.minecraft.FluidUtils; @@ -27,7 +28,7 @@ public class SemiFluidFuelHandler { public static boolean addSemiFluidFuel(FluidStack aFuel, int aFuelValue) { FluidStack p = aFuel; if (p != null && aFuelValue > 0) { - GT_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( true, new ItemStack[] {}, new ItemStack[] {}, @@ -44,7 +45,7 @@ public class SemiFluidFuelHandler { + " to the Semi-Fluid Generator fuel map. Fuel Produces " + (aRecipe.mSpecialValue * 1000) + "EU per 1000L."); - sSemiFluidLiquidFuels.add(aRecipe); + semiFluidFuels.add(aRecipe); return true; } } else { @@ -59,7 +60,7 @@ public class SemiFluidFuelHandler { final FluidStack aHeavyOil = FluidUtils.getFluidStack("liquid_heavy_oil", 1000); final HashMap> aFoundFluidsFromItems = new HashMap<>(); // Find Fluids From items - for (final GT_Recipe r : gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDenseLiquidFuels.mRecipeList) { + for (final GT_Recipe r : RecipeMaps.denseLiquidFuels.getAllRecipes()) { GT_Recipe g = r.copy(); @@ -84,7 +85,7 @@ public class SemiFluidFuelHandler { + " to the Semi-Fluid Generator fuel map. Fuel Produces " + g.mSpecialValue + "EU per 1000L."); - sSemiFluidLiquidFuels.add(g); + semiFluidFuels.add(g); } } for (Pair p : aFoundFluidsFromItems.values()) { @@ -99,7 +100,7 @@ public class SemiFluidFuelHandler { } if (aFuelValue <= (128 * 3)) { - GT_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( true, new ItemStack[] {}, new ItemStack[] {}, @@ -116,13 +117,13 @@ public class SemiFluidFuelHandler { + " to the Semi-Fluid Generator fuel map. Fuel Produces " + (aRecipe.mSpecialValue * 1000) + "EU per 1000L."); - sSemiFluidLiquidFuels.add(aRecipe); + semiFluidFuels.add(aRecipe); } } else { Logger.INFO("Boosted Fuel value for " + p.getKey().getLocalizedName() + " exceeds 512k, ignoring."); } } } - return sSemiFluidLiquidFuels.mRecipeList.size() > 0; + return !semiFluidFuels.getAllRecipes().isEmpty(); } } diff --git a/src/main/java/gtPlusPlus/GTplusplus.java b/src/main/java/gtPlusPlus/GTplusplus.java index b9a1ce86b8..69078ee499 100644 --- a/src/main/java/gtPlusPlus/GTplusplus.java +++ b/src/main/java/gtPlusPlus/GTplusplus.java @@ -28,11 +28,11 @@ import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.Materials; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.FishPondFakeRecipe; -import gregtech.api.util.GTPP_Recipe; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.SemiFluidFuelHandler; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.commands.CommandEnableDebugWhileRunning; import gtPlusPlus.core.commands.CommandMath; import gtPlusPlus.core.common.CommonProxy; @@ -44,7 +44,6 @@ import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.Material; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.data.LocaleUtils; -import gtPlusPlus.nei.NEI_IMC_Sender; import gtPlusPlus.plugin.manager.Core_Manager; import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy; import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; @@ -175,7 +174,6 @@ public class GTplusplus implements ActionListener { proxy.registerNetworkStuff(); Meta_GT_Proxy.init(); Core_Manager.init(); - NEI_IMC_Sender.IMCSender(); // Used by foreign players to generate .lang files for translation. if (CORE.ConfigSwitches.dumpItemAndBlockData) { LocaleUtils.generateFakeLocaleFile(); @@ -259,27 +257,24 @@ public class GTplusplus implements ActionListener { FishPondFakeRecipe.generateFishPondRecipes(); SemiFluidFuelHandler.generateFuels(); - mInvalidCount[0] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockCentrifugeRecipes_GT); + mInvalidCount[0] = RecipeGen_MultisUsingFluidInsteadOfCells + .generateRecipesNotUsingCells(RecipeMaps.centrifugeRecipes, GTPPRecipeMaps.centrifugeNonCellRecipes); mInvalidCount[1] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockElectrolyzerRecipes_GT); - mInvalidCount[2] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GT_Recipe.GT_Recipe_Map.sVacuumRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sAdvFreezerRecipes_GT); - mInvalidCount[3] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GT_Recipe.GT_Recipe_Map.sMixerRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockMixerRecipes_GT); + RecipeMaps.electrolyzerRecipes, + GTPPRecipeMaps.electrolyzerNonCellRecipes); + mInvalidCount[2] = RecipeGen_MultisUsingFluidInsteadOfCells + .generateRecipesNotUsingCells(RecipeMaps.vacuumFreezerRecipes, GTPPRecipeMaps.advancedFreezerRecipes); + mInvalidCount[3] = RecipeGen_MultisUsingFluidInsteadOfCells + .generateRecipesNotUsingCells(RecipeMaps.mixerRecipes, GTPPRecipeMaps.mixerNonCellRecipes); mInvalidCount[4] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockChemicalDehydratorRecipes); + GTPPRecipeMaps.chemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorNonCellRecipes); mInvalidCount[5] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GTPP_Recipe.GTPP_Recipe_Map.sColdTrapRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sNuclearSaltProcessingPlantRecipes); + GTPPRecipeMaps.coldTrapRecipes, + GTPPRecipeMaps.nuclearSaltProcessingPlantRecipes); mInvalidCount[6] = RecipeGen_MultisUsingFluidInsteadOfCells.generateRecipesNotUsingCells( - GTPP_Recipe.GTPP_Recipe_Map.sReactorProcessingUnitRecipes, - GTPP_Recipe.GTPP_Recipe_Map.sNuclearSaltProcessingPlantRecipes); + GTPPRecipeMaps.reactorProcessingUnitRecipes, + GTPPRecipeMaps.nuclearSaltProcessingPlantRecipes); } private static void setupMaterialBlacklist() { diff --git a/src/main/java/gtPlusPlus/api/recipe/ChemicalPlantFrontend.java b/src/main/java/gtPlusPlus/api/recipe/ChemicalPlantFrontend.java new file mode 100644 index 0000000000..42d1fb9f50 --- /dev/null +++ b/src/main/java/gtPlusPlus/api/recipe/ChemicalPlantFrontend.java @@ -0,0 +1,68 @@ +package gtPlusPlus.api.recipe; + +import static net.minecraft.util.EnumChatFormatting.GRAY; + +import java.util.List; + +import javax.annotation.ParametersAreNonnullByDefault; + +import com.gtnewhorizons.modularui.api.math.Pos2d; + +import gregtech.api.recipe.BasicUIPropertiesBuilder; +import gregtech.api.recipe.NEIRecipePropertiesBuilder; +import gregtech.api.recipe.RecipeMapFrontend; +import gregtech.api.util.MethodsReturnNonnullByDefault; +import gregtech.common.gui.modularui.UIHelper; +import gregtech.nei.GT_NEI_DefaultHandler; +import gtPlusPlus.core.util.minecraft.ItemUtils; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class ChemicalPlantFrontend extends RecipeMapFrontend { + + public ChemicalPlantFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder, + NEIRecipePropertiesBuilder neiPropertiesBuilder) { + super(uiPropertiesBuilder, neiPropertiesBuilder); + } + + @Override + public List getItemInputPositions(int itemInputCount) { + return UIHelper.getGridPositions(itemInputCount, 7, 6, itemInputCount, 1); + } + + @Override + public List getItemOutputPositions(int itemOutputCount) { + return UIHelper.getGridPositions(itemOutputCount, 106, 15, 2); + } + + @Override + public List getFluidInputPositions(int fluidInputCount) { + return UIHelper.getGridPositions(fluidInputCount, 7, 41, fluidInputCount, 1); + } + + @Override + public List getFluidOutputPositions(int fluidOutputCount) { + return UIHelper.getGridPositions(fluidOutputCount, 142, 15, 1, fluidOutputCount); + } + + @Override + protected List handleNEIItemInputTooltip(List currentTip, + GT_NEI_DefaultHandler.FixedPositionedStack pStack) { + if (ItemUtils.isCatalyst(pStack.item)) { + currentTip.add(GRAY + "Does not always get consumed in the process"); + currentTip.add(GRAY + "Higher tier pipe casings allow this item to last longer"); + } else { + super.handleNEIItemInputTooltip(currentTip, pStack); + } + return currentTip; + } + + @Override + protected void drawNEIOverlayForInput(GT_NEI_DefaultHandler.FixedPositionedStack stack) { + if (ItemUtils.isCatalyst(stack.item)) { + drawNEIOverlayText("NC*", stack); + } else { + super.drawNEIOverlayForInput(stack); + } + } +} diff --git a/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeCategories.java b/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeCategories.java new file mode 100644 index 0000000000..2d1aff7add --- /dev/null +++ b/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeCategories.java @@ -0,0 +1,19 @@ +package gtPlusPlus.api.recipe; + +import static gregtech.api.recipe.RecipeCategory.createIcon; + +import gregtech.api.enums.Mods; +import gregtech.api.recipe.RecipeCategory; +import gregtech.api.recipe.RecipeCategoryHolder; + +public class GTPPRecipeCategories { + + @RecipeCategoryHolder + public static final RecipeCategory absNonAlloyRecipes = new RecipeCategory( + "gtpp.recipe.category.abs_non_alloy_recipes", + GTPPRecipeMaps.alloyBlastSmelterRecipes, + builder -> builder.setDisplayImage( + createIcon( + Mods.GTPlusPlus + .getResourcePath("textures", "gui", "picture", "abs_non_alloy_recipes.png")))); +} diff --git a/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java b/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java new file mode 100644 index 0000000000..9d02865c5b --- /dev/null +++ b/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java @@ -0,0 +1,157 @@ +package gtPlusPlus.api.recipe; + +import java.util.Arrays; +import java.util.Collections; + +import net.minecraft.util.StatCollector; + +import com.gtnewhorizons.modularui.common.widget.ProgressBar; + +import gregtech.api.gui.modularui.GT_UITextures; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMapBackend; +import gregtech.api.recipe.RecipeMapBuilder; +import gregtech.api.recipe.maps.FluidOnlyFrontend; +import gregtech.api.recipe.maps.FuelBackend; +import gregtech.api.recipe.maps.LargeNEIFrontend; +import gregtech.api.util.GT_Utility; +import gregtech.nei.formatter.FuelSpecialValueFormatter; +import gregtech.nei.formatter.HeatingCoilSpecialValueFormatter; +import gregtech.nei.formatter.SimpleSpecialValueFormatter; +import gtPlusPlus.core.util.math.MathUtils; +import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.xmod.gregtech.api.gui.GTPP_UITextures; + +public class GTPPRecipeMaps { + + public static final RecipeMap cokeOvenRecipes = RecipeMapBuilder.of("gtpp.recipe.cokeoven") + .maxIO(2, 9, 1, 1).minInputs(1, 0).progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN) + .build(); + public static final RecipeMap multiblockMassFabricatorRecipes = RecipeMapBuilder + .of("gtpp.recipe.matterfab2").maxIO(2, 0, 1, 1).build(); + public static final RecipeMap rocketFuels = RecipeMapBuilder + .of("gtpp.recipe.rocketenginefuel", FuelBackend::new).maxIO(0, 0, 1, 0) + .neiSpecialInfoFormatter( + recipeInfo -> Collections.singletonList( + StatCollector.translateToLocalFormatted( + "GT5U.nei.fuel", + GT_Utility.formatNumbers(recipeInfo.recipe.mSpecialValue * 3000L)))) + .build(); + public static final RecipeMap quantumForceTransformerRecipes = RecipeMapBuilder + .of("gtpp.recipe.quantumforcesmelter").maxIO(6, 6, 6, 6).minInputs(1, 0) + .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE) + .neiSpecialInfoFormatter(new SimpleSpecialValueFormatter("GT5U.nei.tier")).frontend(LargeNEIFrontend::new) + .build(); + public static final RecipeMap chemicalDehydratorRecipes = RecipeMapBuilder + .of("gtpp.recipe.chemicaldehydrator").maxIO(2, 9, 1, 1) + .progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN).build(); + public static final RecipeMap vacuumFurnaceRecipes = RecipeMapBuilder.of("gtpp.recipe.vacfurnace") + .maxIO(9, 9, 3, 3).minInputs(1, 0).neiSpecialInfoFormatter(HeatingCoilSpecialValueFormatter.INSTANCE) + .frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap alloyBlastSmelterRecipes = RecipeMapBuilder + .of("gtpp.recipe.alloyblastsmelter").maxIO(9, 9, 3, 3).minInputs(1, 0).frontend(LargeNEIFrontend::new) + .build(); + public static final RecipeMap liquidFluorineThoriumReactorRecipes = RecipeMapBuilder + .of("gtpp.recipe.lftr").maxIO(0, 0, 6, 6).minInputs(0, 2).frontend(FluidOnlyFrontend::new) + .neiSpecialInfoFormatter(recipeInfo -> { + final long eut = recipeInfo.recipe.mSpecialValue; + final int duration = recipeInfo.recipe.mDuration; + return Arrays.asList( + StatCollector.translateToLocalFormatted("gtpp.nei.lftr.power", GT_Utility.formatNumbers(eut)), + StatCollector.translateToLocalFormatted( + "gtpp.nei.lftr.dynamo", + MathUtils.formatNumbers(duration * eut)), + StatCollector.translateToLocalFormatted( + "gtpp.nei.lftr.total", + MathUtils.formatNumbers(duration * eut * 4))); + }).build(); + public static final RecipeMap nuclearSaltProcessingPlantRecipes = RecipeMapBuilder + .of("gtpp.recipe.nuclearsaltprocessingplant").maxIO(1, 6, 2, 3).frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap millingRecipes = RecipeMapBuilder.of("gtpp.recipe.oremill") + .maxIO(3, 1, 0, 0).minInputs(1, 0).frontend(MillingFrontend::new).build(); + public static final RecipeMap fissionFuelProcessingRecipes = RecipeMapBuilder + .of("gtpp.recipe.fissionfuel").maxIO(0, 0, 6, 1).frontend(FluidOnlyFrontend::new).build(); + public static final RecipeMap coldTrapRecipes = RecipeMapBuilder.of("gtpp.recipe.coldtrap") + .maxIO(2, 9, 1, 1).progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN).build(); + public static final RecipeMap reactorProcessingUnitRecipes = RecipeMapBuilder + .of("gtpp.recipe.reactorprocessingunit").maxIO(2, 9, 1, 1) + .progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN).build(); + public static final RecipeMap simpleWasherRecipes = RecipeMapBuilder + .of("gtpp.recipe.simplewasher").maxIO(1, 1, 1, 0) + .slotOverlays( + (index, isFluid, isOutput, isSpecial) -> !isFluid && !isOutput ? GT_UITextures.OVERLAY_SLOT_CAULDRON + : null) + .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE).build(); + public static final RecipeMap molecularTransformerRecipes = RecipeMapBuilder + .of("gtpp.recipe.moleculartransformer").maxIO(1, 1, 0, 0) + .slotOverlays( + (index, isFluid, isOutput, + isSpecial) -> !isFluid && !isOutput ? GT_UITextures.OVERLAY_SLOT_MICROSCOPE : null) + .neiHandlerInfo( + builder -> builder.setDisplayStack( + ItemUtils.getItemStackFromFQRN("AdvancedSolarPanel:BlockMolecularTransformer", 1))) + .build(); + public static final RecipeMap chemicalPlantRecipes = RecipeMapBuilder + .of("gtpp.recipe.fluidchemicaleactor").maxIO(4, 4, 4, 2) + .slotOverlays((index, isFluid, isOutput, isSpecial) -> { + if (isFluid) { + if (isOutput) { + return GT_UITextures.OVERLAY_SLOT_VIAL_2; + } + return GT_UITextures.OVERLAY_SLOT_MOLECULAR_3; + } + if (isOutput) { + return GT_UITextures.OVERLAY_SLOT_VIAL_1; + } + return GT_UITextures.OVERLAY_SLOT_MOLECULAR_1; + }).progressBar(GTPP_UITextures.PROGRESSBAR_FLUID_REACTOR, ProgressBar.Direction.CIRCULAR_CW) + .progressBarPos(82, 24).neiSpecialInfoFormatter(recipeInfo -> { + int tier = recipeInfo.recipe.mSpecialValue + 1; + String materialName = StatCollector.translateToLocal("gtpp.nei.chemplant.tier." + tier); + return Collections.singletonList( + StatCollector.translateToLocalFormatted("GT5U.nei.tier", tier + " - " + materialName)); + }).frontend(ChemicalPlantFrontend::new).build(); + public static final RecipeMap rtgFuels = RecipeMapBuilder + .of("gtpp.recipe.RTGgenerators", FuelBackend::new).maxIO(1, 0, 0, 0) + .neiSpecialInfoFormatter(new SimpleSpecialValueFormatter("gtpp.nei.rtg.days", 365)).build(); + public static final RecipeMap thermalBoilerRecipes = RecipeMapBuilder + .of("gtpp.recipe.thermalgeneratorfuel").maxIO(9, 9, 3, 3).frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap solarTowerRecipes = RecipeMapBuilder.of("gtpp.recipe.solartower") + .maxIO(0, 0, 1, 1) + .neiSpecialInfoFormatter( + recipeInfo -> Arrays.asList( + StatCollector.translateToLocal("gtpp.nei.solar_tower.1"), + StatCollector.translateToLocal("gtpp.nei.solar_tower.2"), + StatCollector.translateToLocal("gtpp.nei.solar_tower.3"))) + .frontend(FluidOnlyFrontend::new).build(); + public static final RecipeMap cyclotronRecipes = RecipeMapBuilder.of("gtpp.recipe.cyclotron") + .maxIO(9, 9, 1, 1).build(); + public static final RecipeMap fishPondRecipes = RecipeMapBuilder.of("gtpp.recipe.fishpond") + .maxIO(1, 1, 0, 0) + .slotOverlays( + (index, isFluid, isOutput, isSpecial) -> !isFluid && !isOutput ? GT_UITextures.OVERLAY_SLOT_CAULDRON + : null) + .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE).build(); + public static final RecipeMap spargeTowerFakeRecipes = RecipeMapBuilder + .of("gtpp.recipe.spargetower").maxIO(0, 0, 9, 9).disableRegisterNEI().build(); + public static final RecipeMap advancedFreezerRecipes = RecipeMapBuilder + .of("gtpp.recipe.cryogenicfreezer").maxIO(1, 1, 2, 1).build(); + public static final RecipeMap centrifugeNonCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.multicentrifuge").maxIO(6, 6, 6, 6).progressBar(GT_UITextures.PROGRESSBAR_EXTRACT) + .frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap electrolyzerNonCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.multielectro").maxIO(6, 6, 6, 6).progressBar(GT_UITextures.PROGRESSBAR_EXTRACT) + .frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap mixerNonCellRecipes = RecipeMapBuilder.of("gtpp.recipe.multimixer") + .maxIO(9, 9, 6, 6).progressBar(GT_UITextures.PROGRESSBAR_MIXER, ProgressBar.Direction.CIRCULAR_CW) + .frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap chemicalDehydratorNonCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.multidehydrator").maxIO(6, 9, 3, 3).frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap semiFluidFuels = RecipeMapBuilder + .of("gtpp.recipe.semifluidgeneratorfuels", FuelBackend::new).maxIO(0, 0, 1, 0) + .neiSpecialInfoFormatter(FuelSpecialValueFormatter.INSTANCE).build(); + public static final RecipeMap flotationCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.flotationcell").maxIO(6, 0, 1, 1).build(); + public static final RecipeMap treeGrowthSimulatorFakeRecipes = RecipeMapBuilder + .of("gtpp.recipe.treefarm").maxIO(1, 2, 1, 0).minInputs(1, 0).frontend(TGSFrontend::new).build(); +} diff --git a/src/main/java/gtPlusPlus/api/recipe/MillingFrontend.java b/src/main/java/gtPlusPlus/api/recipe/MillingFrontend.java new file mode 100644 index 0000000000..924dcf3a0e --- /dev/null +++ b/src/main/java/gtPlusPlus/api/recipe/MillingFrontend.java @@ -0,0 +1,46 @@ +package gtPlusPlus.api.recipe; + +import static net.minecraft.util.EnumChatFormatting.GRAY; + +import java.util.List; + +import javax.annotation.ParametersAreNonnullByDefault; + +import net.minecraft.util.StatCollector; + +import gregtech.api.recipe.BasicUIPropertiesBuilder; +import gregtech.api.recipe.NEIRecipePropertiesBuilder; +import gregtech.api.recipe.RecipeMapFrontend; +import gregtech.api.util.MethodsReturnNonnullByDefault; +import gregtech.nei.GT_NEI_DefaultHandler; +import gtPlusPlus.core.util.minecraft.ItemUtils; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class MillingFrontend extends RecipeMapFrontend { + + public MillingFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder, + NEIRecipePropertiesBuilder neiPropertiesBuilder) { + super(uiPropertiesBuilder, neiPropertiesBuilder); + } + + @Override + protected List handleNEIItemInputTooltip(List currentTip, + GT_NEI_DefaultHandler.FixedPositionedStack pStack) { + if (ItemUtils.isMillingBall(pStack.item)) { + currentTip.add(GRAY + StatCollector.translateToLocal("gtpp.nei.milling.not_consumed")); + } else { + super.handleNEIItemInputTooltip(currentTip, pStack); + } + return currentTip; + } + + @Override + protected void drawNEIOverlayForInput(GT_NEI_DefaultHandler.FixedPositionedStack stack) { + if (ItemUtils.isMillingBall(stack.item)) { + drawNEIOverlayText("NC*", stack); + } else { + super.drawNEIOverlayForInput(stack); + } + } +} diff --git a/src/main/java/gtPlusPlus/api/recipe/TGSFrontend.java b/src/main/java/gtPlusPlus/api/recipe/TGSFrontend.java new file mode 100644 index 0000000000..10a9fe4da6 --- /dev/null +++ b/src/main/java/gtPlusPlus/api/recipe/TGSFrontend.java @@ -0,0 +1,68 @@ +package gtPlusPlus.api.recipe; + +import static net.minecraft.util.EnumChatFormatting.GRAY; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import javax.annotation.ParametersAreNonnullByDefault; + +import net.minecraft.util.StatCollector; + +import gregtech.api.recipe.BasicUIPropertiesBuilder; +import gregtech.api.recipe.NEIRecipePropertiesBuilder; +import gregtech.api.recipe.RecipeMapFrontend; +import gregtech.api.util.MethodsReturnNonnullByDefault; +import gregtech.nei.GT_NEI_DefaultHandler; +import gregtech.nei.RecipeDisplayInfo; +import gregtech.nei.formatter.INEISpecialInfoFormatter; +import gtPlusPlus.core.item.ModItems; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class TGSFrontend extends RecipeMapFrontend { + + public TGSFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder, NEIRecipePropertiesBuilder neiPropertiesBuilder) { + super(uiPropertiesBuilder, neiPropertiesBuilder.neiSpecialInfoFormatter(new TGSSpecialValueFormatter())); + } + + @Override + protected void drawEnergyInfo(RecipeDisplayInfo recipeInfo) {} + + @Override + protected void drawDurationInfo(RecipeDisplayInfo recipeInfo) {} + + @Override + protected List handleNEIItemOutputTooltip(List currentTip, + GT_NEI_DefaultHandler.FixedPositionedStack pStack) { + if (ModItems.fluidFertBasic != null && pStack.isChanceBased()) { + currentTip.add( + GRAY + StatCollector.translateToLocalFormatted( + "gtpp.nei.tgs.sapling", + StatCollector.translateToLocal(ModItems.fluidFertBasic.getUnlocalizedName()))); + } else { + super.handleNEIItemOutputTooltip(currentTip, pStack); + } + return currentTip; + } + + @Override + protected void drawNEIOverlayForOutput(GT_NEI_DefaultHandler.FixedPositionedStack stack) {} + + private static class TGSSpecialValueFormatter implements INEISpecialInfoFormatter { + + @Override + public List format(RecipeDisplayInfo recipeInfo) { + if (ModItems.fluidFertBasic == null) { + return Collections.emptyList(); + } + return Arrays.asList( + StatCollector.translateToLocal("gtpp.nei.tgs.1"), + StatCollector.translateToLocalFormatted( + "gtpp.nei.tgs.2", + StatCollector.translateToLocal(ModItems.fluidFertBasic.getUnlocalizedName())), + StatCollector.translateToLocal("gtpp.nei.tgs.3")); + } + } +} diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java index 1e390eeb72..8ad226bb7a 100644 --- a/src/main/java/gtPlusPlus/core/item/ModItems.java +++ b/src/main/java/gtPlusPlus/core/item/ModItems.java @@ -4,7 +4,7 @@ import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.enums.Mods.GregTech; import static gregtech.api.enums.Mods.Thaumcraft; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static gtPlusPlus.core.creative.AddToCreativeTab.tabMisc; @@ -673,7 +673,7 @@ public final class ModItems { null, true); GT_Values.RA.stdBuilder().itemInputs(temp2).fluidOutputs(new FluidStack(fluidFertBasic, 36)) - .duration(5 * TICKS).eut(16).addTo(sFluidExtractionRecipes); + .duration(5 * TICKS).eut(16).addTo(fluidExtractionRecipes); } fluidFertUN32 = FluidUtils.generateFluidNonMolten( "UN32Fertiliser", diff --git a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java index 40ecd9d3e7..ca7fc7c087 100644 --- a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java +++ b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngotHot.java @@ -2,7 +2,7 @@ package gtPlusPlus.core.item.base.ingots; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.enums.Mods.GregTech; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.recipe.RecipeMaps.vacuumFreezerRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.client.renderer.texture.IIconRegister; @@ -56,7 +56,7 @@ public class BaseItemIngotHot extends BaseItemIngot { Logger.WARNING("Adding Vacuum Freezer recipe for a Hot Ingot of " + this.materialName + "."); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(this)).itemOutputs(this.outputIngot.copy()) .duration(Math.max(this.componentMaterial.getMass() * 3L, 1L) * TICKS) - .eut(this.componentMaterial.vVoltageMultiplier).addTo(sVacuumRecipes); + .eut(this.componentMaterial.vVoltageMultiplier).addTo(vacuumFreezerRecipes); } @Override diff --git a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java index 3679121ed5..bd03cf33fb 100644 --- a/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java +++ b/src/main/java/gtPlusPlus/core/item/base/ingots/BaseItemIngot_OLD.java @@ -1,7 +1,7 @@ package gtPlusPlus.core.item.base.ingots; import static gregtech.api.enums.Mods.GTPlusPlus; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.recipe.RecipeMaps.compressorRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.entity.Entity; @@ -81,7 +81,7 @@ public class BaseItemIngot_OLD extends Item { tempOutput = ItemUtils.getItemStackOfAmountFromOreDict(temp, 1); if (tempOutput != null) { GT_Values.RA.stdBuilder().itemInputs(tempStack).itemOutputs(tempOutput).duration(15 * SECONDS) - .eut(2).addTo(sCompressorRecipes); + .eut(2).addTo(compressorRecipes); } } } else if (this.unlocalName.contains("itemHotIngot")) { diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java index b914730ee2..95d1fc616d 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/AgriculturalChem.java @@ -3,9 +3,9 @@ package gtPlusPlus.core.item.chemistry; import static gregtech.api.enums.Mods.BiomesOPlenty; import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.TinkerConstruct; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.compressorRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; @@ -424,14 +424,14 @@ public class AgriculturalChem extends ItemPackage { .itemOutputs(aDirtDust, aDirtDust, aManureByprod1, aManureByprod1, aManureByprod1, aManureByprod1) .outputChances(2000, 2000, 500, 500, 250, 250).fluidInputs(FluidUtils.getFluidStack(PoopJuice, 1000)) .fluidOutputs(FluidUtils.getFluidStack(ManureSlurry, 250)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); // More Efficient way to get byproducts, less Slurry GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20)) .itemOutputs(aDirtDust, aDirtDust, aManureByprod1, aManureByprod1, aManureByprod2, aManureByprod2) .outputChances(4000, 3000, 1250, 1250, 675, 675).fluidInputs(FluidUtils.getFluidStack(PoopJuice, 1000)) .fluidOutputs(FluidUtils.getFluidStack(ManureSlurry, 50)).duration(20 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(centrifugeRecipes); } private static void addAdvancedSlurryRecipes() { @@ -451,7 +451,7 @@ public class AgriculturalChem extends ItemPackage { // Poop Juice to Fertile Slurry GT_Values.RA.stdBuilder().itemInputs(aCircuit, aBone, aMeat, aInputCells).itemOutputs(aEmptyCells) .fluidInputs(aBloodStack).fluidOutputs(aOutput).duration(8 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(mixerRecipes); } } } @@ -556,7 +556,7 @@ public class AgriculturalChem extends ItemPackage { // Dirt Production GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(dustDirt, 9)) .itemOutputs(ItemUtils.getSimpleStack(Blocks.dirt)).duration(2 * SECONDS).eut(8) - .addTo(sCompressorRecipes); + .addTo(compressorRecipes); // Centrifuge Byproducts @@ -572,7 +572,7 @@ public class AgriculturalChem extends ItemPackage { ItemUtils.getItemStackOfAmountFromOreDict("dustTinyAmmoniumNitrate", 1)) .outputChances(2500, 2500, 750, 1000, 5000, 250).fluidInputs(Materials.SulfuricAcid.getFluid(250)) .fluidOutputs(FluidUtils.getFluidStack("sulfuricapatite", 50)).duration(20 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(centrifugeRecipes); // Add Fuel Usages CORE.RA.addSemifluidFuel(FluidUtils.getFluidStack(PoopJuice, 1000), 12); @@ -591,7 +591,7 @@ public class AgriculturalChem extends ItemPackage { .outputChances(3000, 3000, 2000, 2000, 1000, 1000) .fluidInputs(FluidUtils.getFluidStack(AgriculturalChem.RedMud, 1000)) .fluidOutputs(Materials.Water.getFluid(500)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); } @Override diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java index 81eed041c6..c20fe9d522 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -1,7 +1,7 @@ package gtPlusPlus.core.item.chemistry; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; @@ -441,7 +441,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 16L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 1L)) .fluidOutputs(FluidUtils.getFluidStack(Carbon_Disulfide, 4000)).duration(10 * MINUTES) - .eut(TierEU.RECIPE_LV).metadata(COIL_HEAT, 1500).addTo(sBlastRecipes); + .eut(TierEU.RECIPE_LV).metadata(COIL_HEAT, 1500).addTo(blastFurnaceRecipes); CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedCircuit(20), ItemUtils.getSimpleStack(mBrownCatalyst, 0), @@ -487,7 +487,7 @@ public class GenericChem extends ItemPackage { GT_Utility.getIntegratedCircuit(10)) .itemOutputs(ItemUtils.getSimpleStack(mMillingBallAlumina, 8)) .fluidInputs(FluidUtils.getFluidStack(GenericChem.Aniline, 4000)).duration(3 * MINUTES) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); } private void recipeGrindingBallSoapstone() { @@ -497,7 +497,7 @@ public class GenericChem extends ItemPackage { GT_Utility.getIntegratedCircuit(10)) .itemOutputs(ItemUtils.getSimpleStack(mMillingBallSoapstone, 8)) .fluidInputs(FluidUtils.getFluidStack(AgrichemFluids.mLiquidResin, 2500)).duration(2 * MINUTES) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); } private void recipeCyclohexane() { @@ -546,7 +546,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Copper, 2L)) .itemOutputs(ItemUtils.getSimpleStack(mRedCatalyst, 10)).duration(20 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystYellow() { @@ -558,7 +558,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 4L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 4L)) .itemOutputs(ItemUtils.getSimpleStack(mYellowCatalyst, 10)).duration(1 * MINUTES).eut(TierEU.RECIPE_EV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystBlue() { @@ -570,7 +570,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cobalt, 3L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Titanium, 3L)) .itemOutputs(ItemUtils.getSimpleStack(mBlueCatalyst, 10)).duration(40 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystOrange() { @@ -582,7 +582,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 5L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Palladium, 5L)) .itemOutputs(ItemUtils.getSimpleStack(mOrangeCatalyst, 10)).duration(40 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystPurple() { @@ -594,7 +594,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iridium, 6L), ELEMENT.getInstance().RUTHENIUM.getDust(6)) .itemOutputs(ItemUtils.getSimpleStack(mPurpleCatalyst, 10)).duration(2 * MINUTES).eut(TierEU.RECIPE_IV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystBrown() { @@ -606,7 +606,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Nickel, 4L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4L)) .itemOutputs(ItemUtils.getSimpleStack(mBrownCatalyst, 10)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystPink() { @@ -618,7 +618,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 4L), ELEMENT.getInstance().RHODIUM.getDust(4)) .itemOutputs(ItemUtils.getSimpleStack(mPinkCatalyst, 10)).duration(30 * SECONDS).eut(TierEU.RECIPE_EV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private void recipeCatalystFormaldehyde() { @@ -629,7 +629,7 @@ public class GenericChem extends ItemPackage { CI.getEmptyCatalyst(4), ItemUtils.getSimpleStack(RocketFuels.Formaldehyde_Catalyst_Dust, 8)) .itemOutputs(ItemUtils.getSimpleStack(mFormaldehydeCatalyst, 4)).duration(30 * SECONDS) - .eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV / 2).addTo(assemblerRecipes); } private void recipeCatalystSolidAcid() { @@ -641,7 +641,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lapis, 2L)) .itemOutputs(ItemUtils.getSimpleStack(GenericChem.mSolidAcidCatalyst, 5)) .fluidInputs(MISC_MATERIALS.SOLID_ACID_MIXTURE.getFluidStack(1000)).duration(30 * SECONDS) - .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_EV).addTo(assemblerRecipes); } private void recipeCatalystInfiniteMutation() { @@ -653,7 +653,7 @@ public class GenericChem extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Infinity, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 10L)) .itemOutputs(ItemUtils.getSimpleStack(GenericChem.mInfiniteMutationCatalyst, 5)).duration(5 * SECONDS) - .eut(TierEU.RECIPE_UHV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_UHV).addTo(assemblerRecipes); } private void recipeCadaverineAndPutrescine() { diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java index 07b2913434..d3705cbb9b 100644 --- a/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java +++ b/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java @@ -1,8 +1,8 @@ package gtPlusPlus.core.item.chemistry; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistilleryRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.recipe.RecipeMaps.distilleryRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; +import static gregtech.api.recipe.RecipeMaps.vacuumFreezerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.util.HashMap; @@ -19,10 +19,11 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.minecraft.ItemPackage; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.item.base.BaseItemComponent; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; @@ -72,12 +73,12 @@ public class RocketFuels extends ItemPackage { if (fuelA != null) { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(23)).fluidInputs(fuelA) .fluidOutputs(FluidUtils.getFluidStack(Kerosene, 1800)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sDistilleryRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(distilleryRecipes); } if (fuelA == null && fuelB != null) { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(23)).fluidInputs(fuelB) .fluidOutputs(FluidUtils.getFluidStack(Kerosene, 1800)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sDistilleryRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(distilleryRecipes); } } @@ -86,7 +87,7 @@ public class RocketFuels extends ItemPackage { if (fuelA != null) { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(23)).fluidInputs(fuelA) .fluidOutputs(FluidUtils.getFluidStack(RP1, 750)).duration(40 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sDistilleryRecipes); + .addTo(distilleryRecipes); } } @@ -136,7 +137,7 @@ public class RocketFuels extends ItemPackage { private static void createLOH() { GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogen", 1)) .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("cellLiquidHydrogen", 1)).duration(16 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sVacuumRecipes); + .eut(TierEU.RECIPE_MV).addTo(vacuumFreezerRecipes); CORE.RA.addAdvancedFreezerRecipe( new ItemStack[] {}, @@ -196,7 +197,7 @@ public class RocketFuels extends ItemPackage { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Vanadium, 1L), GT_Utility.getIntegratedCircuit(18)) .itemOutputs(ItemUtils.getSimpleStack(Formaldehyde_Catalyst_Dust, 4)).duration(8 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_LV).addTo(mixerRecipes); } private static void createUnsymmetricalDimethylhydrazine() { @@ -215,10 +216,10 @@ public class RocketFuels extends ItemPackage { } private static void addRocketFuelsToMap() { - HashMap mRocketFuels = new LinkedHashMap<>(); + HashMap mRocketFuels = new LinkedHashMap<>(); mRocketFuels.put( 0, - new GTPP_Recipe( + new GT_Recipe( true, new ItemStack[] {}, new ItemStack[] {}, @@ -232,7 +233,7 @@ public class RocketFuels extends ItemPackage { mRocketFuels.put( 1, - new GTPP_Recipe( + new GT_Recipe( true, new ItemStack[] {}, new ItemStack[] {}, @@ -246,7 +247,7 @@ public class RocketFuels extends ItemPackage { mRocketFuels.put( 2, - new GTPP_Recipe( + new GT_Recipe( true, new ItemStack[] {}, new ItemStack[] {}, @@ -260,7 +261,7 @@ public class RocketFuels extends ItemPackage { mRocketFuels.put( 3, - new GTPP_Recipe( + new GT_Recipe( true, new ItemStack[] {}, new ItemStack[] {}, @@ -278,11 +279,11 @@ public class RocketFuels extends ItemPackage { mValidRocketFuelNames.add(FluidRegistry.getFluidName(Diesel)); for (int mID : mRocketFuels.keySet()) { - GTPP_Recipe aFuelRecipe = mRocketFuels.get(mID); + GT_Recipe aFuelRecipe = mRocketFuels.get(mID); if (aFuelRecipe != null) { mValidRocketFuelNames.add(FluidRegistry.getFluidName(aFuelRecipe.mFluidInputs[0].getFluid())); mValidRocketFuels.put(mID, aFuelRecipe.mFluidInputs[0].getFluid()); - GTPP_Recipe.GTPP_Recipe_Map.sRocketFuels.add(aFuelRecipe); + GTPPRecipeMaps.rocketFuels.add(aFuelRecipe); } } } diff --git a/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java b/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java index b1bcbe39ed..9826478ec5 100644 --- a/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java +++ b/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java @@ -10,6 +10,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; +import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; @@ -45,6 +46,7 @@ import gtPlusPlus.core.entity.projectile.EntityToxinballSmall; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.lib.CORE.ConfigSwitches; import gtPlusPlus.core.tileentities.general.TileEntityDecayablesChest; +import gtPlusPlus.nei.NEI_GTPP_Config; import gtPlusPlus.xmod.gregtech.common.render.GTPP_CapeRenderer; import gtPlusPlus.xmod.gregtech.common.render.GTPP_FlaskRenderer; import gtPlusPlus.xmod.gregtech.common.render.GTPP_Render_MachineBlock; @@ -95,6 +97,8 @@ public class ClientProxy extends CommonProxy implements Runnable { new GTPP_FlaskRenderer(); + MinecraftForge.EVENT_BUS.register(new NEI_GTPP_Config()); + super.init(e); } diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java index 858be53dd4..54d8fa3675 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java @@ -3,24 +3,24 @@ package gtPlusPlus.core.recipe; import static gregtech.api.enums.Mods.Backpack; import static gregtech.api.enums.Mods.Baubles; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBrewingRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistillationRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistilleryRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFusionRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes; +import static gregtech.api.recipe.RecipeMaps.alloySmelterRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.brewingRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.compressorRecipes; +import static gregtech.api.recipe.RecipeMaps.cutterRecipes; +import static gregtech.api.recipe.RecipeMaps.distillationTowerRecipes; +import static gregtech.api.recipe.RecipeMaps.distilleryRecipes; +import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes; +import static gregtech.api.recipe.RecipeMaps.extruderRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidHeaterRecipes; +import static gregtech.api.recipe.RecipeMaps.fusionRecipes; +import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; +import static gregtech.api.recipe.RecipeMaps.multiblockChemicalReactorRecipes; import static gregtech.api.util.GT_RecipeBuilder.BUCKETS; import static gregtech.api.util.GT_RecipeBuilder.HOURS; import static gregtech.api.util.GT_RecipeBuilder.INGOTS; @@ -121,7 +121,7 @@ public class RECIPES_GREGTECH { // Wood's Glass Laser Lens GT_Values.RA.stdBuilder().itemInputs(MISC_MATERIALS.WOODS_GLASS.getDust(5), ItemList.Shape_Mold_Ball.get(0)) .itemOutputs(GregtechItemList.Laser_Lens_WoodsGlass.get(1)).duration(5 * MINUTES).eut(TierEU.RECIPE_HV) - .addTo(sAlloySmelterRecipes); + .addTo(alloySmelterRecipes); } private static void chemplantRecipes() { @@ -260,7 +260,7 @@ public class RECIPES_GREGTECH { private static void fluidHeaterRecipes() { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(20)) .fluidInputs(Materials.Water.getFluid(1000)).fluidOutputs(FluidUtils.getHotWater(1000)) - .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sFluidHeaterRecipes); + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(fluidHeaterRecipes); } private static void fusionRecipes() { @@ -271,7 +271,7 @@ public class RECIPES_GREGTECH { ELEMENT.STANDALONE.RHUGNOR.getFluidStack(288)) .fluidOutputs(ELEMENT.STANDALONE.HYPOGEN.getFluidStack(36)) .duration(6 * MINUTES + 49 * SECONDS + 12 * TICKS).eut(TierEU.RECIPE_UHV) - .metadata(FUSION_THRESHOLD, 1_200_000_000).addTo(sFusionRecipes); + .metadata(FUSION_THRESHOLD, 1_200_000_000).addTo(fusionRecipes); // Rhugnor GT_Values.RA.stdBuilder() @@ -279,7 +279,7 @@ public class RECIPES_GREGTECH { MaterialUtils.getMaterial("Infinity", "Neutronium").getMolten(144), ALLOY.QUANTUM.getFluidStack(288)) .fluidOutputs(ELEMENT.STANDALONE.RHUGNOR.getFluidStack(144)).duration(25 * SECONDS + 12 * TICKS) - .eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 2_000_000_000).addTo(sFusionRecipes); + .eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 2_000_000_000).addTo(fusionRecipes); } private static void assemblyLineRecipes() { @@ -519,7 +519,7 @@ public class RECIPES_GREGTECH { for (int i = 1; i < aTransParts.length; i++) { GT_Values.RA.stdBuilder().itemInputs(CI.getEmitter(i, 2), CI.getSensor(i, 2)) .itemOutputs(aTransParts[i - 1].get(1)).duration(5 * SECONDS).eut(GT_Values.VP[i]) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); } GT_Values.RA.stdBuilder() @@ -528,7 +528,7 @@ public class RECIPES_GREGTECH { GregtechItemList.Laser_Lens_Special.get(0)) .itemOutputs(ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.getDust(1)).duration(3 * MINUTES) .eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.vTier)) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -536,12 +536,12 @@ public class RECIPES_GREGTECH { GregtechItemList.Laser_Lens_Special.get(0)) .itemOutputs(ELEMENT.STANDALONE.ASTRAL_TITANIUM.getDust(1)).duration(2 * MINUTES) .eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.ASTRAL_TITANIUM.vTier)) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(ALLOY.NITINOL_60.getBlock(2), GregtechItemList.Laser_Lens_Special.get(0)) .itemOutputs(ELEMENT.STANDALONE.ADVANCED_NITINOL.getBlock(1)).duration(1 * MINUTES) .eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.ADVANCED_NITINOL.vTier)) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -549,11 +549,11 @@ public class RECIPES_GREGTECH { GregtechItemList.Laser_Lens_Special.get(0)) .itemOutputs(ELEMENT.STANDALONE.CHRONOMATIC_GLASS.getDust(1)).duration(5 * MINUTES) .eut(MaterialUtils.getVoltageForTier(ELEMENT.STANDALONE.CHRONOMATIC_GLASS.vTier)) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(CI.getFieldGenerator(6, 1), CI.getEmitter(7, 2)) .itemOutputs(ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_1_CONTAINMENT, 1)) - .duration(5 * MINUTES).eut(TierEU.RECIPE_IV).addTo(sLaserEngraverRecipes); + .duration(5 * MINUTES).eut(TierEU.RECIPE_IV).addTo(laserEngraverRecipes); // Distillus Upgrade Chip GT_Values.RA.stdBuilder() @@ -561,37 +561,37 @@ public class RECIPES_GREGTECH { GregtechItemList.Laser_Lens_WoodsGlass.get(0), ItemUtils.simpleMetaStack(AgriculturalChem.mBioCircuit, 20, 1)) .itemOutputs(GregtechItemList.Distillus_Upgrade_Chip.get(1)).duration(5 * MINUTES).eut(TierEU.RECIPE_IV) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); } private static void breweryRecipes() { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(14)) .fluidInputs(EnchantingUtils.getMobEssence(100)).fluidOutputs(EnchantingUtils.getLiquidXP(1332)) - .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sBrewingRecipes); + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(brewingRecipes); GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(14)) .fluidInputs(EnchantingUtils.getLiquidXP(1332)).fluidOutputs(EnchantingUtils.getMobEssence(100)) - .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sBrewingRecipes); + .duration(5 * SECONDS).eut(TierEU.RECIPE_MV).addTo(brewingRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest)) .fluidInputs(Materials.Water.getFluid(100L)).fluidOutputs(Materials.Biomass.getFluid(100L)) - .duration(1 * MINUTES).eut(3).addTo(sBrewingRecipes); + .duration(1 * MINUTES).eut(3).addTo(brewingRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest)) .fluidInputs(Materials.Honey.getFluid(100L)).fluidOutputs(Materials.Biomass.getFluid(100L)) - .duration(1 * MINUTES).eut(3).addTo(sBrewingRecipes); + .duration(1 * MINUTES).eut(3).addTo(brewingRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(BOP_Block_Registrator.sapling_Rainforest)) .fluidInputs(FluidUtils.getFluidStack("juice", 100)).fluidOutputs(Materials.Biomass.getFluid(100L)) - .duration(1 * MINUTES).eut(3).addTo(sBrewingRecipes); + .duration(1 * MINUTES).eut(3).addTo(brewingRecipes); } private static void cuttingSawRecipes() { GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("blockMeatRaw", 1)) .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("plateMeatRaw", 9)).duration(16 * TICKS) - .eut(TierEU.RECIPE_ULV).addTo(sCutterRecipes); + .eut(TierEU.RECIPE_ULV).addTo(cutterRecipes); } private static void electrolyzerRecipes() { GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(ModItems.dustDecayedRadium226, 1)) .fluidOutputs(FluidUtils.getFluidStack("radon", 144)).duration(1 * MINUTES + 30 * SECONDS) - .eut(TierEU.RECIPE_HV / 2).addTo(sElectrolyzerRecipes); + .eut(TierEU.RECIPE_HV / 2).addTo(electrolyzerRecipes); } private static void extruderRecipes() { @@ -601,7 +601,7 @@ public class RECIPES_GREGTECH { ItemUtils.getItemStackOfAmountFromOreDict("blockOsmium", 1), ItemList.Shape_Mold_Credit.get(0)) .itemOutputs(ItemList.Credit_Greg_Osmium.get(1)).duration(6 * MINUTES + 20 * SECONDS) - .eut(TierEU.RECIPE_EV / 2).addTo(sExtruderRecipes); + .eut(TierEU.RECIPE_EV / 2).addTo(extruderRecipes); } private static void blastSmelterRecipes() { @@ -829,14 +829,14 @@ public class RECIPES_GREGTECH { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).itemOutputs() .fluidInputs(FluidUtils.getFluidStack("fluid.ethylbenzene", 1000)) .fluidOutputs(Materials.Styrene.getFluid(1000L), Materials.Hydrogen.getGas(2000)) - .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sMultiblockChemicalRecipes); + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(multiblockChemicalReactorRecipes); // Short-cut Styrene // C6H6 + C2H4 = C8H8 + 2H GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(24)).itemOutputs() .fluidInputs(Materials.Ethylene.getGas(500L), Materials.Benzene.getFluid(500L)) .fluidOutputs(Materials.Styrene.getFluid(500L), Materials.Hydrogen.getGas(1000)).duration(12 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + .eut(TierEU.RECIPE_MV).addTo(multiblockChemicalReactorRecipes); } private static void assemblerRecipes() { @@ -847,7 +847,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.VanadiumSteel, 8L)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 4)) .fluidInputs(Materials.Oxygen.getGas(8000L)).duration(16 * SECONDS).eut(TierEU.RECIPE_MV / 2) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -855,7 +855,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.VanadiumGallium, 8L)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemHalfCompleteCasings, 0, 4)) .fluidInputs(Materials.Tantalum.getMolten(4 * INGOTS)).duration(32 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -865,7 +865,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 2L)) .itemOutputs(ItemUtils.getSimpleStack(GregtechItemList.Casing_Vanadium_Redox.get(1), 1)) .fluidInputs(Materials.Oxygen.getGas(16 * BUCKETS)).duration(3 * SECONDS + 4 * TICKS) - .eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV / 2).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -875,7 +875,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 2L)) .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_IV.get(1)) .fluidInputs(Materials.Nitrogen.getGas(16 * BUCKETS)).duration(6 * SECONDS).eut(TierEU.RECIPE_EV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -885,7 +885,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 2L)) .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_LuV.get(1)) .fluidInputs(Materials.Helium.getGas(8 * BUCKETS)).duration(12 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_IV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -895,7 +895,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 2L)) .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_ZPM.get(1)) .fluidInputs(Materials.Argon.getGas(4 * BUCKETS)).duration(25 * SECONDS).eut(TierEU.RECIPE_LuV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -905,7 +905,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 2L)) .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_UV.get(1)) .fluidInputs(Materials.Radon.getGas(4 * BUCKETS)).duration(50 * SECONDS).eut(TierEU.RECIPE_ZPM) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -915,7 +915,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorUV, 2L)) .itemOutputs(GregtechItemList.Casing_Vanadium_Redox_MAX.get(1)) .fluidInputs(FluidUtils.getFluidStack("krypton", 500)).duration(1 * MINUTES + 40 * SECONDS) - .eut(TierEU.RECIPE_UV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_UV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -924,7 +924,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 2L), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Iron, 1L)) .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockMiningExplosive, 3)).duration(5 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -932,7 +932,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 8L), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.BlackSteel, 8L)) .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard, 64)).duration(30 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -943,7 +943,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Brass, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 2L)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_LV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -954,7 +954,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Invar, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1)).duration(20 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_MV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -965,7 +965,7 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Chrome, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.StainlessSteel, 2L)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1)).duration(30 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -976,35 +976,35 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Titanium, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TungstenSteel, 2L)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1)).duration(40 * SECONDS) - .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_EV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 1, 1), GT_Utility.getIntegratedCircuit(20)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1000, 1)) - .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sAssemblerRecipes); + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 2, 1), GT_Utility.getIntegratedCircuit(20)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1001, 1)).duration(6 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_MV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 3, 1), GT_Utility.getIntegratedCircuit(20)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1002, 1)).duration(24 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( ItemUtils.simpleMetaStack(ModItems.itemGenericToken, 4, 1), GT_Utility.getIntegratedCircuit(20)) .itemOutputs(ItemUtils.simpleMetaStack(ModItems.toolGregtechPump, 1003, 1)) - .duration(1 * MINUTES + 36 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + .duration(1 * MINUTES + 36 * SECONDS).eut(TierEU.RECIPE_EV).addTo(assemblerRecipes); // Low tier Charge Packs @@ -1041,7 +1041,7 @@ public class RECIPES_GREGTECH { aPackBatteries[aAS], CI.getSensor(i, 4)) .itemOutputs(aPackOutput[aAS]).fluidInputs(CI.getTieredFluid(i, (144 * 4))) - .duration(30 * i * SECONDS).eut(GT_Values.V[i]).addTo(sAssemblerRecipes); + .duration(30 * i * SECONDS).eut(GT_Values.V[i]).addTo(assemblerRecipes); } if (Baubles.isModLoaded()) { @@ -1058,7 +1058,7 @@ public class RECIPES_GREGTECH { .itemOutputs( ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_8_TURBINE_AUTOMATION, 1)) .fluidInputs(CI.getAlternativeTieredFluid(7, 144 * 32)).duration(5 * MINUTES).eut(TierEU.RECIPE_LuV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); // Cloaking Device Research Page GT_Values.RA.stdBuilder() @@ -1070,7 +1070,7 @@ public class RECIPES_GREGTECH { ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(6), 12)) .itemOutputs(ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1)) .fluidInputs(CI.getAlternativeTieredFluid(7, 144 * 32)).duration(10 * MINUTES) - .eut(TierEU.RECIPE_ZPM).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_ZPM).addTo(assemblerRecipes); } } @@ -1078,11 +1078,11 @@ public class RECIPES_GREGTECH { Logger.INFO("Registering Distillery/Distillation Tower Recipes."); GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(4)) .fluidInputs(Materials.Air.getGas(1000L)).fluidOutputs(Materials.Helium.getGas(1L)) - .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sDistilleryRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(distilleryRecipes); GT_Values.RA.stdBuilder().itemOutputs(ItemUtils.getSimpleStack(ModItems.itemHydrogenBlob, 1)) .fluidInputs(Materials.Air.getGas(20000L)).fluidOutputs(Materials.Helium.getGas(25L)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_MV / 2).addTo(sDistillationRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV / 2).addTo(distillationTowerRecipes); // Apatite Distillation /* @@ -1094,11 +1094,11 @@ public class RECIPES_GREGTECH { FluidUtils.getFluidStack("sulfurousacid", 3800), FluidUtils.getFluidStack("hydrogenchloride", 1000), FluidUtils.getFluidStack("hydrofluoricacid", 400)) - .duration(45 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sDistillationRecipes); + .duration(45 * SECONDS).eut(TierEU.RECIPE_MV).addTo(distillationTowerRecipes); GT_Values.RA.stdBuilder().fluidInputs(FluidUtils.getFluidStack("sulfurousacid", 1000)) .fluidOutputs(Materials.SulfurDioxide.getGas(500), Materials.Water.getFluid(500)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sDistillationRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(distillationTowerRecipes); } private static void addFuels() { @@ -1159,17 +1159,17 @@ public class RECIPES_GREGTECH { // Gelid Cryotheum GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cryotheum, 1L)) .fluidOutputs(FluidUtils.getFluidStack("cryotheum", 250)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV / 2).addTo(sFluidExtractionRecipes); + .eut(TierEU.RECIPE_HV / 2).addTo(fluidExtractionRecipes); // Ender Fluid GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(Items.ender_pearl)) .fluidOutputs(FluidUtils.getFluidStack("ender", 250)).duration(5 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); // Blazing Pyrotheum GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Pyrotheum, 1L)) .fluidOutputs(FluidUtils.getFluidStack("pyrotheum", 250)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV / 2).addTo(sFluidExtractionRecipes); + .eut(TierEU.RECIPE_HV / 2).addTo(fluidExtractionRecipes); } private static void centrifugeRecipes() { @@ -1180,7 +1180,7 @@ public class RECIPES_GREGTECH { MISC_MATERIALS.SODIUM_NITRATE.getDust(3), MISC_MATERIALS.POTASSIUM_NITRATE.getDust(2), CI.emptyCells(1)) - .duration(6 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); + .duration(6 * SECONDS).eut(TierEU.RECIPE_MV).addTo(centrifugeRecipes); } private static void mixerRecipes() { @@ -1192,7 +1192,7 @@ public class RECIPES_GREGTECH { MISC_MATERIALS.SODIUM_NITRATE.getDust(3), MISC_MATERIALS.POTASSIUM_NITRATE.getDust(2)) .itemOutputs(MISC_MATERIALS.SOLAR_SALT_COLD.getCell(1)).duration(2 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -1203,7 +1203,7 @@ public class RECIPES_GREGTECH { Materials.Lithium.getDust(9), Materials.Sulfur.getDust(9)) .itemOutputs(ALLOY.LEAGRISIUM.getDust(50)).fluidInputs(Materials.Hydrogen.getGas(5000)) - .duration(1 * MINUTES).eut(TierEU.RECIPE_EV).addTo(sMixerRecipes); + .duration(1 * MINUTES).eut(TierEU.RECIPE_EV).addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -1214,7 +1214,7 @@ public class RECIPES_GREGTECH { Materials.Nickel.getDust(4), Materials.Cobalt.getDust(2)) .itemOutputs(ALLOY.MARAGING250.getDust(24)).duration(1 * MINUTES).eut(TierEU.RECIPE_EV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); } private static void chemicalReactorRecipes() { @@ -1255,33 +1255,33 @@ public class RECIPES_GREGTECH { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 8L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Silicon, 8L)) .fluidInputs(Materials.Nitrogen.getGas(4000)).fluidOutputs().duration(1 * MINUTES).eut(TierEU.RECIPE_IV) - .metadata(COIL_HEAT, 4500).addTo(sBlastRecipes); + .metadata(COIL_HEAT, 4500).addTo(blastFurnaceRecipes); } private static void compressorRecipes() { GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Clay, 1L)).duration(15 * SECONDS) - .eut(2).addTo(sCompressorRecipes); + .eut(2).addTo(compressorRecipes); GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 9L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.MeatRaw, 1L)).duration(15 * SECONDS) - .eut(2).addTo(sCompressorRecipes); + .eut(2).addTo(compressorRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.FusionComputer_UV.get(9)) .itemOutputs(GregtechItemList.Compressed_Fusion_Reactor.get(1)).duration(1 * HOURS + 50 * MINUTES) - .eut(TierEU.RECIPE_UV).addTo(sCompressorRecipes); + .eut(TierEU.RECIPE_UV).addTo(compressorRecipes); } private static void macerationRecipes() { GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.block, Materials.MeatRaw, 1L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 9L)).duration(44 * SECONDS) - .eut(4).addTo(sMaceratorRecipes); + .eut(4).addTo(maceratorRecipes); if (ItemUtils.simpleMetaStack("chisel:limestone", 0, 1) != null) { GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict("limestone", 1)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 4L)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); } } diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java index 35009804df..9e3dc1d5fc 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java @@ -2,7 +2,7 @@ package gtPlusPlus.core.recipe; import static gregtech.api.enums.Mods.EnderIO; import static gregtech.api.enums.Mods.Thaumcraft; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gtPlusPlus.core.recipe.common.CI.bitsd; @@ -177,7 +177,7 @@ public class RECIPES_General { CI.getNumberedAdvancedCircuit(4)) .itemOutputs(VolumetricFlaskHelper.getLargeVolumetricFlask(2)) .fluidInputs(FluidUtils.getFluidStack("molten.borosilicateglass", 2000)).duration(15 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -187,7 +187,7 @@ public class RECIPES_General { CI.getNumberedAdvancedCircuit(5)) .itemOutputs(VolumetricFlaskHelper.getGiganticVolumetricFlask(2)) .fluidInputs(FluidUtils.getFluidStack("molten.borosilicateglass", 8000)).duration(15 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_IV).addTo(assemblerRecipes); // Mining Explosive Logger.RECIPE("[Inspection] Explosives"); @@ -256,7 +256,7 @@ public class RECIPES_General { ItemUtils.getSimpleStack(Blocks.gold_block, 32)) .itemOutputs(ItemUtils.getSimpleStack(ModItems.itemMagicFeather, 1)) .fluidInputs(Materials.Silver.getMolten(32 * 144)).duration(2 * MINUTES).eut(TierEU.RECIPE_EV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); // Pest Killer GT_Values.RA.stdBuilder() @@ -268,7 +268,7 @@ public class RECIPES_General { CI.getNumberedCircuit(16)) .itemOutputs(ItemUtils.getSimpleStack(ModBlocks.blockPestKiller)) .fluidInputs(FluidUtils.getHotWater(500)).duration(1 * MINUTES).eut(TierEU.RECIPE_LV / 2) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private static boolean addCompressedObsidian() { diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_LaserEngraver.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_LaserEngraver.java index 82d28751de..a9061b997d 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_LaserEngraver.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_LaserEngraver.java @@ -1,6 +1,6 @@ package gtPlusPlus.core.recipe; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; +import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes; import static gregtech.api.util.GT_RecipeBuilder.HOURS; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; @@ -34,13 +34,13 @@ public class RECIPES_LaserEngraver implements IOreRecipeRegistrator { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Lithium, 2L), GT_Utility.copyAmount(0L, aStack)) .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("plateDoubleLithium7", 1)) - .duration(4 * MINUTES).eut(TierEU.RECIPE_EV).addTo(sLaserEngraverRecipes); + .duration(4 * MINUTES).eut(TierEU.RECIPE_EV).addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder() .itemInputs( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 3L), GT_Utility.copyAmount(0L, aStack)) .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("dustLithium7", 1)).duration(2 * MINUTES) - .eut(TierEU.RECIPE_EV).addTo(sLaserEngraverRecipes); + .eut(TierEU.RECIPE_EV).addTo(laserEngraverRecipes); } else if (aOreDictName.equals(OreDictNames.craftingLensLime.toString())) { // Coil Wires @@ -68,30 +68,30 @@ public class RECIPES_LaserEngraver implements IOreRecipeRegistrator { // T1 GT_Values.RA.stdBuilder().itemInputs(wireT1a, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire1) - .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sLaserEngraverRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(wireT1b, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire1) - .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sLaserEngraverRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_HV).addTo(laserEngraverRecipes); // T2 GT_Values.RA.stdBuilder().itemInputs(wireT2a, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire2) - .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sLaserEngraverRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(wireT2b, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire2) - .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sLaserEngraverRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_EV).addTo(laserEngraverRecipes); // T3 GT_Values.RA.stdBuilder().itemInputs(wireT3a, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire3) - .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sLaserEngraverRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(wireT3b, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire3) - .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sLaserEngraverRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(wireT3c, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire3) - .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sLaserEngraverRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_IV).addTo(laserEngraverRecipes); // T4 GT_Values.RA.stdBuilder().itemInputs(wireT4a, GT_Utility.copyAmount(0L, aStack)).itemOutputs(coilWire4) - .duration(40 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sLaserEngraverRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(laserEngraverRecipes); } else if (aOreDictName.equals(OreDictNames.craftingLensOrange.toString())) { GT_Values.RA.stdBuilder() .itemInputs(ItemUtils.getSimpleStack(ModItems.itemAlkalusDisk), GT_Utility.copyAmount(0L, aStack)) .itemOutputs(ItemUtils.getSimpleStack(Dimension_Everglades.portalItem)).duration(3 * HOURS) - .eut(TierEU.RECIPE_IV).addTo(sLaserEngraverRecipes); + .eut(TierEU.RECIPE_IV).addTo(laserEngraverRecipes); } } } diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java index 55f55816a8..1678532ac3 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java @@ -1,10 +1,10 @@ package gtPlusPlus.core.recipe; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBrewingRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.recipe.RecipeMaps.brewingRecipes; +import static gregtech.api.recipe.RecipeMaps.chemicalBathRecipes; +import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes; +import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gtPlusPlus.core.material.MISC_MATERIALS.BRINE; import static gtPlusPlus.core.material.MISC_MATERIALS.HYDROGEN_CHLORIDE; @@ -56,7 +56,7 @@ public class RECIPES_RareEarthProcessing { // Add Process for creating Brine GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 16L)) .fluidInputs(Materials.SaltWater.getFluid(2000L)).fluidOutputs(FluidUtils.getFluidStack(mBrine, 4000)) - .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sBrewingRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(brewingRecipes); // Chloralkali process GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1), ItemList.Cell_Empty.get(2L)) @@ -65,7 +65,7 @@ public class RECIPES_RareEarthProcessing { GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SodiumHydroxide, 1L)) .fluidInputs(FluidUtils.getFluidStack(mBrine, 2000)).duration(30 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); // Generate Special Laser Recipe GT_Values.RA.stdBuilder() @@ -74,14 +74,14 @@ public class RECIPES_RareEarthProcessing { GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), CI.getNumberedBioCircuit(2)) .itemOutputs(ItemUtils.getSimpleStack(ModItems.cellHydrogenChlorideMix, 2)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_HV).addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( ItemUtils.getSimpleStack(ModItems.cellHydrogenChlorideMix, 4), GregtechItemList.Laser_Lens_WoodsGlass.get(0)) .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogenChloride", 4)) - .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).noOptimize().addTo(sLaserEngraverRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_HV).noOptimize().addTo(laserEngraverRecipes); // Set Material Tiers correctly ORES.GREENOCKITE.vTier = 1; @@ -117,13 +117,13 @@ public class RECIPES_RareEarthProcessing { GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 3L)) .itemOutputs(RARE_EARTH_LOW.getCrushed(2), RARE_EARTH_LOW.getCrushed(2), RARE_EARTH_LOW.getCrushed(2)) .fluidInputs(Materials.SulfuricAcid.getFluid(1000L)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); // HV Rare Earth GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 3L)) .itemOutputs(RARE_EARTH_MID.getCrushed(2), RARE_EARTH_MID.getCrushed(2), RARE_EARTH_MID.getCrushed(2)) .outputChances(10000, 9000, 8000).fluidInputs(FluidUtils.getFluidStack(aHydrochloric, 1000)) - .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sChemicalBathRecipes); + .duration(15 * SECONDS).eut(TierEU.RECIPE_HV).addTo(chemicalBathRecipes); // IV Rare Earth GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 3L)) @@ -132,7 +132,7 @@ public class RECIPES_RareEarthProcessing { RARE_EARTH_HIGH.getCrushed(2), RARE_EARTH_HIGH.getCrushed(2)) .outputChances(10000, 9000, 8000).fluidInputs(FluidUtils.getHydrofluoricAcid(1000)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sChemicalBathRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_IV).addTo(chemicalBathRecipes); // IV Rare Earth GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.RareEarth, 3L)) @@ -141,6 +141,6 @@ public class RECIPES_RareEarthProcessing { RARE_EARTH_HIGH.getCrushed(2), RARE_EARTH_HIGH.getCrushed(2)) .outputChances(9000, 8000, 7000).fluidInputs(Materials.HydrofluoricAcid.getFluid(2000L)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sChemicalBathRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_IV).addTo(chemicalBathRecipes); } } diff --git a/src/main/java/gtPlusPlus/core/util/minecraft/FluidUtils.java b/src/main/java/gtPlusPlus/core/util/minecraft/FluidUtils.java index 170a741eed..6f7697de26 100644 --- a/src/main/java/gtPlusPlus/core/util/minecraft/FluidUtils.java +++ b/src/main/java/gtPlusPlus/core/util/minecraft/FluidUtils.java @@ -1,7 +1,7 @@ package gtPlusPlus.core.util.minecraft; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidCannerRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.util.HashMap; @@ -366,7 +366,7 @@ public class FluidUtils { aFullContainer, aEmptyContainer)) { GT_Values.RA.stdBuilder().itemInputs(ItemList.Cell_Empty.get(1L)).itemOutputs(aFullContainer) - .fluidInputs(new FluidStack(rFluid, aFluidAmount)).duration(4).eut(1).addTo(sFluidCannerRecipes); + .fluidInputs(new FluidStack(rFluid, aFluidAmount)).duration(4).eut(1).addTo(fluidCannerRecipes); } return rFluid; } @@ -514,12 +514,12 @@ public class FluidUtils { if (dustStack != null) { GT_Values.RA.stdBuilder().itemInputs(dustStack) .fluidOutputs(FluidUtils.getFluidStack(gtFluid, amountPerItem)).duration(1 * SECONDS).eut(16) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); } if (dustStack2 != null) { GT_Values.RA.stdBuilder().itemInputs(dustStack2) .fluidOutputs(FluidUtils.getFluidStack(gtFluid, amountPerItem)).duration(1 * SECONDS).eut(16) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); } return gtFluid; diff --git a/src/main/java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java b/src/main/java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java index f140045a4b..01d35de155 100644 --- a/src/main/java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java +++ b/src/main/java/gtPlusPlus/nei/GT_NEI_LFTR_Sparging.java @@ -43,7 +43,7 @@ public class GT_NEI_LFTR_Sparging extends TemplateRecipeHandler { new Rectangle(65, 13, 36, 18), this.getOverlayIdentifier(), new Object[0])); - if (!NEI_GT_Config.sIsAdded) { + if (!NEI_GTPP_Config.sIsAdded) { FMLInterModComms.sendRuntimeMessage( GT_Values.GT, "NEIPlugins", diff --git a/src/main/java/gtPlusPlus/nei/NEI_GTPP_Config.java b/src/main/java/gtPlusPlus/nei/NEI_GTPP_Config.java new file mode 100644 index 0000000000..17695a4bf7 --- /dev/null +++ b/src/main/java/gtPlusPlus/nei/NEI_GTPP_Config.java @@ -0,0 +1,99 @@ +package gtPlusPlus.nei; + +import java.util.Arrays; + +import net.minecraft.item.ItemStack; + +import codechicken.nei.api.API; +import codechicken.nei.api.IConfigureNEI; +import codechicken.nei.event.NEIRegisterHandlerInfosEvent; +import codechicken.nei.recipe.HandlerInfo; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import gregtech.api.enums.Mods; +import gregtech.api.recipe.RecipeMaps; +import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; +import gtPlusPlus.core.block.ModBlocks; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; + +public class NEI_GTPP_Config implements IConfigureNEI { + + public static boolean sIsAdded = true; + + @Override + public synchronized void loadConfig() { + sIsAdded = false; + + Logger.INFO("NEI Registration: Registering NEI handler for " + DecayableRecipeHandler.mNEIName); + API.registerRecipeHandler(new DecayableRecipeHandler()); + API.registerUsageHandler(new DecayableRecipeHandler()); + API.addRecipeCatalyst(new ItemStack(ModBlocks.blockDecayablesChest, 1), "GTPP_Decayables"); + + Logger.INFO("NEI Registration: Registering NEI handler for " + GT_NEI_LFTR_Sparging.mNEIName); + new GT_NEI_LFTR_Sparging(); + API.addRecipeCatalyst(GregtechItemList.Controller_Sparge_Tower.get(1), "gtpp.recipe.lftr.sparging"); + + for (GregtechItemList item : Arrays.asList( + GregtechItemList.GT4_Electric_Auto_Workbench_LV, + GregtechItemList.GT4_Electric_Auto_Workbench_MV, + GregtechItemList.GT4_Electric_Auto_Workbench_HV, + GregtechItemList.GT4_Electric_Auto_Workbench_EV, + GregtechItemList.GT4_Electric_Auto_Workbench_IV, + GregtechItemList.GT4_Electric_Auto_Workbench_LuV, + GregtechItemList.GT4_Electric_Auto_Workbench_ZPM, + GregtechItemList.GT4_Electric_Auto_Workbench_UV)) { + API.addRecipeCatalyst(item.get(1), "crafting", -10); + } + // Bronze workbench + API.removeRecipeCatalyst(ItemUtils.getItemStackFromFQRN("gregtech:gt.blockmachines:31081", 1), "crafting"); + API.removeRecipeCatalyst(ItemUtils.getItemStackFromFQRN("gregtech:gt.blockmachines:31082", 1), "crafting"); + + // Moved to its own handler + API.removeRecipeCatalyst( + GregtechItemList.Controller_Vacuum_Furnace.get(1), + GTPPRecipeMaps.chemicalDehydratorRecipes.unlocalizedName); + + // ULV simple washer + API.removeRecipeCatalyst( + ItemUtils.getItemStackFromFQRN("gregtech:gt.blockmachines:767", 1), + GTPPRecipeMaps.simpleWasherRecipes.unlocalizedName); + + // ULV combustion generator + API.removeRecipeCatalyst( + ItemUtils.getItemStackFromFQRN("gregtech:gt.blockmachines:960", 1), + RecipeMaps.dieselFuels.unlocalizedName); + + // ULV gas turbine + API.removeRecipeCatalyst( + ItemUtils.getItemStackFromFQRN("gregtech:gt.blockmachines:961", 1), + RecipeMaps.gasTurbineFuels.unlocalizedName); + + // Hide Flasks + if (Utils.isClient()) { + API.addItemListEntry(GregtechItemList.VOLUMETRIC_FLASK_8k.get(1)); + API.addItemListEntry(GregtechItemList.VOLUMETRIC_FLASK_32k.get(1)); + } + sIsAdded = true; + } + + @SubscribeEvent + public void registerHandlerInfo(NEIRegisterHandlerInfosEvent event) { + event.registerHandlerInfo( + new HandlerInfo.Builder("gtpp.recipe.lftr.sparging", CORE.name, Mods.GTPlusPlus.ID) + .setDisplayStack(GregtechItemList.Controller_Sparge_Tower.get(1)).setShiftY(6).setHeight(135) + .setMaxRecipesPerPage(1).build()); + } + + @Override + public String getName() { + return "GT++ NEI Plugin"; + } + + @Override + public String getVersion() { + return "(1.12)"; + } +} diff --git a/src/main/java/gtPlusPlus/nei/NEI_GT_Config.java b/src/main/java/gtPlusPlus/nei/NEI_GT_Config.java deleted file mode 100644 index 92d19b3630..0000000000 --- a/src/main/java/gtPlusPlus/nei/NEI_GT_Config.java +++ /dev/null @@ -1,41 +0,0 @@ -package gtPlusPlus.nei; - -import codechicken.nei.api.API; -import codechicken.nei.api.IConfigureNEI; -import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.core.util.Utils; -import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; - -public class NEI_GT_Config implements IConfigureNEI { - - public static boolean sIsAdded = true; - - @Override - public synchronized void loadConfig() { - sIsAdded = false; - - Logger.INFO("NEI Registration: Registering NEI handler for " + DecayableRecipeHandler.mNEIName); - API.registerRecipeHandler(new DecayableRecipeHandler()); - API.registerUsageHandler(new DecayableRecipeHandler()); - - Logger.INFO("NEI Registration: Registering NEI handler for " + GT_NEI_LFTR_Sparging.mNEIName); - new GT_NEI_LFTR_Sparging(); - - // Hide Flasks - if (Utils.isClient()) { - codechicken.nei.api.API.addItemListEntry(GregtechItemList.VOLUMETRIC_FLASK_8k.get(1)); - codechicken.nei.api.API.addItemListEntry(GregtechItemList.VOLUMETRIC_FLASK_32k.get(1)); - } - sIsAdded = true; - } - - @Override - public String getName() { - return "GT++ NEI Plugin"; - } - - @Override - public String getVersion() { - return "(1.12)"; - } -} diff --git a/src/main/java/gtPlusPlus/nei/NEI_IMC_Sender.java b/src/main/java/gtPlusPlus/nei/NEI_IMC_Sender.java deleted file mode 100644 index b7058889a1..0000000000 --- a/src/main/java/gtPlusPlus/nei/NEI_IMC_Sender.java +++ /dev/null @@ -1,134 +0,0 @@ -package gtPlusPlus.nei; - -import static gregtech.api.enums.Mods.AdvancedSolarPanel; -import static gregtech.api.enums.Mods.GTPlusPlus; -import static gregtech.api.enums.Mods.NotEnoughItems; - -import net.minecraft.nbt.NBTTagCompound; - -import cpw.mods.fml.common.event.FMLInterModComms; - -public class NEI_IMC_Sender { - - public static void IMCSender() { - // NEI jar is using some outdated handler names - sendHandler("gtpp.recipe.alloyblastsmelter", "gregtech:gt.blockmachines:810", 2); - sendCatalyst("gtpp.recipe.alloyblastsmelter", "gregtech:gt.blockmachines:31150"); - sendHandler("gtpp.recipe.rocketenginefuel", "gregtech:gt.blockmachines:793"); - sendHandler("gtpp.recipe.cyclotron", "gregtech:gt.blockmachines:828"); - sendHandler("gtpp.recipe.chemicaldehydrator", "gregtech:gt.blockmachines:911"); - sendHandler("gtpp.recipe.slowfusionreactor", "gregtech:gt.blockmachines:31015"); - sendHandler("gtpp.recipe.RTGgenerators", "gregtech:gt.blockmachines:869"); - sendHandler("gtpp.recipe.cokeoven", "gregtech:gt.blockmachines:791"); - sendHandler("gtpp.recipe.semifluidgeneratorfuels", "gregtech:gt.blockmachines:837"); - sendHandler("gtpp.recipe.fishpond", "gregtech:gt.blockmachines:829", 1); - sendHandler("gtpp.recipe.multimixer", "gregtech:gt.blockmachines:811"); - sendHandler("gtpp.recipe.advanced.mixer", "gregtech:gt.blockmachines:811"); - sendHandler("gtpp.recipe.cryogenicfreezer", "gregtech:gt.blockmachines:910"); - sendHandler("gtpp.recipe.matterfab2", "gregtech:gt.blockmachines:799"); - sendHandler("gtpp.recipe.multicentrifuge", "gregtech:gt.blockmachines:790", 1); - sendHandler("gtpp.recipe.multielectro", "gregtech:gt.blockmachines:796", 1); - sendHandler("gtpp.recipe.simplewasher", "gregtech:gt.blockmachines:767"); - sendHandler("gtpp.recipe.vacfurnace", "gregtech:gt.blockmachines:995", 1); - sendHandler("gtpp.recipe.fissionfuel", "gregtech:gt.blockmachines:835", 1); - sendHandler("gtpp.recipe.lftr", "gregtech:gt.blockmachines:751", 1); - sendHandler("gtpp.recipe.lftr.sparging", "gregtech:gt.blockmachines:31035", 1); - sendHandler("gtpp.recipe.oremill", "gregtech:gt.blockmachines:31027", 1); - sendHandler("gtpp.recipe.flotationcell", "gregtech:gt.blockmachines:31028", 1); - sendHandler("gtpp.recipe.fluidchemicaleactor", "gregtech:gt.blockmachines:998"); - - sendCatalyst("GTPP_Decayables", "miscutils:blockDecayablesChest"); - - sendHandler("gtpp.recipe.geothermalfuel", "gregtech:gt.blockmachines:830"); - sendCatalyst("gtpp.recipe.geothermalfuel", "gregtech:gt.blockmachines:830"); - - sendHandler("gtpp.recipe.thermalgeneratorfuel", "gregtech:gt.blockmachines:875", 1); - sendCatalyst("gtpp.recipe.thermalgeneratorfuel", "gregtech:gt.blockmachines:875"); - - sendHandler("gtpp.recipe.solartower", "gregtech:gt.blockmachines:863", 1); - sendCatalyst("gtpp.recipe.solartower", "gregtech:gt.blockmachines:863"); - - sendHandler("gtpp.recipe.coldtrap", "gregtech:gt.blockmachines:31034"); - sendCatalyst("gtpp.recipe.coldtrap", "gregtech:gt.blockmachines:31033"); - sendCatalyst("gtpp.recipe.coldtrap", "gregtech:gt.blockmachines:31034"); - - sendHandler("gtpp.recipe.reactorprocessingunit", "gregtech:gt.blockmachines:31032"); - sendCatalyst("gtpp.recipe.reactorprocessingunit", "gregtech:gt.blockmachines:31031"); - sendCatalyst("gtpp.recipe.reactorprocessingunit", "gregtech:gt.blockmachines:31032"); - - sendHandler("gtpp.recipe.nuclearsaltprocessingplant", "gregtech:gt.blockmachines:749"); - sendCatalyst("gtpp.recipe.nuclearsaltprocessingplant", "gregtech:gt.blockmachines:749"); - - sendHandler("gtpp.recipe.treefarm", "gregtech:gt.blockmachines:836"); - sendCatalyst("gtpp.recipe.treefarm", "gregtech:gt.blockmachines:836"); - - sendHandler("gtpp.recipe.quantumforcesmelter", "gregtech:gt.blockmachines:31151"); - sendCatalyst("gtpp.recipe.quantumforcesmelter", "gregtech:gt.blockmachines:31151"); - - if (AdvancedSolarPanel.isModLoaded()) { - sendHandler("gtpp.recipe.moleculartransformer", "AdvancedSolarPanel:BlockMolecularTransformer"); - sendCatalyst("gtpp.recipe.moleculartransformer", "gregtech:gt.blockmachines:31072"); - } - - sendCatalyst("gt.recipe.replicator", "gregtech:gt.blockmachines:31050"); - sendCatalyst("gt.recipe.gasturbinefuel", "gregtech:gt.blockmachines:31073", -20); - sendCatalyst("gt.recipe.plasmageneratorfuels", "gregtech:gt.blockmachines:31074", -20); - sendCatalyst("gt.recipe.hammer", "gregtech:gt.blockmachines:31075"); - sendCatalyst("gt.recipe.fluidheater", "gregtech:gt.blockmachines:31077"); - sendCatalyst("gt.recipe.compressor", "gregtech:gt.blockmachines:31078"); - - sendCatalyst("crafting", "gregtech:gt.blockmachines:31081", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31082", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31091", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31092", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31093", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31094", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31095", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31096", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31097", -10); - sendCatalyst("crafting", "gregtech:gt.blockmachines:31098", -10); - - sendHandler("gtpp.recipe.multidehydrator", "gregtech:gt.blockmachines:995"); - sendCatalyst("gtpp.recipe.multidehydrator", "gregtech:gt.blockmachines:995"); - sendRemoveCatalyst("gtpp.recipe.chemicaldehydrator", "gregtech:gt.blockmachines:995"); - - sendCatalyst("gt.recipe.fusionreactor", "gregtech:gt.blockmachines:975"); - } - - private static void sendHandler(String aRecipeName, String aBlock) { - sendHandler(aRecipeName, aBlock, 2); - } - - private static void sendHandler(String aRecipeName, String aBlock, int aRecipesPerPage) { - NBTTagCompound aNBT = new NBTTagCompound(); - aNBT.setString("handler", aRecipeName); - aNBT.setString("modName", "GT++"); - aNBT.setString("modId", GTPlusPlus.ID); - aNBT.setBoolean("modRequired", true); - aNBT.setString("itemName", aBlock); - aNBT.setInteger("yShift", 6); - aNBT.setInteger("handlerHeight", 135); - aNBT.setInteger("handlerWidth", 166); - aNBT.setInteger("maxRecipesPerPage", aRecipesPerPage); - FMLInterModComms.sendMessage(NotEnoughItems.ID, "registerHandlerInfo", aNBT); - } - - private static void sendCatalyst(String aName, String aStack, int aPriority) { - NBTTagCompound aNBT = new NBTTagCompound(); - aNBT.setString("handlerID", aName); - aNBT.setString("itemName", aStack); - aNBT.setInteger("priority", aPriority); - FMLInterModComms.sendMessage(NotEnoughItems.ID, "registerCatalystInfo", aNBT); - } - - private static void sendCatalyst(String aName, String aStack) { - sendCatalyst(aName, aStack, 0); - } - - private static void sendRemoveCatalyst(String aName, String aStack) { - NBTTagCompound aNBT = new NBTTagCompound(); - aNBT.setString("handlerID", aName); - aNBT.setString("itemName", aStack); - FMLInterModComms.sendMessage(NotEnoughItems.ID, "removeCatalystInfo", aNBT); - } -} diff --git a/src/main/java/gtPlusPlus/plugin/agrichem/BioRecipes.java b/src/main/java/gtPlusPlus/plugin/agrichem/BioRecipes.java index 1ddf672f02..f81c01ffaf 100644 --- a/src/main/java/gtPlusPlus/plugin/agrichem/BioRecipes.java +++ b/src/main/java/gtPlusPlus/plugin/agrichem/BioRecipes.java @@ -2,15 +2,15 @@ package gtPlusPlus.plugin.agrichem; import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.Railcraft; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistilleryRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtractorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLatheRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.distilleryRecipes; +import static gregtech.api.recipe.RecipeMaps.extractorRecipes; +import static gregtech.api.recipe.RecipeMaps.extruderRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.latheRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.multiblockChemicalReactorRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -233,7 +233,7 @@ public class BioRecipes { // Compost GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mGreenAlgaeBiosmass, 4)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mCompost, 1)).duration(20 * SECONDS).eut(2) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); // Turn into Cellulose GT_Values.RA.stdBuilder() @@ -241,19 +241,19 @@ public class BioRecipes { getGreenAlgaeRecipeChip(), ItemUtils.getSimpleStack(AgriculturalChem.mGreenAlgaeBiosmass, 10)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mCelluloseFiber, 5)) - .duration(7 * SECONDS + 10 * TICKS).eut(16).addTo(sAssemblerRecipes); + .duration(7 * SECONDS + 10 * TICKS).eut(16).addTo(assemblerRecipes); } private static void recipeBrownAlgae() { // Compost GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mBrownAlgaeBiosmass, 2)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mCompost, 1)).duration(20 * SECONDS).eut(2) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); // Alginic acid GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mBrownAlgaeBiosmass, 10)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mAlginicAcid, 2)).duration(2 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sExtractorRecipes); + .eut(TierEU.RECIPE_LV).addTo(extractorRecipes); // Lithium Chloride GT_Values.RA.stdBuilder() @@ -261,7 +261,7 @@ public class BioRecipes { getBrownAlgaeRecipeChip(), ItemUtils.getSimpleStack(AgriculturalChem.mBrownAlgaeBiosmass, 20)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mLithiumChloride, 5)).duration(6 * SECONDS) - .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 1200).addTo(blastFurnaceRecipes); // Sodium Carbonate GT_Values.RA.stdBuilder() @@ -277,7 +277,7 @@ public class BioRecipes { // Compost GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mGoldenBrownAlgaeBiosmass, 1)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mCompost, 1)).duration(20 * SECONDS).eut(2) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); // Turn into Cellulose GT_Values.RA.stdBuilder() @@ -285,20 +285,20 @@ public class BioRecipes { getGoldenBrownAlgaeRecipeChip(), ItemUtils.getSimpleStack(AgriculturalChem.mGoldenBrownAlgaeBiosmass, 10)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mGoldenBrownCelluloseFiber, 5)) - .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV).addTo(assemblerRecipes); } private static void recipeRedAlgae() { // Compost GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mRedAlgaeBiosmass, 1)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mCompost, 2)).duration(20 * SECONDS).eut(2) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); // Turn into Cellulose GT_Values.RA.stdBuilder() .itemInputs(getRedAlgaeRecipeChip(), ItemUtils.getSimpleStack(AgriculturalChem.mRedAlgaeBiosmass, 10)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mGoldenBrownCelluloseFiber, 5)) - .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); + .duration(7 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_HV / 2).addTo(assemblerRecipes); } private static void recipeCelluloseFibre() { @@ -314,17 +314,17 @@ public class BioRecipes { GT_Values.RA.stdBuilder() .itemInputs(getBioChip(2), ItemUtils.getSimpleStack(AgriculturalChem.mCelluloseFiber, 12)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mWoodPellet, 24)) - .duration(2 * SECONDS + 8 * TICKS).eut(8).addTo(sAssemblerRecipes); + .duration(2 * SECONDS + 8 * TICKS).eut(8).addTo(assemblerRecipes); // Methanol Extraction GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mCelluloseFiber, 12)) .fluidOutputs(Materials.Methanol.getFluid(1000L)).duration(7 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_LV).addTo(sFluidExtractionRecipes); + .eut(TierEU.RECIPE_LV).addTo(fluidExtractionRecipes); // Compost GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mCelluloseFiber, 3)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mCompost, 1)).duration(20 * SECONDS).eut(2) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); // Plastic CORE.RA.addChemicalPlantRecipe( @@ -357,17 +357,17 @@ public class BioRecipes { ItemUtils.getSimpleStack(AgriculturalChem.mCelluloseFiber, 12), ItemUtils.getSimpleStack(AgriculturalChem.mPelletMold, 0)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mWoodPellet, 3)).duration(10 * SECONDS).eut(16) - .addTo(sExtruderRecipes); + .addTo(extruderRecipes); // Assembly Recipe GT_Values.RA.stdBuilder().itemInputs(getBioChip(2), ItemUtils.getSimpleStack(AgriculturalChem.mWoodPellet, 8)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mWoodBrick, 2)).duration(5 * SECONDS).eut(8) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); // CO2 GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mWoodPellet, 1)) .fluidOutputs(FluidUtils.getFluidStack(mCarbonDioxide, 70)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); // Add Charcoal Recipe if (Railcraft.isModLoaded()) { @@ -395,7 +395,7 @@ public class BioRecipes { GT_Values.RA.stdBuilder() .itemInputs(getBioChip(3), ItemUtils.getOrePrefixStack(OrePrefixes.dust, Materials.Wood, 50)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mWoodBrick, 1)) - .duration(1 * MINUTES + 40 * SECONDS).eut(16).addTo(sAssemblerRecipes); + .duration(1 * MINUTES + 40 * SECONDS).eut(16).addTo(assemblerRecipes); } private static void recipeCellulosePulp() { @@ -404,7 +404,7 @@ public class BioRecipes { GT_Values.RA.stdBuilder() .itemInputs(getBioChip(2), ItemUtils.getSimpleStack(AgriculturalChem.mCellulosePulp, 4)) .itemOutputs(ItemUtils.getSimpleStack(Items.paper, 4)).duration(2 * SECONDS).eut(16) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private static void recipeCatalystCarrier() { @@ -415,7 +415,7 @@ public class BioRecipes { GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel, 8L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Copper, 4L), GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Tin, 6L)) - .itemOutputs(CI.getEmptyCatalyst(1)).duration(5 * MINUTES).eut(16).addTo(sAssemblerRecipes); + .itemOutputs(CI.getEmptyCatalyst(1)).duration(5 * MINUTES).eut(16).addTo(assemblerRecipes); } private static void recipeAluminiumSilverCatalyst() { @@ -427,7 +427,7 @@ public class BioRecipes { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silver, 4L)) .itemOutputs(CI.getGreenCatalyst(10)).duration(20 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } private static void recipeAceticAcid() { @@ -614,19 +614,19 @@ public class BioRecipes { GT_Values.RA.stdBuilder().itemInputs(BioRecipes.getBioChip(2)) .fluidInputs(FluidUtils.getFluidStack(BioRecipes.mFermentationBase, 1000)) .fluidOutputs(FluidUtils.getFluidStack(BioRecipes.mEthanol, 100)).duration(20 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sDistilleryRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(distilleryRecipes); } private static void recipeGoldenBrownCelluloseFiber() { GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mGoldenBrownCelluloseFiber, 5)) .fluidOutputs(Materials.Ammonia.getGas(500)).duration(15 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); } private static void recipeRedCelluloseFiber() { GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getSimpleStack(AgriculturalChem.mRedCelluloseFiber, 3)) .itemOutputs(ItemUtils.getSimpleStack(ModItems.dustCalciumCarbonate, 5)).duration(5 * SECONDS) - .eut(TierEU.RECIPE_HV / 2).addTo(sExtractorRecipes); + .eut(TierEU.RECIPE_HV / 2).addTo(extractorRecipes); } private static void recipeSodiumHydroxide() { @@ -683,7 +683,7 @@ public class BioRecipes { private static void recipePelletMold() { GregtechItemList.Pellet_Mold.set(ItemUtils.getSimpleStack(AgriculturalChem.mPelletMold, 1)); GT_Values.RA.stdBuilder().itemInputs(ALLOY.TUMBAGA.getBlock(1)).itemOutputs(GregtechItemList.Pellet_Mold.get(1)) - .duration(7 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_MV / 4 * 3).addTo(sLatheRecipes); + .duration(7 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_MV / 4 * 3).addTo(latheRecipes); } private static void recipeAluminiumPellet() { @@ -766,7 +766,7 @@ public class BioRecipes { ItemUtils.getSimpleStack(AgriculturalChem.mCleanAluminiumMix, 3), ItemUtils.getSimpleStack(AgriculturalChem.mPelletMold, 0)) .itemOutputs(ItemUtils.getSimpleStack(AgriculturalChem.mAluminiumPellet, 4)).duration(30 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sExtruderRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(extruderRecipes); } private static void recipeAlumina() { @@ -779,7 +779,7 @@ public class BioRecipes { ItemUtils.getSimpleStack(AgriculturalChem.mAlumina, 5), ItemUtils.getSimpleStack(AgriculturalChem.mSodiumCarbonate, 12)) .fluidInputs(Materials.CarbonDioxide.getGas(2000L)).duration(40 * SECONDS).eut(TierEU.RECIPE_MV) - .metadata(COIL_HEAT, 1200).addTo(sBlastRecipes); + .metadata(COIL_HEAT, 1200).addTo(blastFurnaceRecipes); } private static void recipeAluminium() { @@ -790,7 +790,7 @@ public class BioRecipes { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 3L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Aluminium, 4L)) .fluidOutputs(Materials.CarbonDioxide.getGas(3000L)).duration(2 * MINUTES).eut(TierEU.RECIPE_MV) - .metadata(COIL_HEAT, 1600).addTo(sBlastRecipes); + .metadata(COIL_HEAT, 1600).addTo(blastFurnaceRecipes); } private static void recipeLithiumChloride() { @@ -808,7 +808,7 @@ public class BioRecipes { .outputChances(7500, 8000, 8500, 9000, 7500, 8500) .fluidInputs(FluidUtils.getFluidStack(BioRecipes.mAir, 4000)) .fluidOutputs(FluidUtils.getFluidStack(BioRecipes.mChlorine, 500)).duration(1 * MINUTES + 30 * SECONDS) - .eut(TierEU.RECIPE_MV / 2).addTo(sMultiblockChemicalRecipes); + .eut(TierEU.RECIPE_MV / 2).addTo(multiblockChemicalReactorRecipes); if (OreDictUtils.containsValidEntries("dustPotash")) { GT_Values.RA.stdBuilder() .itemInputs( @@ -824,7 +824,7 @@ public class BioRecipes { .outputChances(7500, 8000, 8500, 9000, 9000, 9000) .fluidInputs(FluidUtils.getFluidStack(BioRecipes.mThermalWater, 2000)) .fluidOutputs(FluidUtils.getFluidStack(BioRecipes.mChlorine, 250)).duration(1 * MINUTES) - .eut(TierEU.RECIPE_MV).addTo(sMultiblockChemicalRecipes); + .eut(TierEU.RECIPE_MV).addTo(multiblockChemicalReactorRecipes); } } diff --git a/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java b/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java index 9aabff7a99..f3c6b10cb3 100644 --- a/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java +++ b/src/main/java/gtPlusPlus/recipes/CokeAndPyrolyseOven.java @@ -7,6 +7,7 @@ import net.minecraftforge.oredict.OreDictionary; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -62,7 +63,7 @@ public class CokeAndPyrolyseOven { private static void convertPyroToCokeOven() { int aCount = 0; - for (GT_Recipe g : GT_Recipe.GT_Recipe_Map.sPyrolyseRecipes.mRecipeList) { + for (GT_Recipe g : RecipeMaps.pyrolyseRecipes.getAllRecipes()) { if (AddGregtechRecipe.importPyroRecipe(g)) { aCount++; } diff --git a/src/main/java/gtPlusPlus/recipes/RecipeRemovals.java b/src/main/java/gtPlusPlus/recipes/RecipeRemovals.java index 16d99494d3..b61400e1d5 100644 --- a/src/main/java/gtPlusPlus/recipes/RecipeRemovals.java +++ b/src/main/java/gtPlusPlus/recipes/RecipeRemovals.java @@ -6,7 +6,6 @@ import java.util.Collection; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; import org.apache.commons.lang3.ArrayUtils; @@ -14,7 +13,7 @@ import advsolar.common.AdvancedSolarPanel; import gregtech.api.enums.Materials; import gregtech.api.enums.Mods; import gregtech.api.items.GT_MetaGenerated_Tool; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Recipe; import gregtech.common.items.GT_MetaGenerated_Tool_01; import gtPlusPlus.api.objects.Logger; @@ -32,7 +31,6 @@ public class RecipeRemovals { public static void onLoadComplete() { removeCrudeTurbineRotors(); - removeGTRareEarthRecipe(); } // Doesn't actually remove recipes, just hide them @@ -40,7 +38,7 @@ public class RecipeRemovals { int aRemoved = 0; int CUT = CORE.turbineCutoffBase; Item aU; - Collection aAssRecipes = GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.mRecipeList; + Collection aAssRecipes = RecipeMaps.assemblerRecipes.getAllRecipes(); // 170, 172, 174, 176 if (aAssRecipes.size() > 0) { for (GT_Recipe aG : aAssRecipes) { @@ -106,27 +104,4 @@ public class RecipeRemovals { Logger.INFO("Removed " + aRemoved + " useless Turbines."); } - - private static void removeGTRareEarthRecipe() { - - Logger.INFO("Processing Gregtech recipe maps, removing recipes to suit GT++."); - // Remove Rare Earth Centrifuging - // 1 Rare Earth Dust - 25% chance for small piles of: neodymium, yttrium, lanthanum, cerium, cadmium, and - // caesium - // Replaced by advanced sifting recipe. - GT_Recipe aRareEarthCentrifuging = GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.findRecipe( - null, - false, - 20, - new FluidStack[] {}, - new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDict("dustRareEarth", 1) }); - if (aRareEarthCentrifuging != null && aRareEarthCentrifuging.mEnabled) { - aRareEarthCentrifuging.mEnabled = false; - aRareEarthCentrifuging.mHidden = true; - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.mRecipeList.remove(aRareEarthCentrifuging); - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockCentrifugeRecipes_GT.mRecipeList.remove(aRareEarthCentrifuging); - Logger.INFO("Removed vanilla GT Rare Earth processing."); - } - - } } diff --git a/src/main/java/gtPlusPlus/xmod/bop/blocks/BOP_Block_Registrator.java b/src/main/java/gtPlusPlus/xmod/bop/blocks/BOP_Block_Registrator.java index 406267e03e..3266f1b349 100644 --- a/src/main/java/gtPlusPlus/xmod/bop/blocks/BOP_Block_Registrator.java +++ b/src/main/java/gtPlusPlus/xmod/bop/blocks/BOP_Block_Registrator.java @@ -1,6 +1,6 @@ package gtPlusPlus.xmod.bop.blocks; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; +import static gregtech.api.recipe.RecipeMaps.cutterRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.loaders.oreprocessing.ProcessingLog.addPyrolyeOvenRecipes; @@ -126,7 +126,7 @@ public class BOP_Block_Registrator { : (((long) tStack.stackSize) * 5L / 4), tStack), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 2L)) - .duration(10 * SECONDS).eut(8).addTo(sCutterRecipes); + .duration(10 * SECONDS).eut(8).addTo(cutterRecipes); GT_ModHandler.removeRecipe(new ItemStack(aStack.getItem(), 1, i)); GT_ModHandler.addCraftingRecipe( GT_Utility.copyAmount( @@ -153,7 +153,7 @@ public class BOP_Block_Registrator { : (((long) tStack2.stackSize) * 5L / 4), tStack2), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 2L)) - .duration(10 * SECONDS).eut(8).addTo(sCutterRecipes); + .duration(10 * SECONDS).eut(8).addTo(cutterRecipes); GT_ModHandler.removeRecipe(GT_Utility.copyAmount(1L, aStack)); GT_ModHandler.addCraftingRecipe( GT_Utility.copyAmount( diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java index 75e9b459b8..9267a32950 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/GTPP_Bees.java @@ -1,7 +1,7 @@ package gtPlusPlus.xmod.forestry.bees.custom; import static gregtech.api.enums.Mods.Forestry; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -92,7 +92,7 @@ public class GTPP_Bees { private void addExtractorRecipe(ItemStack input, FluidStack output) { GT_Values.RA.stdBuilder().itemInputs(input).fluidOutputs(output).duration(1 * SECONDS + 10 * TICKS).eut(8) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); } private static boolean tryGetBeesBoolean() { diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java index 4da7d5eef6..3ada8ce513 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/custom/ItemCustomComb.java @@ -1,7 +1,7 @@ package gtPlusPlus.xmod.forestry.bees.custom; import static gregtech.api.enums.Mods.GTPlusPlus; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -132,6 +132,6 @@ public class ItemCustomComb extends Item { public void addSpecialCent(ItemStack tComb, ItemStack aOutput, int chance) { GT_Values.RA.stdBuilder().itemInputs(tComb).itemOutputs(aOutput, ItemList.FR_Wax.get(1)) - .outputChances(chance * 100, 3000).duration(6 * SECONDS + 8 * TICKS).eut(5).addTo(sCentrifugeRecipes); + .outputChances(chance * 100, 3000).duration(6 * SECONDS + 8 * TICKS).eut(5).addTo(centrifugeRecipes); } } diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java index ca48825dd2..e98eddbc4f 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Drop.java @@ -1,7 +1,7 @@ package gtPlusPlus.xmod.forestry.bees.items.output; import static gregtech.api.enums.Mods.GTPlusPlus; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -118,7 +118,7 @@ public class GTPP_Drop extends Item { return false; } GT_Values.RA.stdBuilder().itemInputs(tDrop).fluidOutputs(aOutput).duration(aDuration * TICKS).eut(aEUt) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); return true; } } diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java index a8dd9a88d9..e8bb3aac7e 100644 --- a/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java +++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/items/output/GTPP_Propolis.java @@ -1,7 +1,7 @@ package gtPlusPlus.xmod.forestry.bees.items.output; import static gregtech.api.enums.Mods.GTPlusPlus; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtractorRecipes; +import static gregtech.api.recipe.RecipeMaps.extractorRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -97,7 +97,7 @@ public class GTPP_Propolis extends Item { return false; } GT_Values.RA.stdBuilder().itemInputs(tDrop).itemOutputs(aOutput).outputChances(aChance) - .duration(aDuration * TICKS).eut(aEUt).addTo(sExtractorRecipes); + .duration(aDuration * TICKS).eut(aEUt).addTo(extractorRecipes); return true; } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java b/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java index 9534c28829..91dd851f84 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java @@ -5,27 +5,12 @@ import static gregtech.api.enums.Mods.AdvancedSolarPanel; import java.util.ArrayList; import java.util.List; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - import cpw.mods.fml.common.event.FMLLoadCompleteEvent; import gregtech.api.GregTech_API; -import gregtech.api.enums.Element; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; import gregtech.api.items.GT_MetaGenerated_Tool; -import gregtech.api.util.GTPP_Recipe; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; import gregtech.api.util.GT_Config; -import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; -import gregtech.api.util.GT_Utility; -import gregtech.common.items.behaviors.Behaviour_DataOrb; -import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.handler.COMPAT_HANDLER; import gtPlusPlus.core.recipe.common.CI; -import gtPlusPlus.core.util.minecraft.RecipeUtils; import gtPlusPlus.everglades.gen.gt.WorldGen_GT; import gtPlusPlus.recipes.CokeAndPyrolyseOven; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; @@ -34,7 +19,6 @@ import gtPlusPlus.xmod.gregtech.api.util.GTPP_Config; import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy; import gtPlusPlus.xmod.gregtech.common.blocks.fluid.GregtechFluidHandler; import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechTools; -import gtPlusPlus.xmod.gregtech.common.tileentities.machines.multi.production.GregtechMTE_ElementalDuplicator; import gtPlusPlus.xmod.gregtech.loaders.Gregtech_Blocks; import gtPlusPlus.xmod.gregtech.loaders.ProcessingAngleGrinder; import gtPlusPlus.xmod.gregtech.loaders.ProcessingElectricSnips; @@ -103,68 +87,10 @@ public class HANDLER_GT { public static void onLoadComplete(FMLLoadCompleteEvent event) { CokeAndPyrolyseOven.onLoadComplete(); - generateElementalDuplicatorRecipes(); Meta_GT_Proxy.fixIC2FluidNames(); RecipeLoader_AlgaeFarm.generateRecipes(); if (AdvancedSolarPanel.isModLoaded()) { RecipeLoader_MolecularTransformer.run(); } } - - private static void generateElementalDuplicatorRecipes() { - for (GT_Recipe aRecipe : GT_Recipe_Map.sReplicatorFakeRecipes.mRecipeList) { - Object aDataOrb = aRecipe.mSpecialItems; - if (aDataOrb != null) { - ItemStack aOutput = aRecipe.mOutputs[0]; - if (aOutput != null) { - FluidStack aFluid = aRecipe.mFluidInputs[0]; - if (aFluid != null && aFluid.amount > 0) { - ItemStack tDataOrb = GregtechMTE_ElementalDuplicator.getSpecialSlotStack(aRecipe); - Materials tMaterial = Element.get(Behaviour_DataOrb.getDataName(tDataOrb)).mLinkedMaterials - .get(0); - FluidStack aOutputFluid = null; - ItemStack aOutputItem = null; - if (tMaterial != null) { - boolean aUsingFluid = false; - if ((aOutputItem = GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial, 1L)) == null) { - if ((aOutputItem = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L)) != null) { - aOutputFluid = GT_Utility.getFluidForFilledItem(aOutputItem, true); - aUsingFluid = true; - } - } - GTPP_Recipe aNewRecipe = new GTPP_Recipe( - false, - new ItemStack[] {}, - new ItemStack[] { !aUsingFluid ? aOutputItem : null }, - aRecipe.mSpecialItems, - null, - aRecipe.mFluidInputs, - new FluidStack[] { aUsingFluid ? aOutputFluid : null }, - aRecipe.mDuration, - aRecipe.mEUt, - aRecipe.mFluidInputs[0].amount); - GTPP_Recipe_Map.sElementalDuplicatorRecipes.add(aNewRecipe); - - Logger.INFO( - "[EM] Generated recipe for " + tMaterial.mLocalizedName - + ", Outputs " - + (aUsingFluid ? "Fluid" : "Dust")); - } - } else { - Logger.INFO("[EM] Bad UU Requirement. " + RecipeUtils.getRecipeInfo(aRecipe)); - } - } else { - Logger.INFO("[EM] Bad Output. " + RecipeUtils.getRecipeInfo(aRecipe)); - } - } else { - Logger.INFO("[EM] Bad Data Orb. " + RecipeUtils.getRecipeInfo(aRecipe)); - } - } - int aSize = GTPP_Recipe_Map.sElementalDuplicatorRecipes.mRecipeList.size(); - Logger.INFO( - "[EM] Generated " + aSize - + "/" - + GT_Recipe_Map.sReplicatorFakeRecipes.mRecipeList.size() - + " Replicator recipes."); - } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_ElementalDataOrbHolder.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_ElementalDataOrbHolder.java index 68aaa75aa1..2d534a493d 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_ElementalDataOrbHolder.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_ElementalDataOrbHolder.java @@ -20,7 +20,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -29,8 +28,6 @@ import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; public class GT_MetaTileEntity_Hatch_ElementalDataOrbHolder extends GT_MetaTileEntity_Hatch implements IConfigurationCircuitSupport { - public GT_Recipe_Map mRecipeMap = null; - public GT_MetaTileEntity_Hatch_ElementalDataOrbHolder(int aID, String aName, String aNameRegional, int aTier) { super( aID, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBattery.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBattery.java index 254c81a515..46d6917beb 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBattery.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBattery.java @@ -18,8 +18,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.gui.widget.ElectricSlotWidget; @@ -27,7 +27,7 @@ import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; public class GT_MetaTileEntity_Hatch_InputBattery extends GT_MetaTileEntity_Hatch { - public final GT_Recipe_Map mRecipeMap = null; + public final RecipeMap mRecipeMap = null; public GT_MetaTileEntity_Hatch_InputBattery(int aID, String aName, String aNameRegional, int aTier) { super(aID, aName, aNameRegional, aTier, getSlots(aTier), "Chargeable Item Bus for Multiblocks"); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Steam_BusInput.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Steam_BusInput.java index 47e30ab50c..0122b1b0c8 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Steam_BusInput.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Steam_BusInput.java @@ -19,14 +19,14 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; import gregtech.api.render.TextureFactory; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.lib.CORE; public class GT_MetaTileEntity_Hatch_Steam_BusInput extends GT_MetaTileEntity_Hatch { - public GT_Recipe_Map mRecipeMap = null; + public RecipeMap mRecipeMap = null; public boolean disableSort; public GT_MetaTileEntity_Hatch_Steam_BusInput(int aID, String aName, String aNameRegional, int aTier) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java index aa7422a79b..caf96ebf4f 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java @@ -69,9 +69,9 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maint import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus; +import gregtech.api.recipe.RecipeMap; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.api.util.IGT_HatchAdder; import gregtech.common.items.GT_MetaGenerated_Tool_01; @@ -391,7 +391,7 @@ public abstract class GregtechMeta_MultiBlockBase aMap) { int cleared = 0; for (GT_MetaTileEntity_Hatch_Input g : this.mInputHatches) { if (resetRecipeMapForHatch(g, aMap)) { @@ -824,7 +824,7 @@ public abstract class GregtechMeta_MultiBlockBase 0; } - public boolean resetRecipeMapForHatch(IGregTechTileEntity aTileEntity, GT_Recipe_Map aMap) { + public boolean resetRecipeMapForHatch(IGregTechTileEntity aTileEntity, RecipeMap aMap) { try { final IMetaTileEntity aMetaTileEntity = getMetaTileEntity(aTileEntity); if (aMetaTileEntity == null) { @@ -843,7 +843,7 @@ public abstract class GregtechMeta_MultiBlockBase aMap) { if (aTileEntity == null) { return false; } @@ -854,24 +854,24 @@ public abstract class GregtechMeta_MultiBlockBase aMap) { boolean ret = super.resetRecipeMapForAllInputHatches(aMap); for (GT_MetaTileEntity_Hatch_Steam_BusInput hatch : mSteamInputs) { if (resetRecipeMapForHatch(hatch, aMap)) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java index cab45a9a7b..6d898337ac 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java @@ -16,15 +16,16 @@ import gregtech.api.enums.Textures; import gregtech.api.gui.modularui.GT_UIInfos; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.interfaces.tileentity.RecipeMapWorkable; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils; -public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_BasicTank { +public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_BasicTank implements RecipeMapWorkable { private boolean useFuel = false; protected int pollMin, pollMax; @@ -295,7 +296,8 @@ public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_ return MathUtils.randInt(pollMin, pollMax); } - public abstract GT_Recipe_Map getRecipes(); + @Override + public abstract RecipeMap getRecipeMap(); public abstract int getEfficiency(); @@ -304,11 +306,11 @@ public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_ } public int getFuelValue(final FluidStack aLiquid) { - if ((aLiquid == null) || (this.getRecipes() == null)) { + if ((aLiquid == null) || (this.getRecipeMap() == null)) { return 0; } FluidStack tLiquid; - final Collection tRecipeList = this.getRecipes().mRecipeList; + final Collection tRecipeList = this.getRecipeMap().getAllRecipes(); if (tRecipeList != null) { // Logger.INFO("Step A"); for (final GT_Recipe tFuel : tRecipeList) { @@ -329,10 +331,10 @@ public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_ } public int getFuelValue(final ItemStack aStack) { - if (GT_Utility.isStackInvalid(aStack) || (this.getRecipes() == null)) { + if (GT_Utility.isStackInvalid(aStack) || (this.getRecipeMap() == null)) { return 0; } - final GT_Recipe tFuel = this.getRecipes() + final GT_Recipe tFuel = this.getRecipeMap() .findRecipe(this.getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack); if (tFuel != null) { return (int) ((tFuel.mSpecialValue * 1000L * this.getEfficiency()) / 100); @@ -341,10 +343,10 @@ public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_ } public ItemStack getEmptyContainer(final ItemStack aStack) { - if (GT_Utility.isStackInvalid(aStack) || (this.getRecipes() == null)) { + if (GT_Utility.isStackInvalid(aStack) || (this.getRecipeMap() == null)) { return null; } - final GT_Recipe tFuel = this.getRecipes() + final GT_Recipe tFuel = this.getRecipeMap() .findRecipe(this.getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack); if (tFuel != null) { return GT_Utility.copy(tFuel.getOutput(0)); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/nbthandlers/GT_MetaTileEntity_Hatch_NbtConsumable.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/nbthandlers/GT_MetaTileEntity_Hatch_NbtConsumable.java index 53c988676f..2ca8b0ba74 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/nbthandlers/GT_MetaTileEntity_Hatch_NbtConsumable.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/nbthandlers/GT_MetaTileEntity_Hatch_NbtConsumable.java @@ -16,7 +16,6 @@ import gregtech.api.interfaces.modularui.IAddGregtechLogo; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; @@ -25,7 +24,6 @@ import gtPlusPlus.core.util.minecraft.ItemUtils; public abstract class GT_MetaTileEntity_Hatch_NbtConsumable extends GT_MetaTileEntity_Hatch implements IAddGregtechLogo { - public GT_Recipe_Map mRecipeMap = null; private final int mInputslotCount; private final int mTotalSlotCount; private final boolean mAllowDuplicateUsageTypes; diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_SemiFluidGenerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_SemiFluidGenerator.java index 030f000710..6eda447410 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_SemiFluidGenerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_SemiFluidGenerator.java @@ -16,11 +16,11 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; public class GT_MetaTileEntity_SemiFluidGenerator extends GT_MetaTileEntity_BasicGenerator { @@ -62,9 +62,9 @@ public class GT_MetaTileEntity_SemiFluidGenerator extends GT_MetaTileEntity_Basi } @Override - public GT_Recipe.GT_Recipe_Map getRecipes() { + public RecipeMap getRecipeMap() { // Logger.WARNING("Fuel Count: "+Gregtech_Recipe_Map.sSemiFluidLiquidFuels.mRecipeList.size()); - return GTPP_Recipe_Map.sSemiFluidLiquidFuels; + return GTPPRecipeMaps.semiFluidFuels; } @Override @@ -96,7 +96,7 @@ public class GT_MetaTileEntity_SemiFluidGenerator extends GT_MetaTileEntity_Basi @Override public int getFuelValue(ItemStack aStack) { - if ((GT_Utility.isStackInvalid(aStack)) || (getRecipes() == null)) { + if ((GT_Utility.isStackInvalid(aStack)) || (getRecipeMap() == null)) { Logger.WARNING("Bad Fuel?"); return 0; } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityGeothermalGenerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityGeothermalGenerator.java index 601dddb651..8a476fceee 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityGeothermalGenerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityGeothermalGenerator.java @@ -17,8 +17,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; @@ -162,8 +163,8 @@ public class GregtechMetaTileEntityGeothermalGenerator extends GT_MetaTileEntity } @Override - public GT_Recipe_Map getRecipes() { - return GT_Recipe_Map.sHotFuels; + public RecipeMap getRecipeMap() { + return RecipeMaps.hotFuels; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java index 53f009b430..983e1d7881 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java @@ -12,9 +12,9 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.generators.GregtechRocketFuelGeneratorBase; import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; @@ -49,8 +49,8 @@ public class GregtechMetaTileEntityRocketFuelGenerator extends GregtechRocketFue } @Override - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GTPP_Recipe.GTPP_Recipe_Map.sRocketFuels; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.rocketFuels; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntity_RTG.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntity_RTG.java index cca69bc5d5..9ad42e350d 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntity_RTG.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntity_RTG.java @@ -15,10 +15,11 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils; @@ -99,7 +100,7 @@ public class GregtechMetaTileEntity_RTG extends GT_MetaTileEntity_BasicGenerator final NBTTagCompound data = list.getCompoundTagAt(0); ItemStack lastUsedFuel = ItemStack.loadItemStackFromNBT(data); if (lastUsedFuel != null) { - this.mCurrentRecipe = getRecipes().findRecipe( + this.mCurrentRecipe = getRecipeMap().findRecipe( getBaseMetaTileEntity(), false, 9223372036854775807L, @@ -218,8 +219,8 @@ public class GregtechMetaTileEntity_RTG extends GT_MetaTileEntity_BasicGenerator } @Override - public GT_Recipe.GT_Recipe_Map getRecipes() { - return GTPP_Recipe.GTPP_Recipe_Map.sRTGFuels; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.rtgFuels; } @Override @@ -305,8 +306,8 @@ public class GregtechMetaTileEntity_RTG extends GT_MetaTileEntity_BasicGenerator @Override public int getFuelValue(ItemStack aStack) { - if ((GT_Utility.isStackInvalid(aStack)) || (getRecipes() == null)) return 0; - GT_Recipe tFuel = getRecipes() + if ((GT_Utility.isStackInvalid(aStack)) || (getRecipeMap() == null)) return 0; + GT_Recipe tFuel = getRecipeMap() .findRecipe(getBaseMetaTileEntity(), false, 9223372036854775807L, null, new ItemStack[] { aStack }); if (tFuel != null) { this.mCurrentRecipe = tFuel; diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/basic/GregtechMetaTileEntity_AutoChisel.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/basic/GregtechMetaTileEntity_AutoChisel.java index 27e6eda0b0..80a0aff5ee 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/basic/GregtechMetaTileEntity_AutoChisel.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/basic/GregtechMetaTileEntity_AutoChisel.java @@ -7,12 +7,9 @@ import net.minecraftforge.common.util.ForgeDirection; import org.apache.commons.lang3.ArrayUtils; +import com.gtnewhorizons.modularui.api.drawable.FallbackableUITexture; import com.gtnewhorizons.modularui.api.drawable.IDrawable; import com.gtnewhorizons.modularui.api.math.Pos2d; -import com.gtnewhorizons.modularui.api.math.Size; -import com.gtnewhorizons.modularui.api.screen.ModularWindow; -import com.gtnewhorizons.modularui.api.screen.UIBuildContext; -import com.gtnewhorizons.modularui.common.widget.ProgressBar; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import gregtech.api.enums.Textures.BlockIcons; @@ -22,7 +19,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GT_Recipe; +import gregtech.api.recipe.BasicUIProperties; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; @@ -71,11 +68,6 @@ public class GregtechMetaTileEntity_AutoChisel extends GT_MetaTileEntity_BasicMa "If special slot is empty, first chisel result is used"); } - @Override - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return null; - } - private boolean hasValidCache(ItemStack aStack, ItemStack aSpecialSlot, boolean aClearOnFailure) { if (mInputCache != null && mOutputCache != null) { if (GT_Utility.areStacksEqual(aStack, mInputCache) @@ -174,16 +166,12 @@ public class GregtechMetaTileEntity_AutoChisel extends GT_MetaTileEntity_BasicMa return true; } + private static final FallbackableUITexture progressBarTexture = GT_UITextures + .fallbackableProgressbar("auto_chisel", GT_UITextures.PROGRESSBAR_COMPRESS); + @Override - public void addUIWidgets(ModularWindow.Builder builder, UIBuildContext buildContext) { - super.addUIWidgets(builder, buildContext); - builder.widget( - createProgressBar( - GT_UITextures.PROGRESSBAR_COMPRESS, - 20, - ProgressBar.Direction.RIGHT, - new Pos2d(78, 24), - new Size(20, 18))); + protected BasicUIProperties getUIProperties() { + return super.getUIProperties().toBuilder().progressBarTexture(progressBarTexture).build(); } @Override @@ -193,8 +181,8 @@ public class GregtechMetaTileEntity_AutoChisel extends GT_MetaTileEntity_BasicMa } @Override - protected SlotWidget createSpecialSlot(IDrawable[] backgrounds, Pos2d pos) { - return (SlotWidget) super.createSpecialSlot(backgrounds, pos) + protected SlotWidget createSpecialSlot(IDrawable[] backgrounds, Pos2d pos, BasicUIProperties uiProperties) { + return (SlotWidget) super.createSpecialSlot(backgrounds, pos, uiProperties) .setGTTooltip(() -> mTooltipCache.getData("GTPP.machines.chisel_slot.tooltip")); } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java index d8c46e11ce..23e942737c 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java @@ -22,8 +22,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -108,8 +109,8 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase getRecipeMap() { + return RecipeMaps.packagerRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialAlloySmelter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialAlloySmelter.java index c6fbc3e3c3..0ba3e569cc 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialAlloySmelter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialAlloySmelter.java @@ -27,6 +27,8 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_Recipe; @@ -75,8 +77,8 @@ public class GregtechMetaTileEntity_IndustrialAlloySmelter extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.alloySmelterRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java index ed4da64a85..01a77cfbda 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java @@ -11,6 +11,11 @@ import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.enums.GT_HatchElement.OutputHatch; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; +import java.util.Arrays; +import java.util.Collection; + +import javax.annotation.Nonnull; + import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -29,8 +34,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -183,9 +189,19 @@ public class GregtechMetaTileEntity_IndustrialArcFurnace extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return mPlasmaMode ? GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes - : GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes; + public RecipeMap getRecipeMap() { + return mPlasmaMode ? RecipeMaps.plasmaArcFurnaceRecipes : RecipeMaps.arcFurnaceRecipes; + } + + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList(RecipeMaps.arcFurnaceRecipes, RecipeMaps.plasmaArcFurnaceRecipes); + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java index 7dae3ac6dc..acb69536f2 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java @@ -28,11 +28,11 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.PlayerUtils; @@ -141,8 +141,8 @@ public class GregtechMetaTileEntity_IndustrialCentrifuge extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sMultiblockCentrifugeRecipes_GT; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.centrifugeNonCellRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialChisel.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialChisel.java index 4cb62a3c22..f7c91835e9 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialChisel.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialChisel.java @@ -11,14 +11,16 @@ import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import java.util.List; +import java.util.stream.Stream; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; -import org.jetbrains.annotations.NotNull; - import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; @@ -30,10 +32,10 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus; -import gregtech.api.recipe.check.FindRecipeResult; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_StreamUtil; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -52,7 +54,7 @@ public class GregtechMetaTileEntity_IndustrialChisel private static IStructureDefinition STRUCTURE_DEFINITION = null; private ItemStack mInputCache; private ItemStack mOutputCache; - private GTPP_Recipe mCachedRecipe; + private GT_Recipe mCachedRecipe; public GregtechMetaTileEntity_IndustrialChisel(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); @@ -145,11 +147,6 @@ public class GregtechMetaTileEntity_IndustrialChisel return 90; } - @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return null; - } - @Override public boolean isCorrectMachinePart(ItemStack aStack) { return true; @@ -171,7 +168,7 @@ public class GregtechMetaTileEntity_IndustrialChisel return false; } - private void cacheItem(ItemStack aInputItem, ItemStack aOutputItem, GTPP_Recipe aRecipe) { + private void cacheItem(ItemStack aInputItem, ItemStack aOutputItem, GT_Recipe aRecipe) { mInputCache = aInputItem.copy(); mOutputCache = aOutputItem.copy(); mCachedRecipe = aRecipe; @@ -210,7 +207,7 @@ public class GregtechMetaTileEntity_IndustrialChisel return tOutput; } - private GTPP_Recipe generateChiselRecipe(ItemStack aInput) { + private GT_Recipe generateChiselRecipe(ItemStack aInput) { boolean tIsCached = hasValidCache(aInput, this.target, true); if (tIsCached || aInput != null && hasChiselResults(aInput)) { ItemStack tOutput = tIsCached ? mOutputCache.copy() : getChiselOutput(aInput, this.target); @@ -220,7 +217,7 @@ public class GregtechMetaTileEntity_IndustrialChisel return mCachedRecipe; } // We can chisel this - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { ItemUtils.getSimpleStack(aInput, 1) }, new ItemStack[] { ItemUtils.getSimpleStack(tOutput, 1) }, @@ -276,14 +273,10 @@ public class GregtechMetaTileEntity_IndustrialChisel protected ProcessingLogic createProcessingLogic() { return new ProcessingLogic() { - @NotNull + @Nonnull @Override - protected FindRecipeResult findRecipe(GT_Recipe.GT_Recipe_Map map) { - GT_Recipe recipe = getRecipe(); - if (recipe == null) { - return FindRecipeResult.NOT_FOUND; - } - return FindRecipeResult.ofSuccess(recipe); + protected Stream findRecipeMatches(@Nullable RecipeMap map) { + return GT_StreamUtil.ofNullable(getRecipe()); } }.setSpeedBonus(1F / 3F).setEuModifier(0.75F).setMaxParallelSupplier(this::getMaxParallelRecipes); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java index 9307739bf8..2b5f90a5ca 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCokeOven.java @@ -26,10 +26,10 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -167,8 +167,8 @@ public class GregtechMetaTileEntity_IndustrialCokeOven extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sCokeOvenRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.cokeOvenRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java index ad85e31369..5db59c9b29 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCuttingMachine.java @@ -11,6 +11,11 @@ import static gregtech.api.enums.GT_HatchElement.Muffler; import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; +import java.util.Arrays; +import java.util.Collection; + +import javax.annotation.Nonnull; + import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -27,8 +32,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -130,8 +136,19 @@ public class GregtechMetaTileEntity_IndustrialCuttingMachine extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return mCuttingMode ? GT_Recipe.GT_Recipe_Map.sCutterRecipes : GT_Recipe.GT_Recipe_Map.sSlicerRecipes; + public RecipeMap getRecipeMap() { + return mCuttingMode ? RecipeMaps.cutterRecipes : RecipeMaps.slicerRecipes; + } + + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList(RecipeMaps.cutterRecipes, RecipeMaps.slicerRecipes); + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialDehydrator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialDehydrator.java index e60a5cd8c4..318b8cdac2 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialDehydrator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialDehydrator.java @@ -13,6 +13,11 @@ import static gregtech.api.enums.GT_HatchElement.OutputHatch; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import static gregtech.api.util.GT_StructureUtility.ofCoil; +import java.util.Arrays; +import java.util.Collection; + +import javax.annotation.Nonnull; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -31,12 +36,13 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.PlayerUtils; @@ -144,9 +150,14 @@ public class GregtechMetaTileEntity_IndustrialDehydrator extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return mDehydratorMode ? GTPP_Recipe.GTPP_Recipe_Map.sMultiblockChemicalDehydratorRecipes - : GTPP_Recipe.GTPP_Recipe_Map.sVacuumFurnaceRecipes; + public RecipeMap getRecipeMap() { + return mDehydratorMode ? GTPPRecipeMaps.chemicalDehydratorNonCellRecipes : GTPPRecipeMaps.vacuumFurnaceRecipes; + } + + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList(GTPPRecipeMaps.chemicalDehydratorNonCellRecipes, GTPPRecipeMaps.vacuumFurnaceRecipes); } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java index 5d20a478f0..0092f43c21 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialElectrolyzer.java @@ -24,9 +24,10 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -124,8 +125,8 @@ public class GregtechMetaTileEntity_IndustrialElectrolyzer extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map.sMultiblockElectrolyzerRecipes_GT; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.electrolyzerNonCellRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java index 06df63e08a..149d1a8017 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialExtruder.java @@ -24,8 +24,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -132,8 +133,13 @@ public class GregtechMetaTileEntity_IndustrialExtruder extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sExtruderRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.extruderRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialFluidHeater.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialFluidHeater.java index d6ceeffd58..94c950ba50 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialFluidHeater.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialFluidHeater.java @@ -25,8 +25,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -144,8 +145,8 @@ public class GregtechMetaTileEntity_IndustrialFluidHeater extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.fluidHeaterRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialForgeHammer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialForgeHammer.java index 6bf9fd6f21..d7a182e483 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialForgeHammer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialForgeHammer.java @@ -40,8 +40,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -191,8 +192,8 @@ public class GregtechMetaTileEntity_IndustrialForgeHammer extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sHammerRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.hammerRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java index 3d9eab79fa..3f291b38d6 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java @@ -37,8 +37,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -271,8 +272,13 @@ public class GregtechMetaTileEntity_IndustrialMacerator extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.maceratorRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -10; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java index 9fe9641323..e9172ae5a9 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java @@ -30,9 +30,10 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -155,8 +156,8 @@ public class GregtechMetaTileEntity_IndustrialMixer } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map.sMultiblockMixerRecipes_GT; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.mixerNonCellRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMolecularTransformer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMolecularTransformer.java index 2437f552cd..d1613dc290 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMolecularTransformer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMolecularTransformer.java @@ -24,9 +24,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -195,8 +195,8 @@ public class GregtechMetaTileEntity_IndustrialMolecularTransformer } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe_Map.sMolecularTransformerRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.molecularTransformerRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java index 0e6757b29a..ebbae1f4b6 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java @@ -14,7 +14,12 @@ import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collection; import java.util.List; +import java.util.stream.Stream; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; @@ -26,8 +31,6 @@ import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import org.jetbrains.annotations.NotNull; - import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; @@ -38,7 +41,8 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.recipe.check.FindRecipeResult; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; @@ -72,9 +76,9 @@ public class GregtechMetaTileEntity_IndustrialMultiMachine extends static { for (int id = 0; id < 9; id++) { - GT_Recipe.GT_Recipe_Map recipeMap = getRecipeMap(id); + RecipeMap recipeMap = getRecipeMap(id); if (recipeMap != null) { - String aNEI = GT_LanguageManager.getTranslation(getRecipeMap(id).mNEIName); + String aNEI = GT_LanguageManager.getTranslation(getRecipeMap(id).unlocalizedName); aToolTipNames[id] = aNEI != null ? aNEI : "BAD NEI NAME (Report to Github)"; } } @@ -231,29 +235,49 @@ public class GregtechMetaTileEntity_IndustrialMultiMachine extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { + public RecipeMap getRecipeMap() { return null; } - private static GT_Recipe.GT_Recipe_Map getRecipeMap(int aMode) { + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList( + RecipeMaps.compressorRecipes, + RecipeMaps.latheRecipes, + RecipeMaps.polarizerRecipes, + RecipeMaps.fermentingRecipes, + RecipeMaps.fluidExtractionRecipes, + RecipeMaps.extractorRecipes, + RecipeMaps.laserEngraverRecipes, + RecipeMaps.autoclaveRecipes, + RecipeMaps.fluidSolidifierRecipes); + } + + @Override + public int getRecipeCatalystPriority() { + return -10; + } + + private static RecipeMap getRecipeMap(int aMode) { if (aMode == MODE_COMPRESSOR) { - return GT_Recipe.GT_Recipe_Map.sCompressorRecipes; + return RecipeMaps.compressorRecipes; } else if (aMode == MODE_LATHE) { - return GT_Recipe.GT_Recipe_Map.sLatheRecipes; + return RecipeMaps.latheRecipes; } else if (aMode == MODE_MAGNETIC) { - return GT_Recipe.GT_Recipe_Map.sPolarizerRecipes; + return RecipeMaps.polarizerRecipes; } else if (aMode == MODE_FERMENTER) { - return GT_Recipe.GT_Recipe_Map.sFermentingRecipes; + return RecipeMaps.fermentingRecipes; } else if (aMode == MODE_FLUIDEXTRACT) { - return GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; + return RecipeMaps.fluidExtractionRecipes; } else if (aMode == MODE_EXTRACTOR) { - return GT_Recipe.GT_Recipe_Map.sExtractorRecipes; + return RecipeMaps.extractorRecipes; } else if (aMode == MODE_LASER) { - return GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; + return RecipeMaps.laserEngraverRecipes; } else if (aMode == MODE_AUTOCLAVE) { - return GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; + return RecipeMaps.autoclaveRecipes; } else if (aMode == MODE_FLUIDSOLIDIFY) { - return GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; + return RecipeMaps.fluidSolidifierRecipes; } else { return null; } @@ -265,22 +289,22 @@ public class GregtechMetaTileEntity_IndustrialMultiMachine extends private ItemStack lastCircuit = null; - @NotNull + @Nonnull @Override - protected FindRecipeResult findRecipe(GT_Recipe.GT_Recipe_Map map) { + protected Stream findRecipeMatches(@Nullable RecipeMap map) { ItemStack circuit = getCircuit(inputItems); if (circuit == null) { - return FindRecipeResult.NOT_FOUND; + return Stream.empty(); } if (!GT_Utility.areStacksEqual(circuit, lastCircuit)) { lastRecipe = null; lastCircuit = circuit; } - GT_Recipe.GT_Recipe_Map foundMap = getRecipeMap(getCircuitID(circuit)); + RecipeMap foundMap = getRecipeMap(getCircuitID(circuit)); if (foundMap == null) { - return FindRecipeResult.NOT_FOUND; + return Stream.empty(); } - return super.findRecipe(foundMap); + return super.findRecipeMatches(foundMap); } }.setSpeedBonus(1F / 3.5F).setEuModifier(0.8F).setMaxParallelSupplier(this::getMaxParallelRecipes); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java index 5be7fcecc3..8ea7787c35 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java @@ -10,6 +10,11 @@ import static gregtech.api.enums.GT_HatchElement.Muffler; import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; +import java.util.Arrays; +import java.util.Collection; + +import javax.annotation.Nonnull; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -25,8 +30,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -132,8 +138,19 @@ public class GregtechMetaTileEntity_IndustrialPlatePress extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return mFormingMode ? GT_Recipe.GT_Recipe_Map.sPressRecipes : GT_Recipe.GT_Recipe_Map.sBenderRecipes; + public RecipeMap getRecipeMap() { + return mFormingMode ? RecipeMaps.formingPressRecipes : RecipeMaps.benderRecipes; + } + + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList(RecipeMaps.formingPressRecipes, RecipeMaps.benderRecipes); + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java index 134d9a236d..cad24dac77 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialSifter.java @@ -27,8 +27,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -128,8 +129,13 @@ public class GregtechMetaTileEntity_IndustrialSifter } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sSifterRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.sifterRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java index 85981bb5c2..f207264eed 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialThermalCentrifuge.java @@ -25,8 +25,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -130,8 +131,8 @@ public class GregtechMetaTileEntity_IndustrialThermalCentrifuge } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.thermalCentrifugeRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java index b8d5ebdf8b..5b15ce9ee4 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialVacuumFreezer.java @@ -29,9 +29,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.FluidUtils; @@ -178,8 +178,8 @@ public class GregtechMetaTileEntity_IndustrialVacuumFreezer extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sAdvFreezerRecipes_GT; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.advancedFreezerRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java index e80d533774..f5d8fd7bbb 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java @@ -15,6 +15,11 @@ import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.enums.GT_HatchElement.OutputHatch; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; +import java.util.Arrays; +import java.util.Collection; + +import javax.annotation.Nonnull; + import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; @@ -36,14 +41,16 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.FluidUtils; @@ -164,9 +171,23 @@ public class GregtechMetaTileEntity_IndustrialWashPlant extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return mMode == 0 ? GT_Recipe.GT_Recipe_Map.sOreWasherRecipes - : mMode == 1 ? GTPP_Recipe_Map.sSimpleWasherRecipes : GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; + public RecipeMap getRecipeMap() { + return mMode == 0 ? RecipeMaps.oreWasherRecipes + : mMode == 1 ? GTPPRecipeMaps.simpleWasherRecipes : RecipeMaps.chemicalBathRecipes; + } + + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList( + RecipeMaps.oreWasherRecipes, + GTPPRecipeMaps.simpleWasherRecipes, + RecipeMaps.chemicalBathRecipes); + } + + @Override + public int getRecipeCatalystPriority() { + return -10; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java index e233994477..13500d7df2 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWireMill.java @@ -28,8 +28,9 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; @@ -135,8 +136,13 @@ public class GregtechMetaTileEntity_IndustrialWireMill extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sWiremillRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.wiremillRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IsaMill.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IsaMill.java index f8f8a28ccc..5fc969a22e 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IsaMill.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IsaMill.java @@ -40,16 +40,17 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.minecraft.BlockPos; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.chemistry.general.ItemGenericChemBase; import gtPlusPlus.core.lib.CORE; @@ -200,8 +201,8 @@ public class GregtechMetaTileEntity_IsaMill extends GregtechMeta_MultiBlockBase< } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sOreMillRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.millingRecipes; } @Override @@ -430,7 +431,6 @@ public class GregtechMetaTileEntity_IsaMill extends GregtechMeta_MultiBlockBase< public ArrayList getStoredInputs() { ArrayList tItems = super.getStoredInputs(); for (GT_MetaTileEntity_Hatch_MillingBalls tHatch : filterValidMTEs(mMillingBallBuses)) { - tHatch.mRecipeMap = getRecipeMap(); tItems.addAll(tHatch.getContentUsageSlots()); } return tItems; diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_NuclearSaltProcessingPlant.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_NuclearSaltProcessingPlant.java index 6db432a24a..bcfe53c41c 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_NuclearSaltProcessingPlant.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_NuclearSaltProcessingPlant.java @@ -26,9 +26,11 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.MetaTileEntity; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -184,8 +186,8 @@ public class GregtechMetaTileEntity_NuclearSaltProcessingPlant } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map.sNuclearSaltProcessingPlantRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.nuclearSaltProcessingPlantRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java index 85f24af541..17f59331ed 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_SpargeTower.java @@ -36,16 +36,16 @@ import gregtech.api.interfaces.fluid.IFluidStore; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; -import gregtech.api.util.GTPP_Recipe; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.api.util.GasSpargingRecipe; import gregtech.api.util.GasSpargingRecipeMap; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.math.MathUtils; @@ -171,16 +171,16 @@ public class GregtechMetaTileEntity_SpargeTower extends GregtechMeta_MultiBlockB } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - if (GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.isEmpty()) { + public RecipeMap getRecipeMap() { + if (GTPPRecipeMaps.spargeTowerFakeRecipes.getAllRecipes().isEmpty()) { generateRecipes(); } - return GTPP_Recipe_Map.sSpargeTowerRecipes; + return GTPPRecipeMaps.spargeTowerFakeRecipes; } private static boolean generateRecipes() { for (GasSpargingRecipe aRecipe : GasSpargingRecipeMap.mRecipes) { - GTPP_Recipe newRecipe = new GTPP_Recipe( + GT_Recipe newRecipe = new GT_Recipe( false, new ItemStack[] {}, new ItemStack[] {}, @@ -191,9 +191,9 @@ public class GregtechMetaTileEntity_SpargeTower extends GregtechMeta_MultiBlockB aRecipe.mDuration, aRecipe.mEUt, 0); - GTPP_Recipe_Map.sSpargeTowerRecipes.add(newRecipe); + GTPPRecipeMaps.spargeTowerFakeRecipes.add(newRecipe); } - return !GTPP_Recipe_Map.sSpargeTowerRecipes.mRecipeList.isEmpty(); + return !GTPPRecipeMaps.spargeTowerFakeRecipes.getAllRecipes().isEmpty(); } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_DistillationTower.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_DistillationTower.java index 3ca083ebf6..450536a0d8 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_DistillationTower.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_DistillationTower.java @@ -16,8 +16,12 @@ import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import static gregtech.api.util.GT_StructureUtility.ofHatchAdder; import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; import java.util.List; +import javax.annotation.Nonnull; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -40,9 +44,9 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -260,10 +264,16 @@ public class GregtechMetaTileEntity_Adv_DistillationTower extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { + public RecipeMap getRecipeMap() { return mMode.getRecipeMap(); } + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList(RecipeMaps.distilleryRecipes, RecipeMaps.distillationTowerRecipes); + } + @Override public boolean isCorrectMachinePart(ItemStack aStack) { return true; @@ -433,17 +443,17 @@ public class GregtechMetaTileEntity_Adv_DistillationTower extends private enum Mode { - DistillationTower(GT_Recipe_Map.sDistillationRecipes), - Distillery(GT_Recipe_Map.sDistilleryRecipes),; + DistillationTower(RecipeMaps.distillationTowerRecipes), + Distillery(RecipeMaps.distilleryRecipes),; static final Mode[] VALUES = values(); - private final GT_Recipe_Map recipeMap; + private final RecipeMap recipeMap; - Mode(GT_Recipe_Map recipeMap) { + Mode(RecipeMap recipeMap) { this.recipeMap = recipeMap; } - public GT_Recipe_Map getRecipeMap() { + public RecipeMap getRecipeMap() { return recipeMap; } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java index f951927434..941a1c445c 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_EBF.java @@ -38,6 +38,8 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; @@ -199,8 +201,13 @@ public class GregtechMetaTileEntity_Adv_EBF extends GregtechMeta_MultiBlockBase< } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sBlastRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.blastFurnaceRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK4.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK4.java index 09c030d0a2..ee4db3c76e 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK4.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK4.java @@ -18,8 +18,9 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.objects.overclockdescriber.OverclockDescriber; import gregtech.api.render.TextureFactory; -import gregtech.api.util.AdvFusionPower; +import gregtech.api.util.AdvancedFusionOverclockDescriber; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.common.tileentities.machines.multi.GT_MetaTileEntity_FusionComputer; import gtPlusPlus.core.block.ModBlocks; @@ -36,14 +37,16 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK4 extends GT_MetaTileEntity_Fus } public GregtechMetaTileEntity_Adv_Fusion_MK4(int aID, String aName, String aNameRegional) { - super(aID, aName, aNameRegional, 9); - // Theoretically this fusion reactor has a slightly higher startup power, but special value only uses integer - power = new AdvFusionPower((byte) 9, Integer.MAX_VALUE); + super(aID, aName, aNameRegional); } public GregtechMetaTileEntity_Adv_Fusion_MK4(String aName) { super(aName); - power = new AdvFusionPower((byte) 9, Integer.MAX_VALUE); + } + + @Override + protected OverclockDescriber createOverclockDescriber() { + return new AdvancedFusionOverclockDescriber((byte) tier(), capableStartupCanonical()); } @Override @@ -74,6 +77,16 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK4 extends GT_MetaTileEntity_Fus return (640010000L * 4) * (Math.min(16, this.mEnergyHatches.size())) / 8L; } + @Override + public long capableStartupCanonical() { + return 5_120_000_000L; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; + } + @Override public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GregtechMetaTileEntity_Adv_Fusion_MK4(mName); @@ -99,22 +112,11 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK4 extends GT_MetaTileEntity_Fus return 13; } - @Override - public int tierOverclock() { - return 8; - } - @Override protected ProcessingLogic createProcessingLogic() { return super.createProcessingLogic().setOverclock(2, 2); } - @Override - public int overclock(int mStartEnergy) { - return (mStartEnergy <= 160000000) ? 3 - : ((mStartEnergy <= 320000000) ? 2 : (mStartEnergy <= 640000000) ? 1 : 0); - } - @Override public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final ForgeDirection side, final ForgeDirection facing, final int aColorIndex, final boolean aActive, final boolean aRedstone) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK5.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK5.java index 0ee2915f02..5d546b5bfb 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK5.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Fusion_MK5.java @@ -18,8 +18,9 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.objects.overclockdescriber.OverclockDescriber; import gregtech.api.render.TextureFactory; -import gregtech.api.util.AdvFusionPower; +import gregtech.api.util.AdvancedFusionOverclockDescriber; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.common.tileentities.machines.multi.GT_MetaTileEntity_FusionComputer; import gtPlusPlus.core.block.ModBlocks; @@ -36,14 +37,16 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK5 extends GT_MetaTileEntity_Fus } public GregtechMetaTileEntity_Adv_Fusion_MK5(int aID, String aName, String aNameRegional) { - super(aID, aName, aNameRegional, 10); - // Theoretically this fusion reactor has higher startup power, but special value only uses integer - power = new AdvFusionPower((byte) 10, Integer.MAX_VALUE); + super(aID, aName, aNameRegional); } public GregtechMetaTileEntity_Adv_Fusion_MK5(String aName) { super(aName); - power = new AdvFusionPower((byte) 10, Integer.MAX_VALUE); + } + + @Override + protected OverclockDescriber createOverclockDescriber() { + return new AdvancedFusionOverclockDescriber((byte) tier(), capableStartupCanonical()); } @Override @@ -74,6 +77,16 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK5 extends GT_MetaTileEntity_Fus return (640010000L * 16) * (Math.min(16, this.mEnergyHatches.size())) / 8L; } + @Override + public long capableStartupCanonical() { + return 20_480_000_000L; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; + } + @Override public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GregtechMetaTileEntity_Adv_Fusion_MK5(mName); @@ -99,23 +112,11 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK5 extends GT_MetaTileEntity_Fus return 1; } - @Override - public int tierOverclock() { - return 16; - } - @Override protected ProcessingLogic createProcessingLogic() { return super.createProcessingLogic().setOverclock(2, 2); } - @Override - public int overclock(int mStartEnergy) { - return (mStartEnergy <= 160_000_000) ? 4 - : ((mStartEnergy <= 320_000_000) ? 3 - : ((mStartEnergy <= 640_000_000) ? 2 : ((mStartEnergy <= 1_280_000_000) ? 1 : 0))); - } - @Override public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final ForgeDirection side, final ForgeDirection facing, final int aColorIndex, final boolean aActive, final boolean aRedstone) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Implosion.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Implosion.java index 3a348f24d8..0827265036 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Implosion.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/GregtechMetaTileEntity_Adv_Implosion.java @@ -22,8 +22,9 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -133,8 +134,13 @@ public class GregtechMetaTileEntity_Adv_Implosion } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sImplosionRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.implosionRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamCompressor.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamCompressor.java index 0e396c5782..6393dd49bc 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamCompressor.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamCompressor.java @@ -23,6 +23,8 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_Recipe; @@ -121,8 +123,8 @@ public class GregtechMetaTileEntity_SteamCompressor } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sCompressorRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.compressorRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamMacerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamMacerator.java index 82190dc6d0..2258f67749 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamMacerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/steam/GregtechMetaTileEntity_SteamMacerator.java @@ -27,6 +27,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.XSTR; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_ParallelHelper; @@ -129,8 +131,8 @@ public class GregtechMetaTileEntity_SteamMacerator } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; + public RecipeMap getRecipeMap() { + return RecipeMaps.maceratorRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java index 25fe69da96..62972b3957 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java @@ -24,6 +24,8 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.MetaTileEntity; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -148,8 +150,8 @@ public class GT4Entity_AutoCrafter extends GregtechMeta_MultiBlockBase getRecipeMap() { + return RecipeMaps.assemblerRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_ThermalBoiler.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_ThermalBoiler.java index 89da64852a..13eabb8992 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_ThermalBoiler.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_ThermalBoiler.java @@ -32,13 +32,14 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.general.ItemLavaFilter; import gtPlusPlus.core.lib.CORE; @@ -83,6 +84,11 @@ public class GT4Entity_ThermalBoiler extends GregtechMeta_MultiBlockBase getRecipeMap() { + return GTPPRecipeMaps.thermalBoilerRecipes; + } + private static Item mLavaFilter; private static Fluid mLava = null; private static Fluid mPahoehoe = null; @@ -115,7 +121,7 @@ public class GT4Entity_ThermalBoiler extends GregtechMeta_MultiBlockBase getRecipeMap() { + return RecipeMaps.replicatorRecipes; } @Override @@ -294,49 +279,18 @@ public class GregtechMTE_ElementalDuplicator extends GregtechMeta_MultiBlockBase @Override protected ProcessingLogic createProcessingLogic() { - return new ProcessingLogic() { + return new ProcessingLogic().setSpeedBonus(1F / 2F).enablePerfectOverclock() + .setMaxParallelSupplier(this::getMaxParallelRecipes); + } - @NotNull - @Override - protected FindRecipeResult findRecipe(@Nullable GT_Recipe_Map map) { - if (map == null) { - return FindRecipeResult.NOT_FOUND; - } - try { - ItemStack aDataOrbStack = null; - recipe: for (GT_Recipe nRecipe : map.mRecipeList) { - ItemStack aTempStack = getSpecialSlotStack(nRecipe); - if (aTempStack != null) { - for (ItemStack aItem : inputItems) { - if (nRecipe.mSpecialItems != null) { - if (GT_Utility.areStacksEqual(aTempStack, aItem, false)) { - aDataOrbStack = aTempStack; - break recipe; - } - } - } - } - } - if (aDataOrbStack != null) { - GT_Recipe recipe = GregtechMTE_ElementalDuplicator.this.findRecipe( - getBaseMetaTileEntity(), - mLastRecipe, - false, - false, - availableVoltage, - inputFluids, - aDataOrbStack, - inputItems); - if (recipe != null) { - return FindRecipeResult.ofSuccess(recipe); - } - } - } catch (Throwable t) { - t.printStackTrace(); - } - return FindRecipeResult.NOT_FOUND; - } - }.setSpeedBonus(1F / 2F).enablePerfectOverclock().setMaxParallelSupplier(this::getMaxParallelRecipes); + @Override + protected void setupProcessingLogic(ProcessingLogic logic) { + super.setupProcessingLogic(logic); + for (GT_MetaTileEntity_Hatch_ElementalDataOrbHolder hatch : filterValidMTEs(mReplicatorDataOrbHatches)) { + ItemStack orb = hatch.getOrbByCircuit(); + logic.setSpecialSlotItem(orb); + break; + } } @Override @@ -378,147 +332,12 @@ public class GregtechMTE_ElementalDuplicator extends GregtechMeta_MultiBlockBase public ArrayList getStoredInputs() { ArrayList tItems = super.getStoredInputs(); for (GT_MetaTileEntity_Hatch_ElementalDataOrbHolder tHatch : filterValidMTEs(mReplicatorDataOrbHatches)) { - tHatch.mRecipeMap = getRecipeMap(); tItems.add(tHatch.getOrbByCircuit()); } tItems.removeAll(Collections.singleton(null)); return tItems; } - /** - * finds a Recipe matching the aFluid and ItemStack Inputs. - * - * @param aTileEntity an Object representing the current coordinates of the executing - * Block/Entity/Whatever. This may be null, especially during Startup. - * @param aRecipe in case this is != null it will try to use this Recipe first when looking things up. - * @param aNotUnificated if this is T the Recipe searcher will unificate the ItemStack Inputs - * @param aDontCheckStackSizes if set to false will only return recipes that can be executed at least once with the - * provided input - * @param aVoltage Voltage of the Machine or Long.MAX_VALUE if it has no Voltage - * @param aFluids the Fluid Inputs - * @param aSpecialSlot the content of the Special Slot, the regular Manager doesn't do anything with this, - * but some custom ones do. - * @param aInputs the Item Inputs - * @return the Recipe it has found or null for no matching Recipe - */ - public GT_Recipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GT_Recipe aRecipe, boolean aNotUnificated, - boolean aDontCheckStackSizes, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, - ItemStack... aInputs) { - - GT_Recipe_Map mRecipeMap = this.getRecipeMap(); - // No Recipes? Well, nothing to be found then. - if (mRecipeMap.mRecipeList.isEmpty()) { - return null; - } - - // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or - // "at least 2 Stacks" before they start searching for Recipes. - // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in - // their Machines to select Sub Recipes. - if (GregTech_API.sPostloadFinished) { - if (mRecipeMap.mMinimalInputFluids > 0) { - if (aFluids == null) return null; - int tAmount = 0; - for (FluidStack aFluid : aFluids) if (aFluid != null) tAmount++; - if (tAmount < mRecipeMap.mMinimalInputFluids) return null; - } - if (mRecipeMap.mMinimalInputItems > 0) { - if (aInputs == null) return null; - int tAmount = 0; - for (ItemStack aInput : aInputs) if (aInput != null) tAmount++; - if (tAmount < mRecipeMap.mMinimalInputItems) return null; - } - } - - // Unification happens here in case the Input isn't already unificated. - if (aNotUnificated) { - aInputs = GT_OreDictUnificator.getStackArray(true, (Object[]) aInputs); - } - - // Check the Recipe which has been used last time in order to not have to search for it again, if possible. - if (aRecipe != null) { - ItemStack aRecipeSpecial = getSpecialSlotStack(aRecipe); - if (!aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered - && aRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs) - && GT_Utility.areStacksEqual(aRecipeSpecial, aSpecialSlot, false) - && areDataOrbsEqual(aRecipeSpecial, aSpecialSlot)) { - return aRecipe.mEnabled && aVoltage * mRecipeMap.mAmperage >= aRecipe.mEUt ? aRecipe : null; - } - } - - // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items. - if (mRecipeMap.mUsualInputCount > 0 && aInputs != null) for (ItemStack tStack : aInputs) if (tStack != null) { - Collection tRecipes = mRecipeMap.mRecipeItemMap.get(new GT_ItemStack(tStack)); - if (tRecipes != null) { - for (GT_Recipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe - && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - ItemStack aRecipeSpecial = getSpecialSlotStack(tRecipe); - if (GT_Utility.areStacksEqual(aRecipeSpecial, aSpecialSlot, false) - && areDataOrbsEqual(aRecipeSpecial, aSpecialSlot)) { - return tRecipe.mEnabled && aVoltage * mRecipeMap.mAmperage >= tRecipe.mEUt ? tRecipe : null; - } - } - tRecipes = mRecipeMap.mRecipeItemMap.get(new GT_ItemStack(tStack, true)); - } - } - if (tRecipes != null) { - for (GT_Recipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe - && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - ItemStack aRecipeSpecial = getSpecialSlotStack(tRecipe); - if (GT_Utility.areStacksEqual(aRecipeSpecial, aSpecialSlot, false) - && areDataOrbsEqual(aRecipeSpecial, aSpecialSlot)) { - return tRecipe.mEnabled && aVoltage * mRecipeMap.mAmperage >= tRecipe.mEUt ? tRecipe : null; - } - } - } - } - } - - // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map - // too. - if (mRecipeMap.mMinimalInputItems == 0 && aFluids != null) - for (FluidStack aFluid : aFluids) if (aFluid != null) { - Collection tRecipes = mRecipeMap.mRecipeFluidMap.get(aFluid.getFluid().getName()); - if (tRecipes != null) for (GT_Recipe tRecipe : tRecipes) { - if (!tRecipe.mFakeRecipe - && tRecipe.isRecipeInputEqual(false, aDontCheckStackSizes, aFluids, aInputs)) { - ItemStack aRecipeSpecial = getSpecialSlotStack(tRecipe); - if (GT_Utility.areStacksEqual(aRecipeSpecial, aSpecialSlot, false) - && areDataOrbsEqual(aRecipeSpecial, aSpecialSlot)) { - return tRecipe.mEnabled && aVoltage * mRecipeMap.mAmperage >= tRecipe.mEUt ? tRecipe : null; - } - } - } - } - - // And nothing has been found. - return null; - } - - public static ItemStack getSpecialSlotStack(GT_Recipe aRecipe) { - ItemStack aStack = null; - if (aRecipe.mSpecialItems != null) { - if (aRecipe.mSpecialItems instanceof ItemStack[]aTempStackArray) { - aStack = aTempStackArray[0]; - } - } - return aStack; - } - - private static boolean areDataOrbsEqual(ItemStack aOrb1, ItemStack aOrb2) { - if (aOrb1 != null && aOrb2 != null) { - Materials tMaterial1 = Element.get(Behaviour_DataOrb.getDataName(aOrb1)).mLinkedMaterials.get(0); - Materials tMaterial2 = Element.get(Behaviour_DataOrb.getDataName(aOrb2)).mLinkedMaterials.get(0); - if (tMaterial1.equals(tMaterial2)) { - return true; - } - } - - return false; - } - @Override public boolean doesBindPlayerInventory() { return false; diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_FrothFlotationCell.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_FrothFlotationCell.java index 45c1751231..eee9c932c4 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_FrothFlotationCell.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_FrothFlotationCell.java @@ -35,12 +35,13 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.Material; @@ -106,8 +107,8 @@ public class GregtechMTE_FrothFlotationCell extends GregtechMeta_MultiBlockBase< } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sFlotationCellRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.flotationCellRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java index fbfbf7bc2d..fe16934b91 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_NuclearReactor.java @@ -37,15 +37,15 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maint import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; import gregtech.api.render.TextureFactory; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.ELEMENT; @@ -80,8 +80,8 @@ public class GregtechMTE_NuclearReactor extends GregtechMeta_MultiBlockBase getRecipeMap() { + return GTPPRecipeMaps.liquidFluorineThoriumReactorRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntityTreeFarm.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntityTreeFarm.java index 20f72a0e62..88a280d5f2 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntityTreeFarm.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntityTreeFarm.java @@ -53,15 +53,16 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.items.GT_MetaGenerated_Tool; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Utility; import gregtech.api.util.VoidProtectionHelper; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.lib.CORE; @@ -172,6 +173,12 @@ public class GregtechMetaTileEntityTreeFarm extends GregtechMeta_MultiBlockBase< }; } + @Override + public RecipeMap getRecipeMap() { + // Only for visual + return GTPPRecipeMaps.treeGrowthSimulatorFakeRecipes; + } + @Override public @NotNull CheckRecipeResult checkProcessing() { final ItemStack controllerStack = getControllerSlot(); @@ -550,7 +557,7 @@ public class GregtechMetaTileEntityTreeFarm extends GregtechMeta_MultiBlockBase< private static int sRecipeID = 0; public static boolean addFakeRecipeToNEI(@Nonnull ItemStack aSapling, ItemStack aLog) { - int aRecipes = GTPP_Recipe_Map.sTreeSimFakeRecipes.mRecipeList.size(); + int aRecipes = GTPPRecipeMaps.treeGrowthSimulatorFakeRecipes.getAllRecipes().size(); Logger.INFO( "Adding Tree Growth Simulation for " + aSapling.getDisplayName() + " -> " @@ -560,7 +567,7 @@ public class GregtechMetaTileEntityTreeFarm extends GregtechMeta_MultiBlockBase< Logger.INFO("" + aOutputs); ItemStack inputStack = aSapling.copy(); inputStack.stackSize = 0; - GTPP_Recipe_Map.sTreeSimFakeRecipes.addFakeRecipe( + GTPPRecipeMaps.treeGrowthSimulatorFakeRecipes.addFakeRecipe( false, new ItemStack[] { inputStack }, aOutput, @@ -571,7 +578,7 @@ public class GregtechMetaTileEntityTreeFarm extends GregtechMeta_MultiBlockBase< 1, sRecipeID++, 0); - return GTPP_Recipe_Map.sTreeSimFakeRecipes.mRecipeList.size() > aRecipes; + return GTPPRecipeMaps.treeGrowthSimulatorFakeRecipes.getAllRecipes().size() > aRecipes; } public int hasLiquidFert() { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_AlloyBlastSmelter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_AlloyBlastSmelter.java index b7f5451071..93602ad5f2 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_AlloyBlastSmelter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_AlloyBlastSmelter.java @@ -30,11 +30,11 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; @@ -150,8 +150,8 @@ public class GregtechMetaTileEntity_AlloyBlastSmelter extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sAlloyBlastSmelterRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.alloyBlastSmelterRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Cyclotron.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Cyclotron.java index c5a222e540..f42641c80e 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Cyclotron.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Cyclotron.java @@ -31,10 +31,10 @@ import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.chemistry.IonParticles; import gtPlusPlus.core.lib.CORE; @@ -207,8 +207,8 @@ public class GregtechMetaTileEntity_Cyclotron extends GregtechMeta_MultiBlockBas } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sCyclotronRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.cyclotronRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java index 7997497d42..0f393ae7ce 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java @@ -35,17 +35,18 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; import gregtech.api.util.FishPondFakeRecipe; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_ParallelHelper; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; @@ -168,8 +169,8 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return null; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.fishPondRecipes; } @Override @@ -205,7 +206,7 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends ItemStack[] mFishOutput = generateLoot(this.mMode); mFishOutput = removeNulls(mFishOutput); - GT_Recipe g = new GTPP_Recipe( + GT_Recipe g = new GT_Recipe( true, new ItemStack[] {}, mFishOutput, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialRockBreaker.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialRockBreaker.java index 11c6f4245b..bfaf18a3af 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialRockBreaker.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialRockBreaker.java @@ -9,11 +9,9 @@ import static gregtech.api.enums.GT_HatchElement.InputHatch; import static gregtech.api.enums.GT_HatchElement.Maintenance; import static gregtech.api.enums.GT_HatchElement.Muffler; import static gregtech.api.enums.GT_HatchElement.OutputBus; -import static gregtech.api.enums.GT_Values.E; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import java.util.ArrayList; -import java.util.HashSet; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; @@ -34,21 +32,20 @@ import gregtech.api.enums.TAE; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_ParallelHelper; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; -import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; @@ -154,45 +151,9 @@ public class GregtechMetaTileEntity_IndustrialRockBreaker extends return TAE.GTPP_INDEX(16); } - private static final GT_Recipe_Map sFakeRecipeMap = new GT_Recipe_Map( - new HashSet<>(0), - "gt.recipe.fakerockbreaker", - "Rock Breaker", - "smelting", - "", - 1, - 1, - 0, - 0, - 1, - E, - 1, - E, - true, - false); - - private static void generateRecipeMap() { - if (sRecipe_Cobblestone == null || sRecipe_SmoothStone == null || sRecipe_Redstone == null) { - generateRecipes(); - } - FluidStack[] aInputFluids = new FluidStack[] { FluidUtils.getWater(1000), FluidUtils.getLava(1000) }; - GT_Recipe aTemp = sRecipe_Cobblestone.copy(); - aTemp.mFluidInputs = aInputFluids; - sFakeRecipeMap.add(aTemp); - aTemp = sRecipe_SmoothStone.copy(); - aTemp.mFluidInputs = aInputFluids; - sFakeRecipeMap.add(aTemp); - aTemp = sRecipe_Redstone.copy(); - aTemp.mFluidInputs = aInputFluids; - sFakeRecipeMap.add(aTemp); - } - @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - if (sFakeRecipeMap.mRecipeList.isEmpty()) { - generateRecipeMap(); - } - return sFakeRecipeMap; + public RecipeMap getRecipeMap() { + return RecipeMaps.rockBreakerFakeRecipes; } @Override @@ -205,7 +166,7 @@ public class GregtechMetaTileEntity_IndustrialRockBreaker extends private static GT_Recipe sRecipe_Redstone; private static void generateRecipes() { - sRecipe_Cobblestone = new GTPP_Recipe( + sRecipe_Cobblestone = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(1) }, new ItemStack[] { ItemUtils.getSimpleStack(Blocks.cobblestone) }, @@ -216,7 +177,7 @@ public class GregtechMetaTileEntity_IndustrialRockBreaker extends 16, 32, 0); - sRecipe_SmoothStone = new GTPP_Recipe( + sRecipe_SmoothStone = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(2) }, new ItemStack[] { ItemUtils.getSimpleStack(Blocks.stone) }, @@ -227,7 +188,7 @@ public class GregtechMetaTileEntity_IndustrialRockBreaker extends 16, 32, 0); - sRecipe_Redstone = new GTPP_Recipe( + sRecipe_Redstone = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(3), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L) }, @@ -308,7 +269,7 @@ public class GregtechMetaTileEntity_IndustrialRockBreaker extends GT_ParallelHelper helper = new GT_ParallelHelper().setRecipe(tRecipe).setItemInputs(aItemInputs) .setFluidInputs(aFluidInputs).setAvailableEUt(tEnergy).setMaxParallel(getMaxParallelRecipes()) - .enableConsumption().enableOutputCalculation().setEUtModifier(0.75F).setMachine(this); + .setConsumption(true).setOutputCalculation(true).setEUtModifier(0.75F).setMachine(this); if (batchMode) { helper.enableBatchMode(128); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeRocketEngine.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeRocketEngine.java index 143fedb5a5..c6d8ab4ad0 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeRocketEngine.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeRocketEngine.java @@ -35,13 +35,13 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.chemistry.RocketFuels; import gtPlusPlus.core.lib.CORE; @@ -232,8 +232,8 @@ public class GregtechMetaTileEntity_LargeRocketEngine extends } @Override - public GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sRocketFuels; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.rocketFuels; } @Override @@ -283,7 +283,7 @@ public class GregtechMetaTileEntity_LargeRocketEngine extends continue; } if (this.freeFuelTicks == 0) { - for (final GT_Recipe aFuel : getRecipeMap().mRecipeList) { + for (final GT_Recipe aFuel : getRecipeMap().getAllRecipes()) { final FluidStack tLiquid; tLiquid = aFuel.mFluidInputs[0]; if (hatchFluid1.isFluidEqual(tLiquid)) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeSemifluidGenerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeSemifluidGenerator.java index 85fd1398d7..351920f2b7 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeSemifluidGenerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_LargeSemifluidGenerator.java @@ -37,9 +37,9 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffl import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -123,7 +123,7 @@ public class GregtechMetaTileEntity_LargeSemifluidGenerator extends } for (FluidStack hatchFluid : tFluids) { // Loops through hatches - GT_Recipe aFuel = GTPP_Recipe_Map.sSemiFluidLiquidFuels.findFuel(hatchFluid); + GT_Recipe aFuel = GTPPRecipeMaps.semiFluidFuels.getBackend().findFuel(hatchFluid); if (aFuel == null) { // Not a valid semi-fluid fuel. continue; diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_MassFabricator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_MassFabricator.java index 1b13eae309..181d75fbe4 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_MassFabricator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_MassFabricator.java @@ -12,6 +12,13 @@ import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.enums.GT_HatchElement.OutputHatch; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; +import java.util.Arrays; +import java.util.Collection; +import java.util.stream.Stream; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -32,17 +39,17 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; -import gregtech.api.recipe.check.FindRecipeResult; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -212,9 +219,14 @@ public class GregtechMetaTileEntity_MassFabricator * Special Recipe Handling */ @Override - public GT_Recipe_Map getRecipeMap() { - return this.mMode == MODE_SCRAP ? GT_Recipe_Map.sRecyclerRecipes - : GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes; + public RecipeMap getRecipeMap() { + return this.mMode == MODE_SCRAP ? RecipeMaps.recyclerRecipes : GTPPRecipeMaps.multiblockMassFabricatorRecipes; + } + + @Nonnull + @Override + public Collection> getAvailableRecipeMaps() { + return Arrays.asList(RecipeMaps.recyclerRecipes, GTPPRecipeMaps.multiblockMassFabricatorRecipes); } @Override @@ -239,16 +251,16 @@ public class GregtechMetaTileEntity_MassFabricator return CheckRecipeResultRegistry.SUCCESSFUL; } - @NotNull + @Nonnull @Override - protected FindRecipeResult findRecipe(GT_Recipe_Map map) { + protected Stream findRecipeMatches(@Nullable RecipeMap map) { if (mMode == MODE_SCRAP) { if (inputItems != null) { for (ItemStack item : inputItems) { if (item == null || item.stackSize == 0) continue; ItemStack aPotentialOutput = GT_ModHandler .getRecyclerOutput(GT_Utility.copyAmount(1, item), 0); - GT_Recipe recipe = new GTPP_Recipe( + GT_Recipe recipe = new GT_Recipe( false, new ItemStack[] { GT_Utility.copyAmount(1, item) }, aPotentialOutput == null ? null : new ItemStack[] { aPotentialOutput }, @@ -259,12 +271,12 @@ public class GregtechMetaTileEntity_MassFabricator 40, MaterialUtils.getVoltageForTier(1), 0); - return FindRecipeResult.ofSuccess(recipe); + return Stream.of(recipe); } } - return FindRecipeResult.NOT_FOUND; + return Stream.empty(); } - return super.findRecipe(map); + return super.findRecipeMatches(map); } }.setEuModifier(0.8F).setMaxParallelSupplier(this::getMaxParallelRecipes); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_QuantumForceTransformer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_QuantumForceTransformer.java index 9d9c634153..9e477f869d 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_QuantumForceTransformer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_QuantumForceTransformer.java @@ -62,15 +62,16 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_ExtendedPow import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.objects.ItemData; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; import gregtech.api.render.TextureFactory; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_ParallelHelper; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.material.ELEMENT; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -434,8 +435,8 @@ public class GregtechMetaTileEntity_QuantumForceTransformer } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sQuantumForceTransformerRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.quantumForceTransformerRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Refinery.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Refinery.java index af429facea..f60f835c34 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Refinery.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_Refinery.java @@ -27,9 +27,9 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; @@ -92,8 +92,8 @@ public class GregtechMetaTileEntity_Refinery extends GregtechMeta_MultiBlockBase } @Override - public GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sFissionFuelProcessing; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.fissionFuelProcessingRecipes; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java index 4bde2de336..a232910d1c 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java @@ -33,12 +33,13 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.MISC_MATERIALS; @@ -422,8 +423,9 @@ public class GregtechMetaTileEntity_SolarTower extends GregtechMeta_MultiBlockBa } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return null; + public RecipeMap getRecipeMap() { + // Only for visual + return GTPPRecipeMaps.solarTowerRecipes; } private int getHeaterTier() { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/GregtechMTE_AlgaePondBase.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/GregtechMTE_AlgaePondBase.java index a0225e7d48..2269166732 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/GregtechMTE_AlgaePondBase.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/algae/GregtechMTE_AlgaePondBase.java @@ -9,6 +9,11 @@ import static gregtech.api.enums.GT_HatchElement.InputHatch; import static gregtech.api.enums.GT_HatchElement.OutputBus; import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; +import java.util.stream.Stream; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + import net.minecraft.block.Block; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; @@ -29,12 +34,13 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; -import gregtech.api.recipe.check.FindRecipeResult; import gregtech.api.recipe.check.SimpleCheckRecipeResult; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_StreamUtil; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.block.ModBlocks; @@ -191,11 +197,6 @@ public class GregtechMTE_AlgaePondBase extends GregtechMeta_MultiBlockBase findRecipeMatches(@Nullable RecipeMap map) { + return GT_StreamUtil.ofNullable( + RecipeLoader_AlgaeFarm.getTieredRecipeFromCache(mLevel, isUsingCompost(inputItems))); } @NotNull diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/GregtechMTE_ChemicalPlant.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/GregtechMTE_ChemicalPlant.java index 670c070d81..1df1c3f047 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/GregtechMTE_ChemicalPlant.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/GregtechMTE_ChemicalPlant.java @@ -53,16 +53,17 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maint import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_ParallelHelper; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.data.Triplet; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.item.chemistry.general.ItemGenericChemBase; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; @@ -415,8 +416,8 @@ public class GregtechMTE_ChemicalPlant extends GregtechMeta_MultiBlockBase getRecipeMap() { + return GTPPRecipeMaps.chemicalPlantRecipes; } @Override @@ -675,7 +676,6 @@ public class GregtechMTE_ChemicalPlant extends GregtechMeta_MultiBlockBase aHatchContent = tHatch.getContentUsageSlots(); if (!aHatchContent.isEmpty()) { tItems.addAll(aHatchContent); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/GregTechMetaTileEntity_MegaAlloyBlastSmelter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/GregTechMetaTileEntity_MegaAlloyBlastSmelter.java index e327e2111e..736b92df03 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/GregTechMetaTileEntity_MegaAlloyBlastSmelter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/GregTechMetaTileEntity_MegaAlloyBlastSmelter.java @@ -44,14 +44,15 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_ExtendedPowerMultiBlockBase; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.render.TextureFactory; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock; @@ -383,8 +384,8 @@ public class GregTechMetaTileEntity_MegaAlloyBlastSmelter } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sAlloyBlastSmelterRecipes; + public RecipeMap getRecipeMap() { + return GTPPRecipeMaps.alloyBlastSmelterRecipes; } public HeatingCoilLevel getCoilLevel() { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Gas.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Gas.java index 6b411443c4..aafa485e65 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Gas.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Gas.java @@ -18,10 +18,12 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.SimpleCheckRecipeResult; +import gregtech.api.recipe.maps.FuelBackend; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; @SuppressWarnings("deprecation") @@ -71,13 +73,23 @@ public class GT_MTE_LargeTurbine_Gas extends GregtechMetaTileEntity_LargerTurbin if (aLiquid == null) { return 0; } - GT_Recipe tFuel = GT_Recipe_Map.sTurbineFuels.findFuel(aLiquid); + GT_Recipe tFuel = getRecipeMap().getBackend().findFuel(aLiquid); if (tFuel != null) { return tFuel.mSpecialValue; } return 0; } + @Override + public RecipeMap getRecipeMap() { + return RecipeMaps.gasTurbineFuels; + } + + @Override + public int getRecipeCatalystPriority() { + return -20; + } + @Override public @NotNull CheckRecipeResult checkProcessing() { List fluids = getStoredFluids(); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Plasma.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Plasma.java index f022e16057..b6057f8000 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Plasma.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Plasma.java @@ -15,11 +15,13 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.recipe.check.SimpleCheckRecipeResult; +import gregtech.api.recipe.maps.FuelBackend; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Turbine; @@ -67,13 +69,23 @@ public class GT_MTE_LargeTurbine_Plasma extends GregtechMetaTileEntity_LargerTur if (aLiquid == null) { return 0; } - GT_Recipe tFuel = GT_Recipe_Map.sPlasmaFuels.findFuel(aLiquid); + GT_Recipe tFuel = getRecipeMap().getBackend().findFuel(aLiquid); if (tFuel != null) { return tFuel.mSpecialValue; } return 0; } + @Override + public RecipeMap getRecipeMap() { + return RecipeMaps.plasmaFuels; + } + + @Override + public int getRecipeCatalystPriority() { + return -20; + } + @Override public @NotNull CheckRecipeResult checkProcessing() { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_AngleGrinder.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_AngleGrinder.java index 357cd74cbc..1dbe200f6f 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_AngleGrinder.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tools/TOOL_Gregtech_AngleGrinder.java @@ -123,19 +123,7 @@ public class TOOL_Gregtech_AngleGrinder extends GT_Tool { public int convertBlockDrops(final List aDrops, final ItemStack aStack, final EntityPlayer aPlayer, final Block aBlock, final int aX, final int aY, final int aZ, final byte aMetaData, final int aFortune, final boolean aSilkTouch, final BlockEvent.HarvestDropsEvent aEvent) { - int rConversions = 0; - /* - * GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new - * ItemStack[]{new ItemStack(aBlock, 1, aMetaData)}); if ((tRecipe == null) || - * (aBlock.hasTileEntity(aMetaData))) { for (final ItemStack tDrop : aDrops) { tRecipe = - * GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new - * ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})}); if (tRecipe != null) { final ItemStack - * tHammeringOutput = tRecipe.getOutput(0); if (tHammeringOutput != null) { rConversions += tDrop.stackSize; - * tDrop.stackSize *= tHammeringOutput.stackSize; tHammeringOutput.stackSize = tDrop.stackSize; - * GT_Utility.setStack(tDrop, tHammeringOutput); } } } } else { aDrops.clear(); - * aDrops.add(tRecipe.getOutput(0)); rConversions++; } - */ - return rConversions; + return 0; } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java index e85f8e4f5e..4bf9e4df41 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java @@ -11,6 +11,8 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gtPlusPlus.api.interfaces.RunnableWithInfo; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeCategories; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.ALLOY; import gtPlusPlus.core.material.Material; @@ -131,27 +133,10 @@ public class RecipeGen_BlastSmelter extends RecipeGen_Base { // Generate Recipes for all singular materials that can be made molten. if (hasMoreInputThanACircuit) { if (M.requiresBlastFurnace()) { - if (CORE.RA.addBlastSmelterRecipe( - tItemStackTest, - M.getFluidStack(fluidAmount), - 100, - (duration / (mTotalPartsCounter > 0 ? mTotalPartsCounter : 1)), - (int) aVoltage)) { - Logger.WARNING("[BAS] Success."); - Logger.WARNING("[BAS] Success, Also added a Fluid solidifier recipe."); - /* - * if (GT_Values.RA.addFluidExtractionRecipe(M.getIngot(1), null, M.getFluidStack(144), 100, - * duration, 120)){ Logger.WARNING("[BAS] Success, Also added a Fluid Extractor recipe."); } if - * (GT_Values.RA.addFluidExtractionRecipe(M.getNugget(1), null, M.getFluidStack(16), 100, - * duration/9, 120)){ Logger.WARNING("[BAS] Success, Also added a Fluid Extractor recipe."); } - */ - /* - * if (GT_Values.RA.addFluidExtractionRecipe(M.getSmallDust(1), null, M.getFluid(36), 100, - * duration/4, 120)){ Logger.WARNING("[BAS] Success, Also added a Fluid Extractor recipe."); } - * if (GT_Values.RA.addFluidExtractionRecipe(M.getTinyDust(1), null, M.getFluid(16), 100, - * duration/9, 120)){ Logger.WARNING("[BAS] Success, Also added a Fluid Extractor recipe."); } - */ - } + GT_Values.RA.stdBuilder().itemInputs(tItemStackTest).fluidOutputs(M.getFluidStack(fluidAmount)) + .duration(duration / (mTotalPartsCounter > 0 ? mTotalPartsCounter : 1)).eut(aVoltage) + .recipeCategory(GTPPRecipeCategories.absNonAlloyRecipes) + .addTo(GTPPRecipeMaps.alloyBlastSmelterRecipes); } else { Logger.WARNING("[BAS] Failed."); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelterGT_GTNH.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelterGT_GTNH.java index a48fa23765..145be4a981 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelterGT_GTNH.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelterGT_GTNH.java @@ -10,10 +10,13 @@ import net.minecraftforge.oredict.OreDictionary; import org.apache.commons.lang3.ArrayUtils; +import gregtech.api.enums.GT_Values; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Recipe; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.minecraft.ItemStackData; -import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.api.recipe.GTPPRecipeCategories; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.FluidUtils; @@ -69,194 +72,173 @@ public class RecipeGen_BlastSmelterGT_GTNH { Logger.INFO("[ABS] Starting recipe generation based on EBF recipe map."); Logger.INFO("[ABS] Caching Ingots and their Molten fluid.."); - // First, we make sure that we have a valid recipe map of Ingots/Dusts -> Fluids - if (GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.mRecipeList.size() > 0) { - // So, let's check every recipe - for (GT_Recipe x : GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.mRecipeList) { - ItemStack validInput = null; - FluidStack validOutput = null; - // If there aren't both non empty inputs and outputs, we skip - if (ArrayUtils.isEmpty(x.mInputs) || ArrayUtils.isEmpty(x.mFluidOutputs)) { - continue; - } + // Ingots/Dusts -> Fluids + for (GT_Recipe x : RecipeMaps.fluidExtractionRecipes.getAllRecipes()) { + ItemStack validInput = null; + FluidStack validOutput = null; + // If there aren't both non empty inputs and outputs, we skip + if (ArrayUtils.isEmpty(x.mInputs) || ArrayUtils.isEmpty(x.mFluidOutputs)) { + continue; + } - for (int tag : OreDictionary.getOreIDs(x.mInputs[0])) { - String oreName = OreDictionary.getOreName(tag).toLowerCase(); - String mType = "ingot"; - if (oreName.startsWith(mType) && !oreName.contains("double") - && !oreName.contains("triple") - && !oreName.contains("quad") - && !oreName.contains("quintuple")) { - validInput = x.mInputs[0]; - } + for (int tag : OreDictionary.getOreIDs(x.mInputs[0])) { + String oreName = OreDictionary.getOreName(tag).toLowerCase(); + String mType = "ingot"; + if (oreName.startsWith(mType) && !oreName.contains("double") + && !oreName.contains("triple") + && !oreName.contains("quad") + && !oreName.contains("quintuple")) { + validInput = x.mInputs[0]; } + } - validOutput = x.mFluidOutputs[0]; - - if (validInput != null) { - ItemStackData R = new ItemStackData(validInput); - setIngotToFluid(R, validOutput); - Logger.MACHINE_INFO( - "[ABS][I2F] Cached " + validInput.getDisplayName() - + " to " - + validOutput.getLocalizedName() - + ". Stored Under ID of " - + R.getUniqueDataIdentifier()); - } + validOutput = x.mFluidOutputs[0]; + + if (validInput != null) { + ItemStackData R = new ItemStackData(validInput); + setIngotToFluid(R, validOutput); + Logger.MACHINE_INFO( + "[ABS][I2F] Cached " + validInput.getDisplayName() + + " to " + + validOutput.getLocalizedName() + + ". Stored Under ID of " + + R.getUniqueDataIdentifier()); } } Logger.INFO("[ABS] Caching Ingots and their Hot form..."); - // Second, we make sure that we have a valid recipe map of Hot Ingots -> Cold Ingots - if (GT_Recipe.GT_Recipe_Map.sVacuumRecipes.mRecipeList.size() > 0) { - // So, let's check every recipe - for (GT_Recipe x : GT_Recipe.GT_Recipe_Map.sVacuumRecipes.mRecipeList) { - ItemStack validInput = null; - ItemStack validOutput = null; - // If we the input is an ingot and it and the output are valid, map it to cache. - if (ArrayUtils.isNotEmpty(x.mInputs) && x.mInputs[0] != null) { - validInput = x.mInputs[0]; - } - if (ArrayUtils.isNotEmpty(x.mOutputs) && x.mOutputs[0] != null) { - validOutput = x.mOutputs[0]; - } - if (validInput != null && validOutput != null) { - ItemStackData R1 = new ItemStackData(validInput); - ItemStackData R2 = new ItemStackData(validOutput); - setHotToCold(R1, R2); - Logger.MACHINE_INFO( - "[ABS][H2C] Cached " + validInput.getDisplayName() - + " to " - + validOutput.getDisplayName() - + ". Stored Under ID of " - + R1.getUniqueDataIdentifier() - + ", links to ID " - + R2.getUniqueDataIdentifier()); - } + // Hot Ingots -> Cold Ingots + for (GT_Recipe x : RecipeMaps.vacuumFreezerRecipes.getAllRecipes()) { + ItemStack validInput = null; + ItemStack validOutput = null; + // If we the input is an ingot and it and the output are valid, map it to cache. + if (ArrayUtils.isNotEmpty(x.mInputs) && x.mInputs[0] != null) { + validInput = x.mInputs[0]; + } + if (ArrayUtils.isNotEmpty(x.mOutputs) && x.mOutputs[0] != null) { + validOutput = x.mOutputs[0]; + } + if (validInput != null && validOutput != null) { + ItemStackData R1 = new ItemStackData(validInput); + ItemStackData R2 = new ItemStackData(validOutput); + setHotToCold(R1, R2); + Logger.MACHINE_INFO( + "[ABS][H2C] Cached " + validInput.getDisplayName() + + " to " + + validOutput.getDisplayName() + + ". Stored Under ID of " + + R1.getUniqueDataIdentifier() + + ", links to ID " + + R2.getUniqueDataIdentifier()); } } Logger.INFO("[ABS] Generating recipes based on existing EBF recipes."); // Okay, so now lets Iterate existing EBF recipes. - if (GT_Recipe.GT_Recipe_Map.sBlastRecipes.mRecipeList.size() > 0) { - for (GT_Recipe x : GT_Recipe.GT_Recipe_Map.sBlastRecipes.mRecipeList) { - if (x == null) { - continue; + for (GT_Recipe x : RecipeMaps.blastFurnaceRecipes.getAllRecipes()) { + ItemStack[] inputs, outputs; + FluidStack[] inputsF; + int voltage, time, special; + boolean enabled; + inputs = x.mInputs.clone(); + outputs = x.mOutputs.clone(); + inputsF = x.mFluidInputs.clone(); + voltage = x.mEUt; + time = x.mDuration; + enabled = x.mEnabled; + special = x.mSpecialValue; + + // continue to next recipe if the Temp is too high. + if (special > 3600) { + Logger.MACHINE_INFO("[ABS] Skipping ABS addition for GTNH due to temp."); + continue; + } else { + FluidStack mMoltenStack = null; + int mMoltenCount = 0; + // If We have a valid Output, let's try use our cached data to get it's molten form. + if (x.mOutputs != null && x.mOutputs[0] != null) { + mMoltenCount = x.mOutputs[0].stackSize; + ItemStackData R = new ItemStackData(x.mOutputs[0]); + Logger.MACHINE_INFO( + "[ABS] Found " + x.mOutputs[0].getDisplayName() + + " as valid EBF output, finding it's fluid from the cache. We will require " + + (144 * mMoltenCount) + + "L. Looking for ID " + + R.getUniqueDataIdentifier()); + FluidStack tempFluid = getFluidFromIngot(R); + if (tempFluid != null) { + // Logger.MACHINE_INFO("[ABS] Got Fluid from Cache."); + mMoltenStack = FluidUtils.getFluidStack(tempFluid, mMoltenCount * 144); + } else { + Logger.MACHINE_INFO("[ABS] Failed to get Fluid from Cache."); + } } - ItemStack[] inputs, outputs; - FluidStack[] inputsF; - int voltage, time, special; - boolean enabled; - inputs = x.mInputs.clone(); - outputs = x.mOutputs.clone(); - inputsF = x.mFluidInputs.clone(); - voltage = x.mEUt; - time = x.mDuration; - enabled = x.mEnabled; - special = x.mSpecialValue; - - // continue to next recipe if the Temp is too high. - if (special > 3600) { - Logger.MACHINE_INFO("[ABS] Skipping ABS addition for GTNH due to temp."); - continue; - } else { - FluidStack mMoltenStack = null; - int mMoltenCount = 0; - // If We have a valid Output, let's try use our cached data to get it's molten form. - if (x.mOutputs != null && x.mOutputs[0] != null) { - mMoltenCount = x.mOutputs[0].stackSize; - ItemStackData R = new ItemStackData(x.mOutputs[0]); - Logger.MACHINE_INFO( - "[ABS] Found " + x.mOutputs[0].getDisplayName() - + " as valid EBF output, finding it's fluid from the cache. We will require " - + (144 * mMoltenCount) - + "L. Looking for ID " - + R.getUniqueDataIdentifier()); - FluidStack tempFluid = getFluidFromIngot(R); - if (tempFluid != null) { - // Logger.MACHINE_INFO("[ABS] Got Fluid from Cache."); - mMoltenStack = FluidUtils.getFluidStack(tempFluid, mMoltenCount * 144); - } else { - Logger.MACHINE_INFO("[ABS] Failed to get Fluid from Cache."); + // If this recipe is enabled and we have a valid molten fluidstack, let's try add this recipe. + if (enabled && isValid(inputs, outputs, inputsF, mMoltenStack)) { + // Boolean to decide whether or not to create a new circuit later + boolean circuitFound = false; + + // Build correct input stack + ArrayList aTempList = new ArrayList<>(); + for (ItemStack recipeItem : inputs) { + if (ItemUtils.isControlCircuit(recipeItem)) { + circuitFound = true; } + aTempList.add(recipeItem); } - // If this recipe is enabled and we have a valid molten fluidstack, let's try add this recipe. - if (enabled && isValid(inputs, outputs, inputsF, mMoltenStack)) { - // Boolean to decide whether or not to create a new circuit later - boolean circuitFound = false; - // Build correct input stack - ArrayList aTempList = new ArrayList<>(); - for (ItemStack recipeItem : inputs) { - if (ItemUtils.isControlCircuit(recipeItem)) { - circuitFound = true; - } - aTempList.add(recipeItem); - } + inputs = aTempList.toArray(new ItemStack[aTempList.size()]); + int inputLength = inputs.length; + // If no circuit was found, increase array length by 1 to add circuit at newInput[0] + if (!circuitFound) { + inputLength++; + } - inputs = aTempList.toArray(new ItemStack[aTempList.size()]); - int inputLength = inputs.length; - // If no circuit was found, increase array length by 1 to add circuit at newInput[0] - if (!circuitFound) { - inputLength++; - } + ItemStack[] newInput = new ItemStack[inputLength]; - ItemStack[] newInput = new ItemStack[inputLength]; + int l = 0; + // If no circuit was found, add a circuit here + if (!circuitFound) { + l = 1; + newInput[0] = CI.getNumberedCircuit(inputs.length); + } - int l = 0; - // If no circuit was found, add a circuit here - if (!circuitFound) { - l = 1; - newInput[0] = CI.getNumberedCircuit(inputs.length); - } + for (ItemStack y : inputs) { + newInput[l++] = y; + } - for (ItemStack y : inputs) { - newInput[l++] = y; + GT_Values.RA.stdBuilder().itemInputs(newInput).fluidInputs(inputsF).fluidOutputs(mMoltenStack) + .duration(MathUtils.roundToClosestInt(time * 0.8)).eut(voltage) + .recipeCategory( + inputLength <= 2 ? GTPPRecipeCategories.absNonAlloyRecipes + : GTPPRecipeMaps.alloyBlastSmelterRecipes.getDefaultRecipeCategory()) + .addTo(GTPPRecipeMaps.alloyBlastSmelterRecipes); + } else { + if (!enabled) { + Logger.MACHINE_INFO("[ABS] Failure. EBF recipe was not enabled."); + } else { + Logger.MACHINE_INFO("[ABS] Failure. Invalid Inputs or Outputs."); + if (inputs == null) { + Logger.MACHINE_INFO("[ABS] Inputs were not Valid."); + } else { + Logger.MACHINE_INFO("[ABS] inputs size: " + inputs.length); } - - // Logger.MACHINE_INFO("[ABS] Generating ABS recipe for "+mMoltenStack.getLocalizedName()+"."); - if (CORE.RA.addBlastSmelterRecipe( - newInput, - (inputsF.length > 0 ? inputsF[0] : null), - mMoltenStack, - 100, - MathUtils.roundToClosestInt(time * 0.8), - voltage, - special)) { - // Logger.MACHINE_INFO("[ABS] Success."); - mSuccess++; + if (outputs == null) { + Logger.MACHINE_INFO("[ABS] Outputs were not Valid."); } else { - Logger.MACHINE_INFO("[ABS] Failure."); + Logger.MACHINE_INFO("[ABS] outputs size: " + outputs.length); } - } else { - if (!enabled) { - Logger.MACHINE_INFO("[ABS] Failure. EBF recipe was not enabled."); + if (inputsF == null) { + Logger.MACHINE_INFO("[ABS] Input Fluids were not Valid."); } else { - Logger.MACHINE_INFO("[ABS] Failure. Invalid Inputs or Outputs."); - if (inputs == null) { - Logger.MACHINE_INFO("[ABS] Inputs were not Valid."); - } else { - Logger.MACHINE_INFO("[ABS] inputs size: " + inputs.length); - } - if (outputs == null) { - Logger.MACHINE_INFO("[ABS] Outputs were not Valid."); - } else { - Logger.MACHINE_INFO("[ABS] outputs size: " + outputs.length); - } - if (inputsF == null) { - Logger.MACHINE_INFO("[ABS] Input Fluids were not Valid."); - } else { - Logger.MACHINE_INFO("[ABS] inputsF size: " + inputsF.length); - } - if (mMoltenStack == null) { - Logger.MACHINE_INFO("[ABS] Output Fluid were not Valid."); - } + Logger.MACHINE_INFO("[ABS] inputsF size: " + inputsF.length); + } + if (mMoltenStack == null) { + Logger.MACHINE_INFO("[ABS] Output Fluid were not Valid."); } } } } - } else { - Logger.MACHINE_INFO("[ABS] Failure. Did not find any EBF recipes to iterate."); } Logger.INFO("[ABS] Processed " + mSuccess + " recipes."); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_FluidCanning.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_FluidCanning.java index 0510037f5d..5447f71848 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_FluidCanning.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_FluidCanning.java @@ -6,9 +6,9 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.GT_Values; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gtPlusPlus.api.interfaces.RunnableWithInfo; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.lib.CORE; @@ -110,7 +110,7 @@ public class RecipeGen_FluidCanning implements Runnable { // Check validity - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( true, new ItemStack[] { aInput }, new ItemStack[] { aOutput }, @@ -185,10 +185,10 @@ public class RecipeGen_FluidCanning implements Runnable { + aRecipe.mDuration + ", Voltage: " + aRecipe.mEUt); - int aCount1 = GT_Recipe_Map.sFluidExtractionRecipes.mRecipeList.size(); + int aCount1 = getMapSize(RecipeMaps.fluidExtractionRecipes); int aCount2 = aCount1; - GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(aRecipe); - aCount1 = GT_Recipe_Map.sFluidExtractionRecipes.mRecipeList.size(); + RecipeMaps.fluidExtractionRecipes.addRecipe(aRecipe); + aCount1 = getMapSize(RecipeMaps.fluidExtractionRecipes); result = aCount1 > aCount2; if (result) { // Logger.INFO("[FIND] Added Extraction recipe for "+ItemUtils.getArrayStackNames(aRecipe.mInputs)+", @@ -211,10 +211,10 @@ public class RecipeGen_FluidCanning implements Runnable { private boolean addFluidCannerRecipe(GT_Recipe aRecipe) { boolean result = false; - int aCount1 = GT_Recipe_Map.sFluidCannerRecipes.mRecipeList.size(); + int aCount1 = getMapSize(RecipeMaps.fluidCannerRecipes); int aCount2 = aCount1; - GT_Recipe_Map.sFluidCannerRecipes.addRecipe(aRecipe); - aCount1 = GT_Recipe_Map.sFluidCannerRecipes.mRecipeList.size(); + RecipeMaps.fluidCannerRecipes.addRecipe(aRecipe); + aCount1 = getMapSize(RecipeMaps.fluidCannerRecipes); result = aCount1 > aCount2; if (result) { // Logger.INFO("[FIND] Added Canning recipe for "+ItemUtils.getArrayStackNames(aRecipe.mInputs)+", @@ -245,17 +245,7 @@ public class RecipeGen_FluidCanning implements Runnable { } } - private String buildLogString() { - int solidSize = getMapSize(GT_Recipe_Map.sCannerRecipes); - int fluidSize = getMapSize(GT_Recipe_Map.sFluidCannerRecipes); - return (disableOptional ? "EXTRACTING" : "CANNING") + " DEBUG | Solids: " - + solidSize - + " | Liquids: " - + fluidSize - + " | "; - } - - private int getMapSize(GT_Recipe_Map aMap) { - return aMap.mRecipeList.size(); + private int getMapSize(RecipeMap aMap) { + return aMap.getAllRecipes().size(); } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java index a812e82275..6915e193e3 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_MultisUsingFluidInsteadOfCells.java @@ -7,9 +7,8 @@ import java.util.List; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; -import gregtech.api.util.GTPP_Recipe; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; @@ -62,14 +61,14 @@ public class RecipeGen_MultisUsingFluidInsteadOfCells { return GT_Utility.getFluidForFilledItem(ingot, true); } - public static synchronized int generateRecipesNotUsingCells(GT_Recipe_Map aInputs, GT_Recipe_Map aOutputs) { + public static synchronized int generateRecipesNotUsingCells(RecipeMap aInputs, RecipeMap aOutputs) { init(); int aRecipesHandled = 0; int aInvalidRecipesToConvert = 0; - int aOriginalCount = aInputs.mRecipeList.size(); + int aOriginalCount = aInputs.getAllRecipes().size(); ArrayList deDuplicationInputArray = new ArrayList<>(); - recipe: for (GT_Recipe x : aInputs.mRecipeList) { + recipe: for (GT_Recipe x : aInputs.getAllRecipes()) { if (x != null) { ItemStack[] aInputItems = x.mInputs.clone(); @@ -145,7 +144,7 @@ public class RecipeGen_MultisUsingFluidInsteadOfCells { aInvalidRecipesToConvert++; continue; // Skip this recipe entirely if we find an item we don't like } - GT_Recipe aNewRecipe = new GTPP_Recipe( + GT_Recipe aNewRecipe = new GT_Recipe( false, aNewItemInputs, aNewItemOutputs, @@ -168,12 +167,12 @@ public class RecipeGen_MultisUsingFluidInsteadOfCells { } // cast arraylist of input to a regular array and pass it to a duplicate recipe remover. List deDuplicationOutputArray = GT_RecipeUtils - .removeDuplicates(deDuplicationInputArray, aOutputs.mNEIName); + .removeDuplicates(deDuplicationInputArray, aOutputs.unlocalizedName); // add each recipe from the above output to the intended recipe map for (GT_Recipe recipe : deDuplicationOutputArray) { aOutputs.add(recipe); } - Logger.INFO("Generated Recipes for " + aOutputs.mNEIName); + Logger.INFO("Generated Recipes for " + aOutputs.unlocalizedName); Logger.INFO("Original Map contains " + aOriginalCount + " recipes."); Logger.INFO("Output Map contains " + aRecipesHandled + " recipes."); Logger.INFO("There were " + aInvalidRecipesToConvert + " invalid recipes."); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Plates.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Plates.java index 75d7abbba0..4c4856a89b 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Plates.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Plates.java @@ -9,7 +9,7 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GT_Recipe; +import gregtech.api.recipe.RecipeMaps; import gtPlusPlus.api.interfaces.RunnableWithInfo; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.material.Material; @@ -195,7 +195,7 @@ public class RecipeGen_Plates extends RecipeGen_Base { if ((aDuration = GregTech_API.sRecipeFile.get("extruder", aOutput, aDuration)) <= 0) { return false; } - GT_Recipe.GT_Recipe_Map.sExtruderRecipes.addRecipe( + RecipeMaps.extruderRecipes.addRecipe( true, new ItemStack[] { aInput, aShape }, new ItemStack[] { aOutput }, @@ -216,7 +216,7 @@ public class RecipeGen_Plates extends RecipeGen_Base { if (!GregTech_API.sRecipeFile.get("forgehammer", aOutput1, true)) { return false; } - GT_Recipe.GT_Recipe_Map.sHammerRecipes.addRecipe( + RecipeMaps.hammerRecipes.addRecipe( true, new ItemStack[] { aInput1 }, new ItemStack[] { aOutput1 }, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/misc/AddCustomMachineToPA.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/misc/AddCustomMachineToPA.java index c89648e25f..aab24db6d3 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/misc/AddCustomMachineToPA.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/misc/AddCustomMachineToPA.java @@ -1,14 +1,13 @@ package gtPlusPlus.xmod.gregtech.loaders.misc; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_ProcessingArray_Manager; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; public class AddCustomMachineToPA { public static void register() { // Simple Washers - GT_ProcessingArray_Manager - .addRecipeMapToPA("simplewasher.01", GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes); + GT_ProcessingArray_Manager.addRecipeMapToPA("simplewasher.01", GTPPRecipeMaps.simpleWasherRecipes); } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_AlgaeFarm.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_AlgaeFarm.java index 980bf983ca..035bd68678 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_AlgaeFarm.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_AlgaeFarm.java @@ -6,7 +6,6 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.GT_Values; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Recipe; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; @@ -92,7 +91,7 @@ public class RecipeLoader_AlgaeFarm { // We set these elsewhere ItemStack[] aOutputs = getOutputsForTier(aTier); - GT_Recipe tRecipe = new GTPP_Recipe( + GT_Recipe tRecipe = new GT_Recipe( false, aInputs, aOutputs, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_ChemicalSkips.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_ChemicalSkips.java index 25cf916997..018eaec2dd 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_ChemicalSkips.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_ChemicalSkips.java @@ -5,8 +5,8 @@ import static gregtech.api.enums.Mods.EternalSingularity; import static gregtech.api.enums.Mods.GalaxySpace; import static gregtech.api.enums.Mods.GoodGenerator; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; import static gregtech.api.util.GT_ModHandler.getModItem; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -497,7 +497,7 @@ public class RecipeLoader_ChemicalSkips { MaterialsUEVplus.TranscendentMetal.getNanite(1)) .itemOutputs(ItemUtils.getSimpleStack(GenericChem.mAlgagenicGrowthPromoterCatalyst, 1)) .fluidInputs(FluidUtils.getFluidStack("molten.shirabon", 92_160)).duration(60 * SECONDS) - .eut(TierEU.RECIPE_UMV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_UMV).addTo(assemblerRecipes); } private static void tieredCasingRecipes() { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java index 27f289a7c5..0ccfa36e04 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_LFTR.java @@ -5,9 +5,9 @@ import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.Materials; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GasSpargingRecipeMap; import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.material.ELEMENT; import gtPlusPlus.core.material.nuclear.FLUORIDES; import gtPlusPlus.core.material.nuclear.NUCLIDE; @@ -56,7 +56,7 @@ public class RecipeLoader_LFTR { FluidStack Li2BeF4 = NUCLIDE.Li2BeF4.getFluidStack(200); // LiFBeF2ThF4UF4 - T3 - GTPP_Recipe.GTPP_Recipe_Map.sLiquidFluorineThoriumReactorRecipes.addRecipe( + GTPPRecipeMaps.liquidFluorineThoriumReactorRecipes.addRecipe( false, new ItemStack[] {}, new ItemStack[] {}, @@ -72,7 +72,7 @@ public class RecipeLoader_LFTR { ); // LiFBeF2ZrF4UF4 - T2 - GTPP_Recipe.GTPP_Recipe_Map.sLiquidFluorineThoriumReactorRecipes.addRecipe( + GTPPRecipeMaps.liquidFluorineThoriumReactorRecipes.addRecipe( false, new ItemStack[] {}, new ItemStack[] {}, @@ -88,7 +88,7 @@ public class RecipeLoader_LFTR { ); // LiFBeF2ZrF4U235 - T1 - GTPP_Recipe.GTPP_Recipe_Map.sLiquidFluorineThoriumReactorRecipes.addRecipe( + GTPPRecipeMaps.liquidFluorineThoriumReactorRecipes.addRecipe( false, new ItemStack[] {}, new ItemStack[] {}, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java index 1ed259a3e5..99aaf09391 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_Nuclear.java @@ -1,7 +1,7 @@ package gtPlusPlus.xmod.gregtech.loaders.recipe; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFusionRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.fusionRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -108,7 +108,7 @@ public class RecipeLoader_Nuclear { GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plutonium, 1L)) .outputChances(10000, 10000, 1000, 1000, 1000, 500) .fluidOutputs(FluidUtils.getFluidStack("krypton", 60)).duration(4 * MINUTES + 10 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_IV).addTo(centrifugeRecipes); // Mox GT_Values.RA.stdBuilder() .itemInputs( @@ -122,7 +122,7 @@ public class RecipeLoader_Nuclear { ELEMENT.getInstance().PLUTONIUM238.getTinyDust(1), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plutonium, 1L)) .outputChances(10000, 10000, 500, 500, 500, 500).fluidOutputs(FluidUtils.getFluidStack("krypton", 90)) - .duration(6 * MINUTES + 15 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sCentrifugeRecipes); + .duration(6 * MINUTES + 15 * SECONDS).eut(TierEU.RECIPE_IV).addTo(centrifugeRecipes); // Thorium GT_Values.RA.stdBuilder().itemInputs(ItemList.Depleted_Thorium_1.get(8), GT_Utility.getIntegratedCircuit(20)) .itemOutputs( @@ -134,7 +134,7 @@ public class RecipeLoader_Nuclear { ELEMENT.getInstance().THALLIUM.getTinyDust(1)) .outputChances(10000, 10000, 5000, 5000, 5000, 2500) .fluidOutputs(FluidUtils.getFluidStack("krypton", 30)).duration(2 * MINUTES + 5 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_IV).addTo(centrifugeRecipes); } private static void chemicalBathRecipes() { @@ -484,7 +484,7 @@ public class RecipeLoader_Nuclear { GT_Values.RA.stdBuilder().fluidInputs(Materials.Boron.getPlasma(144), Materials.Calcium.getPlasma(16)) .fluidOutputs(new FluidStack(ELEMENT.getInstance().NEON.getPlasma(), 1000)) .duration(3 * SECONDS + 4 * TICKS).eut(TierEU.RECIPE_LuV).metadata(FUSION_THRESHOLD, 100000000) - .addTo(sFusionRecipes); + .addTo(fusionRecipes); GT_Values.RA.stdBuilder() .fluidInputs( @@ -492,46 +492,46 @@ public class RecipeLoader_Nuclear { Materials.Bedrockium.getMolten(144)) .fluidOutputs(new FluidStack(ELEMENT.STANDALONE.FORCE.getPlasma(), 1000)) .duration(3 * SECONDS + 4 * TICKS).eut(TierEU.RECIPE_LuV).metadata(FUSION_THRESHOLD, 100000000) - .addTo(sFusionRecipes); + .addTo(fusionRecipes); // Mk2 GT_Values.RA.stdBuilder().fluidInputs(Materials.Niobium.getPlasma(144), Materials.Zinc.getPlasma(144)) .fluidOutputs(new FluidStack(ELEMENT.getInstance().KRYPTON.getPlasma(), 144)).duration(32 * TICKS) - .eut(TierEU.RECIPE_ZPM).metadata(FUSION_THRESHOLD, 300000000).addTo(sFusionRecipes); + .eut(TierEU.RECIPE_ZPM).metadata(FUSION_THRESHOLD, 300000000).addTo(fusionRecipes); GT_Values.RA.stdBuilder() .fluidInputs( new FluidStack(ELEMENT.getInstance().KRYPTON.getPlasma(), 144), new FluidStack(ELEMENT.STANDALONE.FORCE.getPlasma(), 1000)) .fluidOutputs(new FluidStack(ELEMENT.STANDALONE.ASTRAL_TITANIUM.getPlasma(), 1000)).duration(32 * TICKS) - .eut(TierEU.RECIPE_ZPM).metadata(FUSION_THRESHOLD, 300000000).addTo(sFusionRecipes); + .eut(TierEU.RECIPE_ZPM).metadata(FUSION_THRESHOLD, 300000000).addTo(fusionRecipes); GT_Values.RA.stdBuilder() .fluidInputs( new FluidStack(ELEMENT.STANDALONE.ASTRAL_TITANIUM.getPlasma(), 144), new FluidStack(ALLOY.TITANSTEEL.getFluid(), 8)) .fluidOutputs(new FluidStack(ELEMENT.STANDALONE.RUNITE.getPlasma(), 1000)).duration(32 * TICKS) - .eut(TierEU.RECIPE_ZPM).metadata(FUSION_THRESHOLD, 300000000).addTo(sFusionRecipes); + .eut(TierEU.RECIPE_ZPM).metadata(FUSION_THRESHOLD, 300000000).addTo(fusionRecipes); // Mk3 GT_Values.RA.stdBuilder() .fluidInputs(ELEMENT.getInstance().CURIUM.getFluidStack(144), Materials.Americium.getPlasma(144)) .fluidOutputs(new FluidStack(ELEMENT.getInstance().XENON.getPlasma(), 144)).duration(16 * TICKS) - .eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 500000000).addTo(sFusionRecipes); + .eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 500000000).addTo(fusionRecipes); GT_Values.RA.stdBuilder() .fluidInputs( new FluidStack(ELEMENT.getInstance().XENON.getPlasma(), 144), new FluidStack(ELEMENT.STANDALONE.RUNITE.getPlasma(), 1000)) .fluidOutputs(new FluidStack(ELEMENT.STANDALONE.ADVANCED_NITINOL.getPlasma(), 1000)) - .duration(16 * TICKS).eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 500000000).addTo(sFusionRecipes); + .duration(16 * TICKS).eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 500000000).addTo(fusionRecipes); GT_Values.RA.stdBuilder() .fluidInputs( new FluidStack(ELEMENT.STANDALONE.ADVANCED_NITINOL.getPlasma(), 144), Materials.Tartarite.getMolten(2)) .fluidOutputs(new FluidStack(ELEMENT.STANDALONE.CELESTIAL_TUNGSTEN.getPlasma(), 1000)) - .duration(16 * TICKS).eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 500000000).addTo(sFusionRecipes); + .duration(16 * TICKS).eut(TierEU.RECIPE_UV).metadata(FUSION_THRESHOLD, 500000000).addTo(fusionRecipes); } private static void macerator() { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java index a0f029392d..b990f0ee54 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/loaders/recipe/RecipeLoader_NuclearFuelProcessing.java @@ -1,7 +1,7 @@ package gtPlusPlus.xmod.gregtech.loaders.recipe; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sDistillationRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.distillationTowerRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; @@ -196,7 +196,7 @@ public class RecipeLoader_NuclearFuelProcessing { // Reactor Core step 2B - Distillation GT_Values.RA.stdBuilder().fluidInputs(FluidUtils.getFluidStack(NuclearChem.Impure_LiFBeF2, 1000)) .fluidOutputs(NUCLIDE.LiFBeF2.getFluidStack(250)).duration(7 * MINUTES + 30 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sDistillationRecipes); + .eut(TierEU.RECIPE_IV).addTo(distillationTowerRecipes); // UF6 -> UF4 reduction // UF6 + LiFBeF2 + H2 -> LiFBeF2UF4 + HF @@ -204,7 +204,7 @@ public class RecipeLoader_NuclearFuelProcessing { .fluidInputs(Materials.Hydrogen.getGas(2000L)) .itemOutputs(ItemUtils.getItemStackOfAmountFromOreDict("cellHydrofluoricAcid", 2)) .fluidOutputs(NUCLIDE.LiFBeF2UF4.getFluidStack(3000)).duration(2 * MINUTES + 30 * SECONDS) - .eut(TierEU.RECIPE_IV).metadata(COIL_HEAT, 5400).addTo(sBlastRecipes); + .eut(TierEU.RECIPE_IV).metadata(COIL_HEAT, 5400).addTo(blastFurnaceRecipes); // Alternative recipe to the above, for chemplant, to not use cells CORE.RA.addChemicalPlantRecipe( diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/main/java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java index dcb2624c18..4fafaf25e3 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java @@ -9,16 +9,15 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.ConfigCategories; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; -import gregtech.api.util.GTPP_Recipe; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.api.util.SemiFluidFuelHandler; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.Material; import gtPlusPlus.core.material.MaterialGenerator; @@ -48,7 +47,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( true, new ItemStack[] { aInput1, aInput2 }, new ItemStack[] { aOutput }, @@ -59,7 +58,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, Math.max(1, aEUt), 0); - GTPP_Recipe.GTPP_Recipe_Map.sCokeOvenRecipes.add(aSpecialRecipe); + GTPPRecipeMaps.cokeOvenRecipes.add(aSpecialRecipe); return true; } @@ -79,7 +78,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { @Override public boolean addCokeOvenRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUt) { - GTPP_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( true, new ItemStack[] { aInput1, aInput2 }, aOutputs, @@ -90,7 +89,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { Math.max(1, aDuration), Math.max(1, aEUt), 0); - GTPP_Recipe.GTPP_Recipe_Map.sCokeOvenRecipes.add(aSpecialRecipe); + GTPPRecipeMaps.cokeOvenRecipes.add(aSpecialRecipe); return true; } @@ -101,7 +100,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { Logger.WARNING("Something was null, returning false"); return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] {}, new ItemStack[] {}, @@ -112,7 +111,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUt, 0); - GTPP_Recipe_Map.sMatterFab2Recipes.addRecipe(aRecipe); + GTPPRecipeMaps.multiblockMassFabricatorRecipes.addRecipe(aRecipe); return true; } @@ -125,7 +124,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( true, aInput, aOutputItems, @@ -136,7 +135,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { Math.max(1, aDuration), Math.max(1, aEUt), 0); - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes.add(aSpecialRecipe); + GTPPRecipeMaps.chemicalDehydratorRecipes.add(aSpecialRecipe); return true; } @@ -293,7 +292,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe.GTPP_Recipe_Map.sAlloyBlastSmelterRecipes.addRecipe( + GTPPRecipeMaps.alloyBlastSmelterRecipes.addRecipe( aOptimizeRecipe, aInput, aOutputStack, @@ -323,7 +322,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aFluidOutput = new FluidStack[0]; } - GTPP_Recipe.GTPP_Recipe_Map.sQuantumForceTransformerRecipes.add( + GTPPRecipeMaps.quantumForceTransformerRecipes.add( new GT_Recipe( false, aInput, @@ -371,7 +370,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { final FluidStack[] inputs = { aInput1, aInput2, aInput3, aInput4, aInput5, aInput6, aInput7, aInput8, aInput9 }; final FluidStack[] outputs = { aOutput1, aOutput2 }; - GTPP_Recipe.GTPP_Recipe_Map.sFissionFuelProcessing.addRecipe( + GTPPRecipeMaps.fissionFuelProcessingRecipes.addRecipe( aOptimise, new ItemStack[] {}, new ItemStack[] {}, @@ -407,7 +406,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( true, aInputs, aOutput, @@ -418,7 +417,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { Math.max(1, aDuration), Math.max(1, aEUt), aSpecialValue); - GTPP_Recipe.GTPP_Recipe_Map.sCyclotronRecipes.add(aSpecialRecipe); + GTPPRecipeMaps.cyclotronRecipes.add(aSpecialRecipe); return true; } @@ -430,7 +429,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( true, new ItemStack[] { aInput1, aInput2, aInput3, aInput4 }, new ItemStack[] { aOutput1, aOutput2, aOutput3, aOutput4 }, @@ -441,7 +440,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { Math.max(1, aDuration), Math.max(1, aEUt), 0); - GT_Recipe_Map.sMixerRecipes.add(aSpecialRecipe); + RecipeMaps.mixerRecipes.add(aSpecialRecipe); return true; } @@ -463,7 +462,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -474,7 +473,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUtick, aSpecial); - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockCentrifugeRecipes_GT.addRecipe(aRecipe); + GTPPRecipeMaps.centrifugeNonCellRecipes.addRecipe(aRecipe); return true; } @@ -495,7 +494,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -506,7 +505,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUtick, aSpecial); - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockElectrolyzerRecipes_GT.addRecipe(aRecipe); + GTPPRecipeMaps.electrolyzerNonCellRecipes.addRecipe(aRecipe); return true; } @@ -527,7 +526,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -538,7 +537,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUtick, aSpecial); - GTPP_Recipe.GTPP_Recipe_Map.sAdvFreezerRecipes_GT.addRecipe(aRecipe); + GTPPRecipeMaps.advancedFreezerRecipes.addRecipe(aRecipe); return false; } @@ -557,7 +556,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -568,7 +567,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUtick, aSpecial); - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockMixerRecipes_GT.addRecipe(aRecipe); + GTPPRecipeMaps.mixerNonCellRecipes.addRecipe(aRecipe); return true; } @@ -588,7 +587,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -599,7 +598,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUtick, aSpecial); - GTPP_Recipe.GTPP_Recipe_Map.sMultiblockChemicalDehydratorRecipes.addRecipe(aRecipe); + GTPPRecipeMaps.chemicalDehydratorNonCellRecipes.addRecipe(aRecipe); return true; } @@ -645,7 +644,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { if (aCircuit < 0 || aCircuit > 24) { aCircuit = 22; } - GT_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( false, new ItemStack[] { input1, input2 }, new ItemStack[] { output, output2 }, @@ -656,7 +655,8 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { time, eu, 0); - return GT_Recipe.GT_Recipe_Map.sChemicalRecipes.mRecipeList.add(aSpecialRecipe); + RecipeMaps.chemicalReactorRecipes.add(aSpecialRecipe); + return true; } @Override @@ -695,7 +695,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { if ((aDuration = GregTech_API.sRecipeFile.get("compressor", aInput1, aDuration)) <= 0) { return false; } - GT_Recipe.GT_Recipe_Map.sCompressorRecipes.addRecipe( + RecipeMaps.compressorRecipes.addRecipe( true, new ItemStack[] { aInput1 }, new ItemStack[] { aOutput1 }, @@ -723,7 +723,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { if (!GregTech_API.sRecipeFile.get("brewing", aOutput.getUnlocalizedName(), true)) { return false; } - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sBrewingRecipes.addRecipe( + GT_Recipe tRecipe = RecipeMaps.brewingRecipes.addRecipe( false, new ItemStack[] { aIngredient }, null, @@ -813,7 +813,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { public boolean addVacuumFurnaceRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, ItemStack[] aOutputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aLevel) { if (aInputs != null && aOutputs != null) { - GTPP_Recipe.GTPP_Recipe_Map.sVacuumFurnaceRecipes.addRecipe( + GTPPRecipeMaps.vacuumFurnaceRecipes.addRecipe( false, aInputs, aOutputs, @@ -833,7 +833,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { @Override public boolean addUvLaserRecipe(ItemStack aInput1, ItemStack aOutput, int time, long eu) { // Generate Special Laser Recipe - GT_Recipe u = new GTPP_Recipe( + GT_Recipe u = new GT_Recipe( false, new ItemStack[] { aInput1, GregtechItemList.Laser_Lens_WoodsGlass.get(0), }, new ItemStack[] { aOutput }, @@ -844,7 +844,8 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { time, (int) eu, 0); - return GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes.mRecipeList.add(u); + RecipeMaps.laserEngraverRecipes.add(u); + return true; } @Override @@ -864,7 +865,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { CORE.crash(); } - GTPP_Recipe.GTPP_Recipe_Map.sChemicalPlantRecipes.addRecipe( + GTPPRecipeMaps.chemicalPlantRecipes.addRecipe( false, aInputs, aOutputs, @@ -881,7 +882,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { @Override public boolean addBlastRecipe(ItemStack[] aInputs, FluidStack[] aInputFluids, ItemStack[] aOutputs, FluidStack[] aFluidOutputs, int time, long eu, int aHeat) { - GTPP_Recipe aSpecialRecipe = new GTPP_Recipe( + GT_Recipe aSpecialRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -893,7 +894,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { (int) eu, aHeat); - GT_Recipe.GT_Recipe_Map.sBlastRecipes.add(aSpecialRecipe); + RecipeMaps.blastFurnaceRecipes.add(aSpecialRecipe); return true; } @@ -911,7 +912,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { .get("distillery", aOutput.getFluid().getUnlocalizedName(), aDuration)) <= 0) { return false; } else { - GT_Recipe tRecipe = GT_Recipe_Map.sDistilleryRecipes.addRecipe( + GT_Recipe tRecipe = RecipeMaps.distilleryRecipes.addRecipe( true, new ItemStack[] { aCircuit }, new ItemStack[] { aSolidOutput }, @@ -939,7 +940,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { @Override public boolean addExtractorRecipe(ItemStack aInput, ItemStack aOutput, int aChance, int aDuration, int aEUt) { if (aInput != null && aOutput != null) { - GT_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { aInput.copy() }, new ItemStack[] { aOutput.copy() }, @@ -950,7 +951,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUt, 0); - GT_Recipe_Map.sExtractorRecipes.add(aRecipe); + RecipeMaps.extractorRecipes.add(aRecipe); return true; } else { return false; @@ -1026,7 +1027,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { int[] aTime = new int[] { 2400, 3000, 1200, 1500 }; for (int i = 0; i < 4; i++) { - GTPP_Recipe aOreRecipe = new GTPP_Recipe( + GT_Recipe aOreRecipe = new GT_Recipe( false, aInputArray[i], aOutputArray[i], @@ -1037,7 +1038,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aTime[i], aEU, 0); - GTPP_Recipe.GTPP_Recipe_Map.sOreMillRecipes.add(aOreRecipe); + GTPPRecipeMaps.millingRecipes.add(aOreRecipe); } return true; } @@ -1060,7 +1061,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { FlotationRecipeHandler.registerOreType(aMat); - GT_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { ItemUtils.getSimpleStack(aXanthate, 32), aMat.getMilled(64), aMat.getMilled(64), aMat.getMilled(64), aMat.getMilled(64), }, @@ -1072,7 +1073,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aTime, aEU, 0); - GTPP_Recipe.GTPP_Recipe_Map.sFlotationCellRecipes.add(aRecipe); + GTPPRecipeMaps.flotationCellRecipes.add(aRecipe); return true; } @@ -1097,7 +1098,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { @Override public boolean addFuelForRTG(ItemStack aFuelPellet, int aFuelDays, int aVoltage) { - GTPP_Recipe.GTPP_Recipe_Map.sRTGFuels.addRecipe( + GTPPRecipeMaps.rtgFuels.addRecipe( true, new ItemStack[] { aFuelPellet }, new ItemStack[] {}, @@ -1113,7 +1114,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { @Override public boolean addColdTrapRecipe(int aCircuit, ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, FluidStack aFluidOutput, int aTime, int aEU) { - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { CI.getNumberedAdvancedCircuit(aCircuit), aInput }, aOutputs, @@ -1125,14 +1126,14 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aEU, 0); - GTPP_Recipe_Map.sColdTrapRecipes.add(aRecipe); + GTPPRecipeMaps.coldTrapRecipes.add(aRecipe); return true; } @Override public boolean addReactorProcessingUnitRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, FluidStack aFluidOutput, int aTime, int aEU) { - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { aInput1, aInput2 }, aOutputs, @@ -1144,7 +1145,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aEU, 0); - GTPP_Recipe_Map.sReactorProcessingUnitRecipes.add(aRecipe); + GTPPRecipeMaps.reactorProcessingUnitRecipes.add(aRecipe); return true; } @@ -1164,7 +1165,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, aInputs, aOutputs, @@ -1175,7 +1176,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aDuration, aEUtick, aSpecial); - GTPP_Recipe.GTPP_Recipe_Map.sNuclearSaltProcessingPlantRecipes.addRecipe(aRecipe); + GTPPRecipeMaps.nuclearSaltProcessingPlantRecipes.addRecipe(aRecipe); return true; } @@ -1185,7 +1186,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { if ((aInput == null && aFluidInput == null) || aOutput == null) { return false; } - GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes.addRecipe( + RecipeMaps.fluidHeaterRecipes.addRecipe( true, new ItemStack[] { aInput }, null, @@ -1203,7 +1204,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { if (aInput == null || aOutput == null) { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { aInput }, new ItemStack[] { aOutput }, @@ -1215,7 +1216,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aEUt, 0); - GT_Recipe_Map.sVacuumRecipes.add(aRecipe); + RecipeMaps.vacuumFreezerRecipes.add(aRecipe); return true; } @@ -1224,7 +1225,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { if (aInput == null || aOutput == null) { return false; } - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { aInput }, new ItemStack[] { aOutput }, @@ -1236,7 +1237,7 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder { aEUt, 0); - GTPP_Recipe_Map.sMolecularTransformerRecipes.add(aRecipe); + GTPPRecipeMaps.molecularTransformerRecipes.add(aRecipe); return true; } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java index 1fd4e17b03..6ad68efbfe 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechDehydrator.java @@ -3,7 +3,7 @@ package gtPlusPlus.xmod.gregtech.registration.gregtech; import static gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT; import static gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL; import static gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -15,9 +15,9 @@ import gregtech.api.enums.SoundResource; import gregtech.api.enums.TierEU; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.SpecialEffects; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_OreDictUnificator; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.ALLOY; @@ -44,22 +44,22 @@ public class GregtechDehydrator { .itemInputs( new ItemStack(ModItems.itemDehydratorCoilWire, 4, 0), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Bronze, 1)) - .itemOutputs(coilT1).duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sAssemblerRecipes); + .itemOutputs(coilT1).duration(8 * SECONDS).eut(TierEU.RECIPE_MV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(ModItems.itemDehydratorCoilWire, 4, 1), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Steel, 1)) - .itemOutputs(coilT2).duration(8 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sAssemblerRecipes); + .itemOutputs(coilT2).duration(8 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(ModItems.itemDehydratorCoilWire, 4, 2), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel, 1)) - .itemOutputs(coilT3).duration(8 * SECONDS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .itemOutputs(coilT3).duration(8 * SECONDS).eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(ModItems.itemDehydratorCoilWire, 4, 3), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Titanium, 1)) - .itemOutputs(coilT4).duration(8 * SECONDS).eut(TierEU.RECIPE_EV / 2).addTo(sAssemblerRecipes); + .itemOutputs(coilT4).duration(8 * SECONDS).eut(TierEU.RECIPE_EV / 2).addTo(assemblerRecipes); // Basic GregtechItemList.GT_Dehydrator_MV.set( @@ -69,19 +69,18 @@ public class GregtechDehydrator { "Basic Dehydrator I", 2, new String[] { "This dehydrates your Grapes into Raisins.", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "DEHYDRATOR", new Object[] { "ECE", "WMW", "GPG", 'M', HULL, 'P', ROBOT_ARM, 'E', OrePrefixes.wireFine.get(Materials.RedAlloy), 'C', CIRCUIT, 'W', OrePrefixes.cableGt04.get(Materials.Copper), 'G', - OrePrefixes.gearGt.get(Materials.Steel) }).getStackForm(1L)); + OrePrefixes.gearGt.get(Materials.Steel) }).setRecipeCatalystPriority(6) + .getStackForm(1L)); GregtechItemList.GT_Dehydrator_HV.set( new GT_MetaTileEntity_BasicMachine_GT_Recipe( @@ -90,19 +89,17 @@ public class GregtechDehydrator { "Basic Dehydrator II", 3, new String[] { "This dehydrates your Grapes into Raisins.", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "DEHYDRATOR", new Object[] { "ECE", "WMW", "GPG", 'M', HULL, 'P', ROBOT_ARM, 'E', OrePrefixes.wireFine.get(Materials.Electrum), 'C', CIRCUIT, 'W', OrePrefixes.cableGt04.get(Materials.Silver), 'G', ALLOY.POTIN.getGear(1) }) - .getStackForm(1L)); + .setRecipeCatalystPriority(5).getStackForm(1L)); // Chemical GregtechItemList.GT_Dehydrator_EV.set( @@ -113,18 +110,16 @@ public class GregtechDehydrator { 4, new String[] { "A hangover is the way your body reacts to dehydration.", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "DEHYDRATOR", new Object[] { "ECE", "WMW", "GPG", 'M', HULL, 'P', ROBOT_ARM, 'E', coilT1, 'C', CIRCUIT, 'W', OrePrefixes.cableGt04.get(Materials.Aluminium), 'G', ALLOY.TUMBAGA.getGear(1) }) - .getStackForm(1L)); + .setRecipeCatalystPriority(4).getStackForm(1L)); GregtechItemList.GT_Dehydrator_IV.set( new GT_MetaTileEntity_BasicMachine_GT_Recipe( @@ -134,18 +129,16 @@ public class GregtechDehydrator { 5, new String[] { "A hangover is the way your body reacts to dehydration.", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "DEHYDRATOR", new Object[] { "ECE", "WMW", "GPG", 'M', HULL, 'P', ROBOT_ARM, 'E', coilT2, 'C', CIRCUIT, 'W', OrePrefixes.cableGt04.get(Materials.Tungsten), 'G', ALLOY.INCONEL_690.getGear(1) }) - .getStackForm(1L)); + .setRecipeCatalystPriority(3).getStackForm(1L)); GregtechItemList.GT_Dehydrator_LuV.set( new GT_MetaTileEntity_BasicMachine_GT_Recipe( @@ -154,18 +147,16 @@ public class GregtechDehydrator { "Chemical Dehydrator III", 6, new String[] { "You could probably make space icecream with this..", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "DEHYDRATOR", new Object[] { "ECE", "WMW", "GPG", 'M', HULL, 'P', ROBOT_ARM, 'E', coilT3, 'C', CIRCUIT, 'W', OrePrefixes.cableGt04.get(Materials.Naquadah), 'G', ALLOY.HASTELLOY_N.getGear(1) }) - .getStackForm(1L)); + .setRecipeCatalystPriority(2).getStackForm(1L)); GregtechItemList.GT_Dehydrator_ZPM.set( new GT_MetaTileEntity_BasicMachine_GT_Recipe( @@ -174,18 +165,16 @@ public class GregtechDehydrator { "Chemical Dehydrator IV", 7, new String[] { "You can definitely make space icecream with this..", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sChemicalDehydratorRecipes, + GTPPRecipeMaps.chemicalDehydratorRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "DEHYDRATOR", new Object[] { "ECE", "WMW", "GPG", 'M', HULL, 'P', ROBOT_ARM, 'E', coilT4, 'C', CIRCUIT, 'W', OrePrefixes.cableGt04.get(Materials.Osmium), 'G', ALLOY.ZERON_100.getGear(1) }) - .getStackForm(1L)); + .setRecipeCatalystPriority(1).getStackForm(1L)); // Advanced GregtechItemList.Controller_Vacuum_Furnace.set( diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechIndustrialMassFabricator.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechIndustrialMassFabricator.java index 64a161b227..e631ca0445 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechIndustrialMassFabricator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechIndustrialMassFabricator.java @@ -5,9 +5,9 @@ import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_Recipe; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.minecraft.ItemUtils; @@ -38,7 +38,7 @@ public class GregtechIndustrialMassFabricator { // Generate Scrap->UUA Recipes // Basic UUA1 - GT_Recipe UUA_From_Scrap = new GTPP_Recipe( + GT_Recipe UUA_From_Scrap = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(9), ItemUtils.getSimpleStack(getScrapPile(), 9) }, new ItemStack[] { GT_Values.NI }, @@ -50,7 +50,7 @@ public class GregtechIndustrialMassFabricator { 32, 0); // Basic UUA2 - GT_Recipe UUA_From_ScrapBoxes = new GTPP_Recipe( + GT_Recipe UUA_From_ScrapBoxes = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(19), ItemUtils.getSimpleStack(getScrapBox(), 1) }, new ItemStack[] { GT_Values.NI }, @@ -62,11 +62,11 @@ public class GregtechIndustrialMassFabricator { 32, 0); - GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.add(UUA_From_Scrap); - GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.add(UUA_From_ScrapBoxes); + GTPPRecipeMaps.multiblockMassFabricatorRecipes.add(UUA_From_Scrap); + GTPPRecipeMaps.multiblockMassFabricatorRecipes.add(UUA_From_ScrapBoxes); // Basic UUM - GT_Recipe generateUUM_LV = new GTPP_Recipe( + GT_Recipe generateUUM_LV = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(1) }, new ItemStack[] { GT_Values.NI }, @@ -79,7 +79,7 @@ public class GregtechIndustrialMassFabricator { 0); // Basic UUM - GT_Recipe generateUUMFromUUA_LV = new GTPP_Recipe( + GT_Recipe generateUUMFromUUA_LV = new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(2) }, new ItemStack[] { GT_Values.NI }, @@ -92,8 +92,8 @@ public class GregtechIndustrialMassFabricator { 0); // Advanced UUM - GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.add( - new GTPP_Recipe( + GTPPRecipeMaps.multiblockMassFabricatorRecipes.add( + new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(3) }, new ItemStack[] { GT_Values.NI }, @@ -106,8 +106,8 @@ public class GregtechIndustrialMassFabricator { 0)); // Advanced UUM - GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.add( - new GTPP_Recipe( + GTPPRecipeMaps.multiblockMassFabricatorRecipes.add( + new GT_Recipe( false, new ItemStack[] { CI.getNumberedCircuit(4) }, new ItemStack[] { GT_Values.NI }, @@ -119,11 +119,11 @@ public class GregtechIndustrialMassFabricator { 65536, 0)); - GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.add(generateUUM_LV); - GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.add(generateUUMFromUUA_LV); + GTPPRecipeMaps.multiblockMassFabricatorRecipes.add(generateUUM_LV); + GTPPRecipeMaps.multiblockMassFabricatorRecipes.add(generateUUMFromUUA_LV); Logger.INFO( - "Generated " + GTPP_Recipe.GTPP_Recipe_Map.sMatterFab2Recipes.mRecipeList.size() + "Generated " + GTPPRecipeMaps.multiblockMassFabricatorRecipes.getAllRecipes().size() + " Matter Fabricator recipes."); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechLFTR.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechLFTR.java index b16c4bcb34..2e91eb4bb0 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechLFTR.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechLFTR.java @@ -3,8 +3,8 @@ package gtPlusPlus.xmod.gregtech.registration.gregtech; import gregtech.api.enums.SoundResource; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.SpecialEffects; -import gregtech.api.util.GTPP_Recipe; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; import gtPlusPlus.xmod.gregtech.common.tileentities.machines.multi.processing.GregtechMetaTileEntity_SpargeTower; @@ -32,13 +32,11 @@ public class GregtechLFTR { "Reactor Processing Unit I", 5, new String[] { "Processes Nuclear things", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sReactorProcessingUnitRecipes, + GTPPRecipeMaps.reactorProcessingUnitRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "REACTOR_PROCESSING_UNIT", null).getStackForm(1L)); @@ -49,13 +47,11 @@ public class GregtechLFTR { "Reactor Processing Unit II", 7, new String[] { "Processes Nuclear things", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sReactorProcessingUnitRecipes, + GTPPRecipeMaps.reactorProcessingUnitRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "REACTOR_PROCESSING_UNIT", null).getStackForm(1L)); @@ -67,13 +63,11 @@ public class GregtechLFTR { "Cold Trap I", 5, new String[] { "Just like the Arctic", "Does not require ice cubes", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sColdTrapRecipes, + GTPPRecipeMaps.coldTrapRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "COLD_TRAP", null).getStackForm(1L)); @@ -84,13 +78,11 @@ public class GregtechLFTR { "Cold Trap II", 7, new String[] { "Just like the Arctic", "Does not require ice cubes", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sColdTrapRecipes, + GTPPRecipeMaps.coldTrapRecipes, 2, 9, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "COLD_TRAP", null).getStackForm(1L)); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java index 308b721d61..5ae416953f 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSimpleWasher.java @@ -13,9 +13,10 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SoundResource; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.SpecialEffects; -import gregtech.api.util.GTPP_Recipe; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; import gtPlusPlus.api.objects.data.Quad; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; @@ -81,37 +82,34 @@ public class GregtechSimpleWasher { 0, new String[] { "It's like an automatic Cauldron for washing dusts.", "§cDEPRECATED: No recipe.§r Make a Simple Washer I.", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes, + GTPPRecipeMaps.simpleWasherRecipes, 1, 1, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "SIMPLE_WASHER", - null).getStackForm(1L)); + null).setRecipeCatalystPriority(-11).getStackForm(1L)); for (int i = 0; i < washers.size(); i++) { Quad washer = washers.get(i); + int tier = i + 1; washer.getKey().set( new GT_MetaTileEntity_BasicMachine_GT_Recipe( washer.getValue_1(), washer.getValue_2(), washer.getValue_3(), - i + 1, + tier, new String[] { "It's like an automatic Cauldron for washing dusts.", CORE.GT_Tooltip.get() }, - GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes, + GTPPRecipeMaps.simpleWasherRecipes, 1, 1, true, SoundResource.NONE, - false, - false, SpecialEffects.NONE, "SIMPLE_WASHER", - null).getStackForm(1L)); + null).setRecipeCatalystPriority(-tier).getStackForm(1L)); } } } @@ -144,11 +142,11 @@ public class GregtechSimpleWasher { addSimpleWashRecipe(dustPure, dustClean); } - return GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes.mRecipeList.size() > mRecipeCount; + return GTPPRecipeMaps.simpleWasherRecipes.getAllRecipes().size() > mRecipeCount; } private static boolean generateDirtyCrushedRecipes() { - int mRecipeCount = GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes.mRecipeList.size(); + int mRecipeCount = GTPPRecipeMaps.simpleWasherRecipes.getAllRecipes().size(); // Generate Recipe Map for the Dust Washer. ItemStack crushedClean; ItemStack crushedDirty; @@ -164,12 +162,12 @@ public class GregtechSimpleWasher { addSimpleWashRecipe(crushedDirty, crushedClean); } - return GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes.mRecipeList.size() > mRecipeCount; + return GTPPRecipeMaps.simpleWasherRecipes.getAllRecipes().size() > mRecipeCount; } private static void addSimpleWashRecipe(ItemStack aInput, ItemStack aOutput) { if (aInput != null && aOutput != null) { - GTPP_Recipe aRecipe = new GTPP_Recipe( + GT_Recipe aRecipe = new GT_Recipe( false, new ItemStack[] { aInput }, new ItemStack[] { aOutput }, @@ -180,7 +178,7 @@ public class GregtechSimpleWasher { 5, 8, 0); - GTPP_Recipe.GTPP_Recipe_Map.sSimpleWasherRecipes.addRecipe(aRecipe); + GTPPRecipeMaps.simpleWasherRecipes.addRecipe(aRecipe); } } } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSolarTower.java b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSolarTower.java index e9661befd4..5e4a367ebc 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSolarTower.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechSolarTower.java @@ -2,8 +2,8 @@ package gtPlusPlus.xmod.gregtech.registration.gregtech; import net.minecraftforge.fluids.FluidStack; -import gregtech.api.util.GTPP_Recipe; import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.recipe.GTPPRecipeMaps; import gtPlusPlus.core.material.MISC_MATERIALS; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; import gtPlusPlus.xmod.gregtech.common.tileentities.machines.multi.production.GregtechMetaTileEntity_SolarTower; @@ -31,7 +31,7 @@ public class GregtechSolarTower { 0).getStackForm(1L)); // NEI recipe - GTPP_Recipe.GTPP_Recipe_Map.sSolarTowerRecipes.addRecipe( + GTPPRecipeMaps.solarTowerRecipes.addRecipe( false, null, null, diff --git a/src/main/java/gtPlusPlus/xmod/pamsharvest/fishtrap/FishTrapHandler.java b/src/main/java/gtPlusPlus/xmod/pamsharvest/fishtrap/FishTrapHandler.java index 7860ba1bd4..2d8bc6d39e 100644 --- a/src/main/java/gtPlusPlus/xmod/pamsharvest/fishtrap/FishTrapHandler.java +++ b/src/main/java/gtPlusPlus/xmod/pamsharvest/fishtrap/FishTrapHandler.java @@ -1,8 +1,8 @@ package gtPlusPlus.xmod.pamsharvest.fishtrap; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -27,13 +27,13 @@ public class FishTrapHandler { .itemOutputs( ItemUtils.getItemStackOfAmountFromOreDict("dustMeatRaw", 1), ItemUtils.getItemStackOfAmountFromOreDict("dustTinyBone", 1)) - .outputChances(10000, 1000).duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .outputChances(10000, 1000).duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict(itemName, 1)) .fluidOutputs(FluidUtils.getFluidStack("methane", 96)).duration(19 * SECONDS).eut(5) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict(itemName, 1)) .fluidOutputs(FluidUtils.getFluidStack("fishoil", 50)).duration(16 * TICKS).eut(4) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); } } if (ItemUtils.getItemStackOfAmountFromOreDictNoBroken(greenheartFish, 1) != null) { @@ -41,13 +41,13 @@ public class FishTrapHandler { .itemOutputs( ItemUtils.getItemStackOfAmountFromOreDict("dustMeatRaw", 1), ItemUtils.getItemStackOfAmountFromOreDict("dustTinyBone", 1)) - .outputChances(10000, 1000).duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .outputChances(10000, 1000).duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict(greenheartFish, 1)) .fluidOutputs(FluidUtils.getFluidStack("methane", 96)).duration(19 * SECONDS).eut(5) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemUtils.getItemStackOfAmountFromOreDict(greenheartFish, 1)) .fluidOutputs(FluidUtils.getFluidStack("fishoil", 50)).duration(16 * TICKS).eut(4) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); } } } diff --git a/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java b/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java index d38d08706e..970e62c2b1 100644 --- a/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java +++ b/src/main/java/gtPlusPlus/xmod/railcraft/HANDLER_Railcraft.java @@ -3,7 +3,7 @@ package gtPlusPlus.xmod.railcraft; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; import static gregtech.api.enums.Mods.Railcraft; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; @@ -158,7 +158,7 @@ public class HANDLER_Railcraft { GT_Values.RA.stdBuilder().itemInputs(aInputs2[i]) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L)).outputChances(1000) .fluidOutputs(Materials.WoodTar.getFluid(50L)).duration(1 * SECONDS + 10 * TICKS).eut(16) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); // Processing the Charcoals with Oxygen to get CO and CO2 // C + O = CO diff --git a/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java b/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java index 9fc2f31309..22966ccb20 100644 --- a/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java +++ b/src/main/java/gtPlusPlus/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java @@ -1,8 +1,8 @@ package gtPlusPlus.xmod.thermalfoundation.recipe; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.recipe.RecipeMaps.chemicalBathRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; +import static gregtech.api.recipe.RecipeMaps.vacuumFreezerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -31,18 +31,18 @@ public class TF_Gregtech_Recipes { GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Cinnabar, 1L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cinnabar, 3L)) .fluidInputs(getFluidStack("cryotheum", 144)).duration(20 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); // Blizz Powder GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.snowball, 4)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blizz, 1L)).fluidInputs(moltenBlaze) - .duration(20 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(sChemicalBathRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_HV / 2).addTo(chemicalBathRecipes); // Blizz Rod GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.blaze_rod)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Blizz, 1L)) .duration(((int) Math.max((Materials.Blaze.getMass() * 4) * 3L, 1L)) * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sVacuumRecipes); + .addTo(vacuumFreezerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -51,7 +51,7 @@ public class TF_Gregtech_Recipes { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Pyrotheum, 1L)).duration(8 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_MV).addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -60,7 +60,7 @@ public class TF_Gregtech_Recipes { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blizz, 1L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cryotheum, 1L)).duration(8 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_MV).addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -69,7 +69,7 @@ public class TF_Gregtech_Recipes { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blizz, 1L)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cryotheum, 1L)).duration(8 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_MV).addTo(mixerRecipes); } private static FluidStack getFluidStack(final String fluidName, final int amount) { diff --git a/src/main/resources/assets/miscutils/lang/en_US.lang b/src/main/resources/assets/miscutils/lang/en_US.lang index dfd276c098..d835781b48 100644 --- a/src/main/resources/assets/miscutils/lang/en_US.lang +++ b/src/main/resources/assets/miscutils/lang/en_US.lang @@ -64,6 +64,62 @@ GTPP.core.GT_Tooltip=Added by: §2Alkalus §7- §c[GT++] GTPP.core.GT_Tooltip_Builder=§2Alkalus §7- §c[GT++] GTPP.core.GT_Tooltip_Radioactive=§7Warning: §aRadioactive! §6 Avoid direct handling without hazmat protection. +# RecipeMaps +gtpp.recipe.cokeoven=Coke Oven +gtpp.recipe.matterfab2=Matter Fabricator +gtpp.recipe.rocketenginefuel=Rocket Engine Fuel +gtpp.recipe.quantumforcesmelter=Quantum Force Transformer +gtpp.recipe.chemicaldehydrator=Dehydrator +gtpp.recipe.vacfurnace=Vacuum Furnace +gtpp.recipe.alloyblastsmelter=Alloy Blast Smelter +gtpp.recipe.lftr=Liquid Fluoride Thorium Reactor +gtpp.recipe.nuclearsaltprocessingplant=Nuclear Salt Processing Plant +gtpp.recipe.oremill=Milling +gtpp.recipe.fissionfuel=Nuclear Fuel Processing +gtpp.recipe.coldtrap=Cold Trap +gtpp.recipe.reactorprocessingunit=Reactor Processing Unit +gtpp.recipe.simplewasher=Simple Dust Washer +gtpp.recipe.moleculartransformer=Molecular Transformer +gtpp.recipe.fluidchemicaleactor=Chemical Plant +gtpp.recipe.RTGgenerators=RTG +gtpp.recipe.thermalgeneratorfuel=Thermal Generator Fuel +gtpp.recipe.solartower=Solar Tower +gtpp.recipe.cyclotron=COMET - Compact Cyclotron +gtpp.recipe.fishpond=Zhuhai - Fishing Port +gtpp.recipe.cryogenicfreezer=Cryogenic Freezer +gtpp.recipe.multicentrifuge=Multiblock Centrifuge +gtpp.recipe.multielectro=Multiblock Electrolyzer +gtpp.recipe.multimixer=Multiblock Mixer +gtpp.recipe.multidehydrator=Multiblock Dehydrator +gtpp.recipe.semifluidgeneratorfuels=Semifluid Generator Fuels +gtpp.recipe.flotationcell=Flotation Cell +gtpp.recipe.treefarm=Tree Growth Simulator + +# Recipe categories +gtpp.recipe.category.abs_non_alloy_recipes=ABS Non-Alloy Recipes + +# NEI +gtpp.nei.lftr.power=Power: %s EU/t per Dynamo +gtpp.nei.lftr.dynamo=Dynamo: %s EU +gtpp.nei.lftr.total=Total: %s EU +gtpp.nei.milling.not_consumed=Does not always get consumed in the process +gtpp.nei.chemplant.tier.1=Bronze +gtpp.nei.chemplant.tier.2=Steel +gtpp.nei.chemplant.tier.3=Aluminium +gtpp.nei.chemplant.tier.4=Stainless Steel +gtpp.nei.chemplant.tier.5=Titanium +gtpp.nei.chemplant.tier.6=Tungsten Steel +gtpp.nei.chemplant.tier.7=Laurenium +gtpp.nei.chemplant.tier.8=Botmium +gtpp.nei.rtg.days=Fuel Value: %s Minecraft Days +gtpp.nei.solar_tower.1=Solar Heater rings boost tier +gtpp.nei.solar_tower.2=R1:T1, R2:T2, R3:T4, R4:T8, R5:T16 +gtpp.nei.solar_tower.3=Input Amount = 1000 x T +gtpp.nei.tgs.1=The sapling is not consumed. +gtpp.nei.tgs.2=If %s is provided, +gtpp.nei.tgs.3=Saplings are made instead. +gtpp.nei.tgs.sapling=Outputted if %s is provided + //Thermal Foundation Stuff item.MiscUtils.bucket.bucketPyrotheum.name=Blazing Pyrotheum Bucket item.MiscUtils.bucket.bucketCryotheum.name=Gelid Cryotheum Bucket @@ -3447,4 +3503,4 @@ item.BasicGenericChemItem.31.name=Particle Acceleration Catalyst item.BasicGenericChemItem.32.name=Synchrotron-Capable Catalyst //Added 19/09/23 -item.BasicGenericChemItem.33.name=Algagenic Growth Promoter Catalyst \ No newline at end of file +item.BasicGenericChemItem.33.name=Algagenic Growth Promoter Catalyst diff --git a/src/main/resources/assets/miscutils/textures/gui/picture/abs_non_alloy_recipes.png b/src/main/resources/assets/miscutils/textures/gui/picture/abs_non_alloy_recipes.png new file mode 100644 index 0000000000..74065e8cbd Binary files /dev/null and b/src/main/resources/assets/miscutils/textures/gui/picture/abs_non_alloy_recipes.png differ -- cgit