diff options
author | miozune <miozune@gmail.com> | 2023-12-04 06:26:09 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-03 22:26:09 +0100 |
commit | b6caaf255da083516286321155ef339b60a07393 (patch) | |
tree | 89416c1d29e63de37cb43295a81913de3c24e015 /src/main/java/gtPlusPlus | |
parent | 4ff3ef790f4e22cc80986258f13f8a8643fda0dc (diff) | |
download | GT5-Unofficial-b6caaf255da083516286321155ef339b60a07393.tar.gz GT5-Unofficial-b6caaf255da083516286321155ef339b60a07393.tar.bz2 GT5-Unofficial-b6caaf255da083516286321155ef339b60a07393.zip |
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 <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gtPlusPlus')
117 files changed, 1570 insertions, 1477 deletions
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<Pos2d> getItemInputPositions(int itemInputCount) { + return UIHelper.getGridPositions(itemInputCount, 7, 6, itemInputCount, 1); + } + + @Override + public List<Pos2d> getItemOutputPositions(int itemOutputCount) { + return UIHelper.getGridPositions(itemOutputCount, 106, 15, 2); + } + + @Override + public List<Pos2d> getFluidInputPositions(int fluidInputCount) { + return UIHelper.getGridPositions(fluidInputCount, 7, 41, fluidInputCount, 1); + } + + @Override + public List<Pos2d> getFluidOutputPositions(int fluidOutputCount) { + return UIHelper.getGridPositions(fluidOutputCount, 142, 15, 1, fluidOutputCount); + } + + @Override + protected List<String> handleNEIItemInputTooltip(List<String> 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<RecipeMapBackend> 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<RecipeMapBackend> multiblockMassFabricatorRecipes = RecipeMapBuilder + .of("gtpp.recipe.matterfab2").maxIO(2, 0, 1, 1).build(); + public static final RecipeMap<FuelBackend> 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<RecipeMapBackend> 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<RecipeMapBackend> chemicalDehydratorRecipes = RecipeMapBuilder + .of("gtpp.recipe.chemicaldehydrator").maxIO(2, 9, 1, 1) + .progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN).build(); + public static final RecipeMap<RecipeMapBackend> 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<RecipeMapBackend> alloyBlastSmelterRecipes = RecipeMapBuilder + .of("gtpp.recipe.alloyblastsmelter").maxIO(9, 9, 3, 3).minInputs(1, 0).frontend(LargeNEIFrontend::new) + .build(); + public static final RecipeMap<RecipeMapBackend> 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<RecipeMapBackend> nuclearSaltProcessingPlantRecipes = RecipeMapBuilder + .of("gtpp.recipe.nuclearsaltprocessingplant").maxIO(1, 6, 2, 3).frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap<RecipeMapBackend> millingRecipes = RecipeMapBuilder.of("gtpp.recipe.oremill") + .maxIO(3, 1, 0, 0).minInputs(1, 0).frontend(MillingFrontend::new).build(); + public static final RecipeMap<RecipeMapBackend> fissionFuelProcessingRecipes = RecipeMapBuilder + .of("gtpp.recipe.fissionfuel").maxIO(0, 0, 6, 1).frontend(FluidOnlyFrontend::new).build(); + public static final RecipeMap<RecipeMapBackend> coldTrapRecipes = RecipeMapBuilder.of("gtpp.recipe.coldtrap") + .maxIO(2, 9, 1, 1).progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN).build(); + public static final RecipeMap<RecipeMapBackend> reactorProcessingUnitRecipes = RecipeMapBuilder + .of("gtpp.recipe.reactorprocessingunit").maxIO(2, 9, 1, 1) + .progressBar(GT_UITextures.PROGRESSBAR_SIFT, ProgressBar.Direction.DOWN).build(); + public static final RecipeMap<RecipeMapBackend> 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<RecipeMapBackend> 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<RecipeMapBackend> 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<FuelBackend> 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<RecipeMapBackend> thermalBoilerRecipes = RecipeMapBuilder + .of("gtpp.recipe.thermalgeneratorfuel").maxIO(9, 9, 3, 3).frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap<RecipeMapBackend> 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<RecipeMapBackend> cyclotronRecipes = RecipeMapBuilder.of("gtpp.recipe.cyclotron") + .maxIO(9, 9, 1, 1).build(); + public static final RecipeMap<RecipeMapBackend> 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<RecipeMapBackend> spargeTowerFakeRecipes = RecipeMapBuilder + .of("gtpp.recipe.spargetower").maxIO(0, 0, 9, 9).disableRegisterNEI().build(); + public static final RecipeMap<RecipeMapBackend> advancedFreezerRecipes = RecipeMapBuilder + .of("gtpp.recipe.cryogenicfreezer").maxIO(1, 1, 2, 1).build(); + public static final RecipeMap<RecipeMapBackend> centrifugeNonCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.multicentrifuge").maxIO(6, 6, 6, 6).progressBar(GT_UITextures.PROGRESSBAR_EXTRACT) + .frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap<RecipeMapBackend> electrolyzerNonCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.multielectro").maxIO(6, 6, 6, 6).progressBar(GT_UITextures.PROGRESSBAR_EXTRACT) + .frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap<RecipeMapBackend> 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<RecipeMapBackend> chemicalDehydratorNonCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.multidehydrator").maxIO(6, 9, 3, 3).frontend(LargeNEIFrontend::new).build(); + public static final RecipeMap<FuelBackend> semiFluidFuels = RecipeMapBuilder + .of("gtpp.recipe.semifluidgeneratorfuels", FuelBackend::new).maxIO(0, 0, 1, 0) + .neiSpecialInfoFormatter(FuelSpecialValueFormatter.INSTANCE).build(); + public static final RecipeMap<RecipeMapBackend> flotationCellRecipes = RecipeMapBuilder + .of("gtpp.recipe.flotationcell").maxIO(6, 0, 1, 1).build(); + public static final RecipeMap<RecipeMapBackend> 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<String> handleNEIItemInputTooltip(List<String> 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<String> handleNEIItemOutputTooltip(List<String> 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<String> 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<Integer, GTPP_Recipe> mRocketFuels = new LinkedHashMap<>(); + HashMap<Integer, GT_Recipe> 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<GT_Recipe> aAssRecipes = GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.mRecipeList; + Collection<GT_Recipe> 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<T extends GT_MetaTileEntity_Ex @Override protected void setProcessingLogicPower(ProcessingLogic logic) { - logic.setAvailableVoltage(GT_Utility.roundDownVoltage(this.getMaxInputVoltage())); + logic.setAvailableVoltage(GT_Utility.roundUpVoltage(this.getMaxInputVoltage())); logic.setAvailableAmperage(1L); } @@ -809,7 +809,7 @@ public abstract class GregtechMeta_MultiBlockBase<T extends GT_MetaTileEntity_Ex return resetRecipeMapForAllInputHatches(this.getRecipeMap()); } - public boolean resetRecipeMapForAllInputHatches(GT_Recipe_Map aMap) { + public boolean resetRecipeMapForAllInputHatches(RecipeMap<?> 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<T extends GT_MetaTileEntity_Ex return cleared > 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<T extends GT_MetaTileEntity_Ex } } - public boolean resetRecipeMapForHatch(GT_MetaTileEntity_Hatch aTileEntity, GT_Recipe_Map aMap) { + public boolean resetRecipeMapForHatch(GT_MetaTileEntity_Hatch aTileEntity, RecipeMap<?> aMap) { if (aTileEntity == null) { return false; } @@ -854,24 +854,24 @@ public abstract class GregtechMeta_MultiBlockBase<T extends GT_MetaTileEntity_Ex if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Input) { ((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity).mRecipeMap = null; ((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity).mRecipeMap = aMap; - if (aMap != null && aMap.mNEIName != null) { - log("Remapped Input Hatch to " + aMap.mNEIName + "."); + if (aMap != null) { + log("Remapped Input Hatch to " + aMap.unlocalizedName + "."); } else { log("Cleared Input Hatch."); } } else if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_InputBus) { ((GT_MetaTileEntity_Hatch_InputBus) aMetaTileEntity).mRecipeMap = null; ((GT_MetaTileEntity_Hatch_InputBus) aMetaTileEntity).mRecipeMap = aMap; - if (aMap != null && aMap.mNEIName != null) { - log("Remapped Input Bus to " + aMap.mNEIName + "."); + if (aMap != null) { + log("Remapped Input Bus to " + aMap.unlocalizedName + "."); } else { log("Cleared Input Bus."); } } else { ((GT_MetaTileEntity_Hatch_Steam_BusInput) aMetaTileEntity).mRecipeMap = null; ((GT_MetaTileEntity_Hatch_Steam_BusInput) aMetaTileEntity).mRecipeMap = aMap; - if (aMap != null && aMap.mNEIName != null) { - log("Remapped Input Bus to " + aMap.mNEIName + "."); + if (aMap != null) { + log("Remapped Input Bus to " + aMap.unlocalizedName + "."); } else { log("Cleared Input Bus."); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_SteamMultiBase.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_SteamMultiBase.java index 7b88f718b5..55288bc85c 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_SteamMultiBase.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_SteamMultiBase.java @@ -23,8 +23,8 @@ import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_HatchElementBuilder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.api.util.IGT_HatchAdder; import gtPlusPlus.core.util.minecraft.FluidUtils; @@ -161,7 +161,9 @@ public abstract class GregtechMeta_SteamMultiBase<T extends GregtechMeta_SteamMu log("Adding Steam Input Hatch"); aDidAdd = addToMachineListInternal(mSteamInputFluids, aMetaTileEntity, aBaseCasingIndex); } else if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Steam_BusInput) { - log("Trying to set recipe map. Type: " + (getRecipeMap() != null ? getRecipeMap().mNEIName : "Null")); + log( + "Trying to set recipe map. Type: " + + (getRecipeMap() != null ? getRecipeMap().unlocalizedName : "Null")); this.resetRecipeMapForHatch(aTileEntity, getRecipeMap()); log("Adding Steam Input Bus"); aDidAdd = addToMachineListInternal(mSteamInputs, aMetaTileEntity, aBaseCasingIndex); @@ -317,7 +319,7 @@ public abstract class GregtechMeta_SteamMultiBase<T extends GregtechMeta_SteamMu } @Override - public boolean resetRecipeMapForAllInputHatches(GT_Recipe.GT_Recipe_Map aMap) { + public boolean resetRecipeMapForAllInputHatches(RecipeMap<?> 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<GT_Recipe> tRecipeList = this.getRecipes().mRecipeList; + final Collection<GT_Recipe> 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<GMTE_Amazon } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; + public RecipeMap<?> 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<RecipeMap<?>> 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<GregtechMetaTileEntity_IndustrialChisel> 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); @@ -146,11 +148,6 @@ public class GregtechMetaTileEntity_IndustrialChisel } @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<GT_Recipe> 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<RecipeMap<?>> 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<RecipeMap<?>> 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<RecipeMap<?>> 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<GT_Recipe> 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<RecipeMap<?>> 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<RecipeMap<?>> 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<ItemStack> getStoredInputs() { ArrayList<ItemStack> 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<RecipeMap<?>> 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 @@ -75,6 +78,16 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK4 extends GT_MetaTileEntity_Fus } @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); } @@ -100,22 +113,11 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK4 extends GT_MetaTileEntity_Fus } @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) { if (side == facing) { 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 @@ -75,6 +78,16 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK5 extends GT_MetaTileEntity_Fus } @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); } @@ -100,23 +113,11 @@ public class GregtechMetaTileEntity_Adv_Fusion_MK5 extends GT_MetaTileEntity_Fus } @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) { if (side == facing) { 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<GT4Entity } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; + public RecipeMap<?> 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<GT4Enti return (aStack != null && aStack.getItem() == mLavaFilter) ? 1 : 0; } + @Override + public RecipeMap<?> 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<GT4Enti } } - for (GT_Recipe tRecipe : GTPP_Recipe.GTPP_Recipe_Map.sThermalFuels.mRecipeList) { + for (GT_Recipe tRecipe : GTPPRecipeMaps.thermalBoilerRecipes.getAllRecipes()) { FluidStack tFluid = tRecipe.mFluidInputs[0]; if (tFluid != null) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_ElementalDuplicator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_ElementalDuplicator.java index 4063c967d7..15d144c4a5 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_ElementalDuplicator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMTE_ElementalDuplicator.java @@ -14,16 +14,11 @@ import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import static gregtech.api.util.GT_Utility.filterValidMTEs; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; -import net.minecraftforge.fluids.FluidStack; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import com.gtnewhorizon.structurelib.alignment.IAlignmentLimits; import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; @@ -31,24 +26,15 @@ import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; -import gregtech.api.GregTech_API; -import gregtech.api.enums.Element; -import gregtech.api.enums.Materials; 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.interfaces.tileentity.IHasWorldObjectAndCoords; import gregtech.api.logic.ProcessingLogic; -import gregtech.api.objects.GT_ItemStack; -import gregtech.api.recipe.check.FindRecipeResult; -import gregtech.api.util.GTPP_Recipe.GTPP_Recipe_Map; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -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.core.block.ModBlocks; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_ElementalDataOrbHolder; @@ -252,7 +238,6 @@ public class GregtechMTE_ElementalDuplicator extends GregtechMeta_MultiBlockBase } if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_ElementalDataOrbHolder) { try { - ((GT_MetaTileEntity_Hatch_ElementalDataOrbHolder) aMetaTileEntity).mRecipeMap = getRecipeMap(); return addToMachineListInternal(mReplicatorDataOrbHatches, aMetaTileEntity, aBaseCasingIndex); } catch (Throwable t) { t.printStackTrace(); @@ -283,8 +268,8 @@ public class GregtechMTE_ElementalDuplicator extends GregtechMeta_MultiBlockBase } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe_Map.sElementalDuplicatorRecipes; + public RecipeMap<?> 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<ItemStack> getStoredInputs() { ArrayList<ItemStack> 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<GT_Recipe> 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<GT_Recipe> 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<Greg } @Override - public GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe_Map.sLiquidFluorineThoriumReactorRecipes; + public RecipeMap<?> 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; @@ -173,6 +174,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(); if (!isCorrectMachinePart(controllerStack) && !replaceTool()) @@ -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<RecipeMap<?>> 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<GT_Recipe> 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; @@ -192,11 +198,6 @@ public class GregtechMTE_AlgaePondBase extends GregtechMeta_MultiBlockBase<Gregt } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return null; - } - - @Override public int getMaxParallelRecipes() { return 2; } @@ -309,14 +310,11 @@ public class GregtechMTE_AlgaePondBase extends GregtechMeta_MultiBlockBase<Gregt protected ProcessingLogic createProcessingLogic() { return new ProcessingLogic() { - @NotNull + @Nonnull @Override - protected FindRecipeResult findRecipe(GT_Recipe.GT_Recipe_Map map) { - GT_Recipe recipe = RecipeLoader_AlgaeFarm.getTieredRecipeFromCache(mLevel, isUsingCompost(inputItems)); - if (recipe != null) { - return FindRecipeResult.ofSuccess(recipe); - } - return FindRecipeResult.NOT_FOUND; + protected Stream<GT_Recipe> 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<Gregt } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GTPP_Recipe.GTPP_Recipe_Map.sChemicalPlantRecipes; + public RecipeMap<?> getRecipeMap() { + return GTPPRecipeMaps.chemicalPlantRecipes; } @Override @@ -675,7 +676,6 @@ public class GregtechMTE_ChemicalPlant extends GregtechMeta_MultiBlockBase<Gregt tItems.add(this.getControllerSlot()); } for (GT_MetaTileEntity_Hatch_Catalysts tHatch : filterValidMTEs(mCatalystBuses)) { - tHatch.mRecipeMap = getRecipeMap(); AutoMap<ItemStack> 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,7 +73,7 @@ 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; } @@ -79,6 +81,16 @@ public class GT_MTE_LargeTurbine_Gas extends GregtechMetaTileEntity_LargerTurbin } @Override + public RecipeMap<FuelBackend> getRecipeMap() { + return RecipeMaps.gasTurbineFuels; + } + + @Override + public int getRecipeCatalystPriority() { + return -20; + } + + @Override public @NotNull CheckRecipeResult checkProcessing() { List<FluidStack> fluids = getStoredFluids(); for (FluidStack fluid : fluids) { 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,7 +69,7 @@ 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; } @@ -75,6 +77,16 @@ public class GT_MTE_LargeTurbine_Plasma extends GregtechMetaTileEntity_LargerTur } @Override + public RecipeMap<FuelBackend> getRecipeMap() { + return RecipeMaps.plasmaFuels; + } + + @Override + public int getRecipeCatalystPriority() { + return -20; + } + + @Override public @NotNull CheckRecipeResult checkProcessing() { try { 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<ItemStack> 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<ItemStack> 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<ItemStack> 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<GT_Recipe> 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<GT_Recipe> 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<GregtechItemList, Integer, String, String> 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) { |