diff options
Diffstat (limited to 'src')
72 files changed, 1028 insertions, 1696 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/AcidGenFuelAdder.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/AcidGenFuelAdder.java deleted file mode 100644 index 1e254993d4..0000000000 --- a/src/main/java/com/github/bartimaeusnek/bartworks/API/AcidGenFuelAdder.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2018-2020 bartimaeusnek Permission is hereby granted, free of charge, to any person obtaining a copy of - * this software and associated documentation files (the "Software"), to deal in the Software without restriction, - * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following - * conditions: The above copyright notice and this permission notice shall be included in all copies or substantial - * portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - -package com.github.bartimaeusnek.bartworks.API; - -import net.minecraftforge.fluids.FluidStack; - -import com.github.bartimaeusnek.bartworks.util.BWRecipes; - -import gregtech.api.enums.Materials; - -public final class AcidGenFuelAdder { - - public static void addLiquidFuel(Materials M, int burn) { - ((BWRecipes.BW_Recipe_Map_LiquidFuel) BWRecipes.instance.getMappingsFor((byte) 2)).addLiquidFuel(M, burn); - } - - public static void addLiquidFuel(FluidStack fluidStack, int burn) { - ((BWRecipes.BW_Recipe_Map_LiquidFuel) BWRecipes.instance.getMappingsFor((byte) 2)) - .addLiquidFuel(fluidStack, burn); - } - - public static void addMoltenFuel(Materials M, int burn) { - ((BWRecipes.BW_Recipe_Map_LiquidFuel) BWRecipes.instance.getMappingsFor((byte) 2)).addMoltenFuel(M, burn); - } -} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java index fc09d943bc..4d28c5fb46 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/BioObjectAdder.java @@ -14,7 +14,7 @@ package com.github.bartimaeusnek.bartworks.API; import static gregtech.api.enums.Mods.Gendustry; -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 java.awt.Color; @@ -177,7 +177,7 @@ public final class BioObjectAdder { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)) .fluidInputs(new FluidStack(B.getFluid(), 1000)).fluidOutputs(dnaFluid).duration(25 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_MV).addTo(centrifugeRecipes); } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/BioRecipeAdder.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/BioRecipeAdder.java index 527b62bae3..b1e3fb25df 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/API/BioRecipeAdder.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/BioRecipeAdder.java @@ -123,46 +123,4 @@ public final class BioRecipeAdder { aSpecialValue, exactSv); } - - // public static boolean addBacterialVatRecipe(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] - // aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSievert) { - // return BWRecipes.instance.addBacterialVatRecipe(aInputs, aOutputs, aFluidInputs, aFluidOutputs, aDuration, - // aEUt, aSievert); - // } - - // @Deprecated - // public static boolean addBioLabRecipeDNAExtraction(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - // FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue){ - // return BWRecipes.instance.addBioLabRecipeDNAExtraction(aInputs, aOutput, aChances, aFluidInputs, - // aFluidOutputs, aDuration, aEUt, aSpecialValue); - // } - // - // @Deprecated - // public static boolean addBioLabRecipePCRThermoclycling(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - // FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue){ - // return BWRecipes.instance.addBioLabRecipePCRThermoclycling(aInputs, aOutput, aChances, aFluidInputs, - // aFluidOutputs, aDuration, aEUt, aSpecialValue); - // } - // - // @Deprecated - // public static boolean addBioLabRecipePlasmidSynthesis(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - // FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue){ - // return BWRecipes.instance.addBioLabRecipePlasmidSynthesis(aInputs, aOutput, aChances, aFluidInputs, - // aFluidOutputs, aDuration, aEUt, aSpecialValue); - // } - // - // @Deprecated - // public static boolean addBioLabRecipeTransformation(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - // FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue){ - // return BWRecipes.instance.addBioLabRecipeTransformation(aInputs, aOutput, aChances, aFluidInputs, - // aFluidOutputs, aDuration, aEUt, aSpecialValue); - // } - // - // @Deprecated - // public static boolean addBioLabRecipeClonalCellularSynthesis(ItemStack[] aInputs, ItemStack aOutput, int[] - // aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue){ - // return BWRecipes.instance.addBioLabRecipeClonalCellularSynthesis(aInputs, aOutput, aChances, aFluidInputs, - // aFluidOutputs, aDuration, aEUt, aSpecialValue); - // } - } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BWNBTDependantCraftingRecipe.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BWNBTDependantCraftingRecipe.java new file mode 100644 index 0000000000..dfcf94115a --- /dev/null +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BWNBTDependantCraftingRecipe.java @@ -0,0 +1,76 @@ +package com.github.bartimaeusnek.bartworks.API.recipe; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +import net.minecraft.inventory.InventoryCrafting; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.world.World; + +import com.github.bartimaeusnek.bartworks.util.BW_Util; + +public class BWNBTDependantCraftingRecipe implements IRecipe { + + ItemStack result; + Map<Character, ItemStack> charToStackMap = new HashMap<>(9, 1); + String[] shape; + + @SuppressWarnings({ "SuspiciousSystemArraycopy" }) + public BWNBTDependantCraftingRecipe(ItemStack result, Object... recipe) { + this.result = result; + this.shape = new String[3]; + System.arraycopy(recipe, 0, this.shape, 0, 3); + this.charToStackMap.put(' ', null); + for (int i = 3; i < recipe.length; i += 2) { + this.charToStackMap.put((char) recipe[i], ((ItemStack) recipe[i + 1]).copy()); + } + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (!(o instanceof BWNBTDependantCraftingRecipe that)) return false; + + if (!Objects.equals(this.result, that.result) || !Objects.equals(this.charToStackMap, that.charToStackMap)) + return false; + // Probably incorrect - comparing Object[] arrays with Arrays.equals + return Arrays.equals(this.shape, that.shape); + } + + @Override + public int hashCode() { + int result1 = this.result != null ? this.result.hashCode() : 0; + result1 = 31 * result1 + (this.charToStackMap != null ? this.charToStackMap.hashCode() : 0); + return 31 * result1 + Arrays.hashCode(this.shape); + } + + @Override + public boolean matches(InventoryCrafting p_77569_1_, World p_77569_2_) { + for (int x = 0; x < 3; x++) { + for (int y = 0; y < 3; y++) { + ItemStack toCheck = p_77569_1_.getStackInRowAndColumn(y, x); + ItemStack ref = this.charToStackMap.get(this.shape[x].toCharArray()[y]); + if (!BW_Util.areStacksEqualOrNull(toCheck, ref)) return false; + } + } + return true; + } + + @Override + public ItemStack getCraftingResult(InventoryCrafting p_77572_1_) { + return this.result.copy(); + } + + @Override + public int getRecipeSize() { + return 10; + } + + @Override + public ItemStack getRecipeOutput() { + return this.result; + } +} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BacterialVatFrontend.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BacterialVatFrontend.java new file mode 100644 index 0000000000..6ed4113017 --- /dev/null +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BacterialVatFrontend.java @@ -0,0 +1,92 @@ +package com.github.bartimaeusnek.bartworks.API.recipe; + +import java.util.Arrays; +import java.util.List; + +import javax.annotation.ParametersAreNonnullByDefault; + +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.StatCollector; + +import com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_BioVat; +import com.gtnewhorizons.modularui.api.math.Alignment; + +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; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class BacterialVatFrontend extends RecipeMapFrontend { + + public BacterialVatFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder, + NEIRecipePropertiesBuilder neiPropertiesBuilder) { + super( + uiPropertiesBuilder, + neiPropertiesBuilder.neiSpecialInfoFormatter(new BacterialVatSpecialValueFormatter())); + } + + @Override + protected List<String> handleNEIItemInputTooltip(List<String> currentTip, + GT_NEI_DefaultHandler.FixedPositionedStack pStack) { + if (pStack.isFluid()) { + currentTip.add(EnumChatFormatting.GRAY + StatCollector.translateToLocal("nei.biovat.input.tooltip")); + return currentTip; + } + return super.handleNEIItemInputTooltip(currentTip, pStack); + } + + @Override + protected List<String> handleNEIItemOutputTooltip(List<String> currentTip, + GT_NEI_DefaultHandler.FixedPositionedStack pStack) { + if (pStack.isFluid()) { + currentTip.add(EnumChatFormatting.GRAY + StatCollector.translateToLocal("nei.biovat.output.tooltip")); + return currentTip; + } + return super.handleNEIItemOutputTooltip(currentTip, pStack); + } + + @Override + protected void drawNEIOverlayForInput(GT_NEI_DefaultHandler.FixedPositionedStack stack) { + drawFluidOverlay(stack); + } + + @Override + protected void drawNEIOverlayForOutput(GT_NEI_DefaultHandler.FixedPositionedStack stack) { + drawFluidOverlay(stack); + } + + private void drawFluidOverlay(GT_NEI_DefaultHandler.FixedPositionedStack stack) { + if (stack.isFluid()) { + drawNEIOverlayText( + "+", + stack, + colorOverride.getTextColorOrDefault("nei_overlay_yellow", 0xFDD835), + 0.5f, + true, + Alignment.TopRight); + return; + } + super.drawNEIOverlayForOutput(stack); + } + + private static class BacterialVatSpecialValueFormatter implements INEISpecialInfoFormatter { + + @Override + public List<String> format(RecipeDisplayInfo recipeInfo) { + int[] tSpecialA = GT_TileEntity_BioVat.specialValueUnpack(recipeInfo.recipe.mSpecialValue); + String glassTier = StatCollector.translateToLocalFormatted("nei.biovat.0.name", tSpecialA[0]); + String sievert; + if (tSpecialA[2] == 1) { + sievert = StatCollector.translateToLocalFormatted("nei.biovat.1.name", tSpecialA[3]); + } else { + sievert = StatCollector.translateToLocalFormatted("nei.biovat.2.name", tSpecialA[3]); + } + return Arrays.asList(glassTier, sievert); + } + } +} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BartWorksRecipeMaps.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BartWorksRecipeMaps.java new file mode 100644 index 0000000000..97fa74bf85 --- /dev/null +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/BartWorksRecipeMaps.java @@ -0,0 +1,64 @@ +package com.github.bartimaeusnek.bartworks.API.recipe; + +import com.github.bartimaeusnek.bartworks.API.modularUI.BW_UITextures; + +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.FuelBackend; +import gregtech.nei.formatter.FuelSpecialValueFormatter; + +public class BartWorksRecipeMaps { + + public static final RecipeMap<RecipeMapBackend> bioLabRecipes = RecipeMapBuilder.of("bw.recipe.biolab") + .maxIO(6, 2, 1, 0).minInputs(1, 1).useSpecialSlot().slotOverlays((index, isFluid, isOutput, isSpecial) -> { + if (isSpecial) { + return BW_UITextures.OVERLAY_SLOT_MODULE; + } + if (isFluid) { + return GT_UITextures.OVERLAY_SLOT_VIAL_2; + } + if (!isOutput) { + switch (index) { + case 0: + return BW_UITextures.OVERLAY_SLOT_DISH; + case 1: + return BW_UITextures.OVERLAY_SLOT_DNA_FLASK; + case 2: + return GT_UITextures.OVERLAY_SLOT_CIRCUIT; + case 3: + return GT_UITextures.OVERLAY_SLOT_MOLECULAR_1; + case 4: + return GT_UITextures.OVERLAY_SLOT_MOLECULAR_2; + case 5: + return GT_UITextures.OVERLAY_SLOT_DATA_ORB; + } + } + return null; + }).progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE).logo(BW_UITextures.PICTURE_BW_LOGO_47X21) + .logoSize(47, 21).logoPos(125, 3).disableRegisterNEI().build(); + public static final RecipeMap<RecipeMapBackend> bacterialVatRecipes = RecipeMapBuilder.of("bw.recipe.BacteriaVat") + .maxIO(6, 2, 1, 1).minInputs(0, 1).useSpecialSlot().specialSlotSensitive() + .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE).frontend(BacterialVatFrontend::new) + .disableRegisterNEI().build(); + public static final RecipeMap<FuelBackend> acidGenFuels = RecipeMapBuilder.of("bw.fuels.acidgens", FuelBackend::new) + .maxIO(1, 1, 0, 0).neiSpecialInfoFormatter(FuelSpecialValueFormatter.INSTANCE).build(); + public static final RecipeMap<RecipeMapBackend> circuitAssemblyLineRecipes = RecipeMapBuilder.of("bw.recipe.cal") + .maxIO(6, 1, 1, 0).minInputs(1, 1).useSpecialSlot().specialSlotSensitive() + .progressBar(GT_UITextures.PROGRESSBAR_CIRCUIT_ASSEMBLER).build(); + public static final RecipeMap<RecipeMapBackend> radioHatchRecipes = RecipeMapBuilder.of("bw.recipe.radhatch") + .maxIO(1, 0, 0, 0).minInputs(1, 0) + .slotOverlays((index, isFluid, isOutput, isSpecial) -> BW_UITextures.OVERLAY_SLOT_ROD) + .logo(BW_UITextures.PICTURE_BW_LOGO_47X21).logoSize(47, 21).logoPos(118, 55).dontUseProgressBar() + .addSpecialTexture(74, 20, 29, 27, BW_UITextures.PICTURE_RADIATION).frontend(RadioHatchFrontend::new) + .build(); + public static final RecipeMap<RecipeMapBackend> electricImplosionCompressorRecipes = RecipeMapBuilder + .of("gt.recipe.electricimplosioncompressor").maxIO(6, 2, 1, 1) + .slotOverlays( + (index, isFluid, isOutput, + isSpecial) -> !isFluid && !isOutput ? GT_UITextures.OVERLAY_SLOT_IMPLOSION : null) + .progressBar(GT_UITextures.PROGRESSBAR_COMPRESS).build(); + public static final RecipeMap<RecipeMapBackend> htgrFakeRecipes = RecipeMapBuilder.of("bw.recipe.htgr") + .maxIO(1, 1, 0, 0).build(); +} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/DynamicGTRecipe.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/DynamicGTRecipe.java new file mode 100644 index 0000000000..3087255e51 --- /dev/null +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/DynamicGTRecipe.java @@ -0,0 +1,34 @@ +package com.github.bartimaeusnek.bartworks.API.recipe; + +import java.util.ArrayList; + +import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; + +import com.github.bartimaeusnek.bartworks.MainMod; + +import gregtech.api.util.GT_Recipe; + +public class DynamicGTRecipe extends GT_Recipe { + + public DynamicGTRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, + int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, + int aSpecialValue, GT_Recipe originalRecipe) { + super( + aOptimize, + aInputs, + aOutputs, + aSpecialItems, + aChances, + aFluidInputs, + aFluidOutputs, + aDuration, + aEUt, + aSpecialValue); + if (originalRecipe != null) { + this.owners = new ArrayList<>(originalRecipe.owners); + this.stackTraces = new ArrayList<>(originalRecipe.stackTraces); + this.setOwner(MainMod.MOD_ID); + } + } +} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/RadioHatchFrontend.java b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/RadioHatchFrontend.java new file mode 100644 index 0000000000..0309a676d9 --- /dev/null +++ b/src/main/java/com/github/bartimaeusnek/bartworks/API/recipe/RadioHatchFrontend.java @@ -0,0 +1,45 @@ +package com.github.bartimaeusnek.bartworks.API.recipe; + +import java.util.Arrays; +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.RecipeDisplayInfo; +import gregtech.nei.formatter.INEISpecialInfoFormatter; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class RadioHatchFrontend extends RecipeMapFrontend { + + public RadioHatchFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder, + NEIRecipePropertiesBuilder neiPropertiesBuilder) { + super(uiPropertiesBuilder, neiPropertiesBuilder.neiSpecialInfoFormatter(new RadioHatchSpecialInfoFormatter())); + } + + @Override + protected void drawEnergyInfo(RecipeDisplayInfo recipeInfo) {} + + @Override + protected void drawDurationInfo(RecipeDisplayInfo recipeInfo) {} + + private static class RadioHatchSpecialInfoFormatter implements INEISpecialInfoFormatter { + + @Override + public List<String> format(RecipeDisplayInfo recipeInfo) { + int radioLevel = recipeInfo.recipe.mEUt; + int amount = recipeInfo.recipe.mDuration; + long time = recipeInfo.recipe.mSpecialValue; + return Arrays.asList( + StatCollector.translateToLocalFormatted("BW.NEI.display.radhatch.0", radioLevel), + StatCollector.translateToLocalFormatted("BW.NEI.display.radhatch.1", amount), + StatCollector.translateToLocalFormatted("BW.NEI.display.radhatch.2", time * amount / 20.0)); + } + } +} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java b/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java index e4a73d1996..86f33d91ef 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java @@ -52,7 +52,6 @@ import com.github.bartimaeusnek.bartworks.common.loaders.RecipeLoader; import com.github.bartimaeusnek.bartworks.common.loaders.RegisterServerCommands; import com.github.bartimaeusnek.bartworks.common.loaders.StaticRecipeChangeLoaders; import com.github.bartimaeusnek.bartworks.common.net.BW_Network; -import com.github.bartimaeusnek.bartworks.neiHandler.IMCForNEI; import com.github.bartimaeusnek.bartworks.server.EventHandler.ServerEventHandler; import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.CircuitImprintLoader; import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.CircuitPartLoader; @@ -76,9 +75,9 @@ import cpw.mods.fml.common.network.IGuiHandler; import cpw.mods.fml.common.network.NetworkRegistry; import gregtech.api.GregTech_API; import gregtech.api.enums.Mods; +import gregtech.api.recipe.RecipeMap; import gregtech.api.recipe.check.CheckRecipeResultRegistry; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; @Mod(modid = MainMod.MOD_ID, name = MainMod.NAME, version = API_REFERENCE.VERSION, dependencies = """ required-after:IC2;\ @@ -155,7 +154,6 @@ public final class MainMod { WerkstoffLoader.runInit(); ItemRegistry.run(); - IMCForNEI.IMCSender(); } @Mod.EventHandler @@ -224,6 +222,6 @@ public final class MainMod { // StaticRecipeChangeLoaders.synchroniseCircuitUseMulti(); // Accept recipe map changes into Buffers - GT_Recipe.GT_Recipe_Map.sMappings.forEach(GT_Recipe.GT_Recipe_Map::reInit); + RecipeMap.ALL_RECIPE_MAPS.values().forEach(map -> map.getBackend().reInit()); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java index ea533e4b4b..32b366440b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ArtificialMicaLine.java @@ -1,10 +1,10 @@ package com.github.bartimaeusnek.bartworks.common.loaders; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.recipe.RecipeMaps.benderRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; @@ -21,6 +21,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -49,7 +50,7 @@ public class ArtificialMicaLine { .itemOutputs(WerkstoffLoader.Potassiumfluorosilicate.get(OrePrefixes.dust, 9)) .fluidInputs(WerkstoffLoader.HexafluorosilicicAcid.getFluidOrGas(1000)) .fluidOutputs(Materials.HydrochloricAcid.getFluid(2000)).duration(1 * SECONDS).eut(8) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); // 2K + CO2 + O = K2CO3 @@ -73,7 +74,7 @@ public class ArtificialMicaLine { .itemOutputs( WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27)) - .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_MV).addTo(mixerRecipes); // 55Quartzite/Nether Quartz Dust + 20K2SiF6 + 57Al2O3 + 4K2CO3 = 136Raw Fluorophlogopite Dust GT_Values.RA.stdBuilder() @@ -87,7 +88,7 @@ public class ArtificialMicaLine { WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 8)) - .fluidInputs().fluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .fluidInputs().fluidOutputs().duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -100,7 +101,7 @@ public class ArtificialMicaLine { WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 8)) - .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(mixerRecipes); // 62Certus Quartz Dust + 10K2SiF6 + 12Al2O3 + 7K2CO3 = 91Raw Fluorophlogopite Dust GT_Values.RA.stdBuilder() @@ -113,22 +114,22 @@ public class ArtificialMicaLine { .itemOutputs( WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 64), WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27)) - .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sMixerRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(mixerRecipes); // MgO(s) = MgO(l) GT_Values.RA.stdBuilder().itemInputs(Materials.Magnesia.getDust(1)) .fluidOutputs(Materials.Magnesia.getMolten(144)).duration(20 * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sFluidExtractionRecipes); + .addTo(fluidExtractionRecipes); // 27Raw Fluorophlogopite Dust + 720MgO(l) = 4608Fluorophlogopite(l) GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.RawFluorophlogopite.get(OrePrefixes.dust, 27)) .itemOutputs(Materials.Glass.getDust(1)).fluidInputs(BW_GT_MaterialReference.Magnesia.getMolten(720)) .fluidOutputs(WerkstoffLoader.HotFluorophlogopite.getFluidOrGas(4608)).duration(30 * SECONDS) - .eut(TierEU.RECIPE_HV).metadata(COIL_HEAT, 1700).addTo(sBlastRecipes); + .eut(TierEU.RECIPE_HV).metadata(COIL_HEAT, 1700).addTo(blastFurnaceRecipes); // 144Fluorophlogopite(l) = Fluorophlogopite - GT_Recipe.GT_Recipe_Map.sVacuumRecipes.addRecipe( + RecipeMaps.vacuumFreezerRecipes.addRecipe( new GT_Recipe( false, new ItemStack[] { ItemList.Shape_Mold_Plate.get(0) }, @@ -148,7 +149,7 @@ public class ArtificialMicaLine { WerkstoffLoader.Fluorophlogopite.get(OrePrefixes.plate, 1), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.MicaInsulatorFoil", 4)) - .duration(10 * TICKS).eut(600).addTo(sBenderRecipes); + .duration(10 * TICKS).eut(600).addTo(benderRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java index c4589c3a3f..e4f2c73e32 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BioRecipeLoader.java @@ -28,8 +28,8 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; public class BioRecipeLoader { @@ -180,7 +180,7 @@ public class BioRecipeLoader { } public static void runOnServerStarted() { - GT_Recipe.GT_Recipe_Map.sFermentingRecipes.mRecipeList.forEach( + RecipeMaps.fermentingRecipes.getAllRecipes().forEach( recipe -> BWRecipes.instance.addBacterialVatRecipe( new ItemStack[] { null }, BioCultureLoader.generalPurposeFermentingBacteria, diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ElectricImplosionCompressorRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ElectricImplosionCompressorRecipes.java index c38e9cd7c0..500dfb6faf 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ElectricImplosionCompressorRecipes.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/ElectricImplosionCompressorRecipes.java @@ -11,7 +11,7 @@ import static gregtech.api.util.GT_ModHandler.getModItem; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -26,7 +26,7 @@ public class ElectricImplosionCompressorRecipes implements Runnable { private static void addElectricImplosionRecipe(final ItemStack[] inputItems, final FluidStack[] inputFluids, final ItemStack[] outputItems, final FluidStack[] outputFluids, final int durationInTicks, final int EUPerTick) { - BWRecipes.instance.eicMap.addRecipe( + BartWorksRecipeMaps.electricImplosionCompressorRecipes.addRecipe( false, inputItems, outputItems, diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java index 6f4b237473..0c92005f6f 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/FluidLoader.java @@ -15,7 +15,7 @@ package com.github.bartimaeusnek.bartworks.common.loaders; import static gregtech.api.enums.Mods.Gendustry; import static gregtech.api.enums.Mods.GregTech; -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 java.awt.Color; @@ -96,7 +96,7 @@ public class FluidLoader { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)) .fluidInputs(new FluidStack(B.getFluid(), 1000)).fluidOutputs(dnaFluid).duration(25 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_MV).addTo(centrifugeRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java index 0cba765189..a44bcf57e8 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java @@ -15,7 +15,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders; import static com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader.ANAEROBE_GAS; import static com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader.NOBLE_GAS; -import static com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader.Oganesson; import static com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader.fluids; import static com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader.molten; import static gregtech.api.enums.GT_Values.VN; @@ -24,9 +23,7 @@ import static gregtech.api.enums.Mods.TinkerConstruct; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.HashSet; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Objects; @@ -35,15 +32,15 @@ import java.util.Set; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidContainerRegistry; -import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.oredict.OreDictionary; import org.apache.commons.lang3.StringUtils; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; +import com.github.bartimaeusnek.bartworks.API.recipe.DynamicGTRecipe; import com.github.bartimaeusnek.bartworks.MainMod; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.StreamUtils; import com.github.bartimaeusnek.bartworks.util.log.DebugLog; @@ -59,10 +56,11 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; import gregtech.api.enums.TierEU; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.recipe.RecipeMap; +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; public class StaticRecipeChangeLoaders { @@ -106,8 +104,8 @@ public class StaticRecipeChangeLoaders { } public static void fixEnergyRequirements() { - GT_Recipe.GT_Recipe_Map.sMappings.stream().filter(StreamUtils::filterVisualMaps) - .forEach(gt_recipe_map -> gt_recipe_map.mRecipeList.parallelStream().forEach(gt_recipe -> { + RecipeMap.ALL_RECIPE_MAPS.values().stream().filter(StreamUtils::filterVisualMaps) + .forEach(recipeMap -> recipeMap.getAllRecipes().parallelStream().forEach(gt_recipe -> { for (int i = 0; i < VN.length - 1; i++) { if (gt_recipe.mEUt > BW_Util.getMachineVoltageFromTier(i) && gt_recipe.mEUt <= BW_Util.getTierVoltage(i)) { @@ -117,66 +115,10 @@ public class StaticRecipeChangeLoaders { })); } - private static void replaceWrongFluidOutput(Werkstoff werkstoff, GT_Recipe recipe, FluidStack wrongNamedFluid) { - for (int i = 0; i < recipe.mFluidOutputs.length; i++) { - if (GT_Utility.areFluidsEqual(recipe.mFluidOutputs[i], wrongNamedFluid)) { - recipe.mFluidOutputs[i] = werkstoff.getFluidOrGas(recipe.mFluidOutputs[i].amount); - } - } - } - - private static void replaceWrongFluidInput(Werkstoff werkstoff, GT_Recipe.GT_Recipe_Map map, GT_Recipe recipe, - FluidStack wrongNamedFluid) { - for (int i = 0; i < recipe.mFluidInputs.length; i++) { - if (GT_Utility.areFluidsEqual(recipe.mFluidInputs[i], wrongNamedFluid)) { - Collection<GT_Recipe> col = map.mRecipeFluidMap.get(wrongNamedFluid.getFluid().getName()); - map.mRecipeFluidMap.remove(wrongNamedFluid.getFluid().getName()); - map.mRecipeFluidMap.put(werkstoff.getFluidOrGas(1).getFluid().getName(), col); - recipe.mFluidInputs[i] = werkstoff.getFluidOrGas(recipe.mFluidInputs[i].amount); - map.mRecipeFluidNameMap.add(werkstoff.getFluidOrGas(1).getFluid().getName()); - } - } - } - - private static void addConversionRecipe(Werkstoff werkstoff, FluidStack wrongNamedFluid) { - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.add( - new BWRecipes.DynamicGTRecipe( - false, - null, - null, - null, - null, - new FluidStack[] { wrongNamedFluid }, - new FluidStack[] { werkstoff.getFluidOrGas(1) }, - 1, - 1, - 0)); - } - - private static FluidStack getWrongNameFluid(Werkstoff werkstoff) { - String name = werkstoff.getFluidOrGas(1).getFluid().getName(); - String wrongname = "molten." + name; - return FluidRegistry.getFluidStack(wrongname, 1); - } - - private static void enforceNobleGas(Werkstoff werkstoff) { - FluidStack wrongNamedFluid = getWrongNameFluid(werkstoff); - if (wrongNamedFluid != null) { - GT_Recipe.GT_Recipe_Map.sMappings.forEach(map -> map.mRecipeList.forEach(recipe -> { - replaceWrongFluidInput(werkstoff, map, recipe, wrongNamedFluid); - replaceWrongFluidOutput(werkstoff, recipe, wrongNamedFluid); - })); - addConversionRecipe(werkstoff, wrongNamedFluid); - } - } - public static void unificationRecipeEnforcer() { for (Werkstoff werkstoff : Werkstoff.werkstoffHashSet) { StaticRecipeChangeLoaders.runMaterialLinker(werkstoff); if (werkstoff.getGenerationFeatures().enforceUnification) { - - if (werkstoff.contains(NOBLE_GAS)) enforceNobleGas(werkstoff); - HashSet<String> oreDictNames = new HashSet<>(werkstoff.getADDITIONAL_OREDICT()); oreDictNames.add(werkstoff.getVarName()); StaticRecipeChangeLoaders.runMoltenUnificationEnfocement(werkstoff); @@ -193,16 +135,15 @@ public class StaticRecipeChangeLoaders { || replacement == null || replacement.getItem() == null) continue; - for (GT_Recipe.GT_Recipe_Map map : GT_Recipe.GT_Recipe_Map.sMappings) { - nextRecipe: for (Iterator<GT_Recipe> iterator = map.mRecipeList.iterator(); iterator - .hasNext();) { - GT_Recipe recipe = iterator.next(); - boolean removal = map.equals(GT_Recipe_Map.sFluidExtractionRecipes) - || map.equals(GT_Recipe_Map.sFluidSolidficationRecipes); + for (RecipeMap<?> map : RecipeMap.ALL_RECIPE_MAPS.values()) { + List<GT_Recipe> toRemove = new ArrayList<>(); + nextRecipe: for (GT_Recipe recipe : map.getAllRecipes()) { + boolean removal = map.equals(RecipeMaps.fluidExtractionRecipes) + || map.equals(RecipeMaps.fluidSolidifierRecipes); for (int i = 0; i < recipe.mInputs.length; i++) { if (!GT_Utility.areStacksEqual(recipe.mInputs[i], toReplace)) continue; if (removal) { - iterator.remove(); + toRemove.add(recipe); continue nextRecipe; } recipe.mInputs[i] = GT_Utility.copyAmount(recipe.mInputs[i].stackSize, replacement); @@ -210,7 +151,7 @@ public class StaticRecipeChangeLoaders { for (int i = 0; i < recipe.mOutputs.length; i++) { if (!GT_Utility.areStacksEqual(recipe.mOutputs[i], toReplace)) continue; if (removal) { - iterator.remove(); + toRemove.add(recipe); continue nextRecipe; } recipe.mOutputs[i] = GT_Utility @@ -219,13 +160,14 @@ public class StaticRecipeChangeLoaders { if (recipe.mSpecialItems instanceof ItemStack specialItemStack) { if (!GT_Utility.areStacksEqual(specialItemStack, toReplace)) continue; if (removal) { - iterator.remove(); + toRemove.add(recipe); continue nextRecipe; } recipe.mSpecialItems = GT_Utility .copyAmount(specialItemStack.stackSize, replacement); } } + map.getBackend().removeRecipes(toRemove); } } } @@ -260,9 +202,9 @@ public class StaticRecipeChangeLoaders { sFilledContainerToData.entrySet().removeAll(toremFilledContainerToData); Set<GT_Recipe> toremRecipeList = new HashSet<>(); if (toReplace != null) { - for (GT_Recipe.GT_Recipe_Map map : GT_Recipe.GT_Recipe_Map.sMappings) { + for (RecipeMap<?> map : RecipeMap.ALL_RECIPE_MAPS.values()) { toremRecipeList.clear(); - for (GT_Recipe recipe : map.mRecipeList) { + for (GT_Recipe recipe : map.getAllRecipes()) { for (ItemStack mInput : recipe.mInputs) { if (GT_Utility.areStacksEqual(mInput, toReplace)) { toremRecipeList.add(recipe); @@ -273,7 +215,7 @@ public class StaticRecipeChangeLoaders { if (GT_Utility.areStacksEqual(mOutput, toReplace)) { toremRecipeList.add(recipe); // recipe.mOutputs[i] = data.filledContainer; - if (map == GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes + if (map == RecipeMaps.fluidCannerRecipes && GT_Utility.areStacksEqual(mOutput, data.filledContainer) && !recipe.mFluidInputs[0].equals(data.fluid)) { toremRecipeList.add(recipe); @@ -287,7 +229,7 @@ public class StaticRecipeChangeLoaders { // recipe.mSpecialItems = data.filledContainer; } } - map.mRecipeList.removeAll(toremRecipeList); + map.getBackend().removeRecipes(toremRecipeList); } } GT_Utility.addFluidContainerData(data); @@ -339,7 +281,7 @@ public class StaticRecipeChangeLoaders { */ private static ArrayListMultimap<SubTag, GT_Recipe> getRecipesToChange(SubTag... GasTags) { ArrayListMultimap<SubTag, GT_Recipe> toAdd = ArrayListMultimap.create(); - for (GT_Recipe recipe : GT_Recipe.GT_Recipe_Map.sBlastRecipes.mRecipeList) { + for (GT_Recipe recipe : RecipeMaps.blastFurnaceRecipes.getAllRecipes()) { if (recipe.mFluidInputs != null && recipe.mFluidInputs.length > 0) { Materials mat = getMaterialFromInputFluid(recipe); if (mat != Materials._NULL) { @@ -366,7 +308,7 @@ public class StaticRecipeChangeLoaders { private static HashSet<ItemStack> getNoGasItems(ArrayListMultimap<SubTag, GT_Recipe> base) { HashSet<ItemStack> toAdd = new HashSet<>(); ArrayListMultimap<SubTag, GT_Recipe> repToAdd = ArrayListMultimap.create(); - for (GT_Recipe recipe : GT_Recipe.GT_Recipe_Map.sBlastRecipes.mRecipeList) { + for (GT_Recipe recipe : RecipeMaps.blastFurnaceRecipes.getAllRecipes()) { for (SubTag tag : base.keySet()) recipeLoop: for (GT_Recipe baseRe : base.get(tag)) { if (recipe.mInputs.length == baseRe.mInputs.length && recipe.mOutputs.length == baseRe.mOutputs.length) for (int i = 0; i < recipe.mInputs.length; i++) { @@ -435,7 +377,7 @@ public class StaticRecipeChangeLoaders { && recipe.mFluidInputs[0].isFluidEqual(newGas.getGas(0))) { // preserve original recipe owner toAdd.add( - new BWRecipes.DynamicGTRecipe( + new DynamicGTRecipe( false, recipe.mInputs, recipe.mOutputs, @@ -450,7 +392,7 @@ public class StaticRecipeChangeLoaders { } else { // new recipe toAdd.add( - new BWRecipes.DynamicGTRecipe( + new GT_Recipe( false, recipe.mInputs, recipe.mOutputs, @@ -481,7 +423,7 @@ public class StaticRecipeChangeLoaders { .isFluidEqual(new FluidStack(Objects.requireNonNull(fluids.get(newGas)), 0))) { // preserve original recipe owner toAdd.add( - new BWRecipes.DynamicGTRecipe( + new DynamicGTRecipe( false, recipe.mInputs, recipe.mOutputs, @@ -497,7 +439,7 @@ public class StaticRecipeChangeLoaders { } else { // new recipe toAdd.add( - new BWRecipes.DynamicGTRecipe( + new GT_Recipe( false, recipe.mInputs, recipe.mOutputs, @@ -535,7 +477,7 @@ public class StaticRecipeChangeLoaders { } inputs.add(GT_Utility.getIntegratedCircuit(circuitConfiguration)); toAdd.add( - new BWRecipes.DynamicGTRecipe( + new DynamicGTRecipe( false, inputs.toArray(new ItemStack[0]), recipe.mOutputs, @@ -584,10 +526,6 @@ public class StaticRecipeChangeLoaders { } private static void editRecipes(ArrayListMultimap<SubTag, GT_Recipe> base, HashSet<ItemStack> noGas) { - if (GT_Recipe.GT_Recipe_Map.sBlastRecipes.mRecipeFluidNameMap - .contains(Objects.requireNonNull(fluids.get(Oganesson)).getName())) - return; - HashSet<GT_Recipe> toAdd = new HashSet<>(); for (SubTag gasTag : base.keySet()) { @@ -601,16 +539,16 @@ public class StaticRecipeChangeLoaders { } } } - GT_Recipe.GT_Recipe_Map.sBlastRecipes.mRecipeList.removeAll(base.get(gasTag)); + RecipeMaps.blastFurnaceRecipes.getBackend().removeRecipes(base.get(gasTag)); } removeDuplicateGasRecipes(toAdd); - toAdd.forEach(GT_Recipe.GT_Recipe_Map.sBlastRecipes::add); + toAdd.forEach(RecipeMaps.blastFurnaceRecipes::add); } public static void addElectricImplosionCompressorRecipes() { - GT_Recipe.GT_Recipe_Map.sImplosionRecipes.mRecipeList.stream().filter(e -> e.mInputs != null).forEach( - recipe -> BWRecipes.instance.eicMap.addRecipe( + RecipeMaps.implosionRecipes.getAllRecipes().stream().filter(e -> e.mInputs != null).forEach( + recipe -> BartWorksRecipeMaps.electricImplosionCompressorRecipes.addRecipe( true, Arrays.stream(recipe.mInputs).filter(e -> !StaticRecipeChangeLoaders.checkForExplosives(e)) .distinct().toArray(ItemStack[]::new), diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java index 4b676367cf..7a738c722c 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Assembler.java @@ -1,7 +1,7 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static gregtech.api.enums.Mods.GregTech; -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.HOURS; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -47,7 +47,7 @@ public class Assembler implements Runnable { GT_Utility.getIntegratedCircuit(17)) .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 1)) .fluidInputs(FluidRegistry.getFluidStack("ic2coolant", 1000)).duration(5 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -55,42 +55,42 @@ public class Assembler implements Runnable { Materials.Lapis.getBlocks(8), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[1])).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1000), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.megaMachines[0]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) - .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1002), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.megaMachines[1]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) - .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1126), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.megaMachines[2]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) - .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1169), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.megaMachines[3]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) - .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( GT_ModHandler.getModItem(GregTech.ID, "gt.blockmachines", 64, 1160), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.megaMachines[4]).fluidInputs(Materials.SolderingAlloy.getMolten(9216)) - .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(sAssemblerRecipes); + .duration(1 * HOURS).eut(TierEU.RECIPE_HV).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -98,7 +98,7 @@ public class Assembler implements Runnable { GT_Utility.getIntegratedCircuit(17)) .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[2], 1, 1)) .fluidInputs(Materials.Plastic.getMolten(1152L)).duration(1 * TICKS).eut(TierEU.RECIPE_HV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -108,7 +108,7 @@ public class Assembler implements Runnable { ItemList.Battery_RE_LV_Lithium.get(1L)) .itemOutputs(new ItemStack(ItemRegistry.CIRCUIT_PROGRAMMER)) .fluidInputs(Materials.SolderingAlloy.getMolten(288L)).duration(30 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -121,7 +121,7 @@ public class Assembler implements Runnable { 1, ItemRegistry.TecTechPipeEnergyLowPower.getItemDamage())) .fluidInputs(Materials.Polytetrafluoroethylene.getMolten(72)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_EV).addTo(sAssemblerRecipes); + .eut(TierEU.RECIPE_EV).addTo(assemblerRecipes); ItemStack[][] converters = ItemRegistry.TecTechLaserAdditions[0]; ItemStack[][] input = ItemRegistry.TecTechLaserAdditions[1]; @@ -172,7 +172,7 @@ public class Assembler implements Runnable { sensors[i].get(2 * (j + 1)), ItemList.TRANSFORMERS[4 + i].get(2 * (j + 1))).itemOutputs(converter) .fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)) - .duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption).addTo(sAssemblerRecipes); + .duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack( @@ -185,8 +185,7 @@ public class Assembler implements Runnable { sensors[i].get(2 * (j + 1)), ItemList.TRANSFORMERS[4 + i].get(2 * (j + 1))) .itemOutputs(converter).fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)) - .noFluidOutputs().duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption) - .addTo(sAssemblerRecipes); + .duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -199,7 +198,7 @@ public class Assembler implements Runnable { sensors[i].get(2 * (j + 1)), ItemList.HATCHES_ENERGY[4 + i].get(2 * (j + 1))) .itemOutputs(eInput).fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)) - .duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption).addTo(sAssemblerRecipes); + .duration((10 * (j + 1)) * SECONDS).eut(recipeConsumption).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -212,7 +211,7 @@ public class Assembler implements Runnable { emitters[i].get(2 * (j + 1)), ItemList.HATCHES_DYNAMO[4 + i].get(2 * (j + 1))) .itemOutputs(eDynamo).fluidInputs(Materials.SolderingAlloy.getMolten(solderingAmount)) - .duration((10 * (j + 1) * SECONDS)).eut(recipeConsumption).addTo(sAssemblerRecipes); + .duration((10 * (j + 1) * SECONDS)).eut(recipeConsumption).addTo(assemblerRecipes); } } @@ -222,11 +221,11 @@ public class Assembler implements Runnable { Materials.LiquidAir.getCells(1), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.compressedHatch.copy()).duration(15 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Hatch_Output_HV.get(64), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(ItemRegistry.giantOutputHatch.copy()).duration(15 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -234,7 +233,7 @@ public class Assembler implements Runnable { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel, 1)) .itemOutputs(new ItemStack(GregTech_API.sBlockCasings3, 1, 12)) .fluidInputs(Materials.Concrete.getMolten(1296)).duration(2 * SECONDS).eut(TierEU.RECIPE_IV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -243,6 +242,6 @@ public class Assembler implements Runnable { GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Europium, 24)) .itemOutputs(new ItemStack(GregTech_API.sBlockCasings8, 1, 5)) .fluidInputs(Materials.Lead.getMolten(864)).duration(10 * SECONDS).eut(TierEU.RECIPE_LuV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java index b8f6c51b6c..95e52fb328 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Autoclave.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; +import static gregtech.api.recipe.RecipeMaps.autoclaveRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.init.Items; @@ -23,12 +23,12 @@ public class Autoclave implements Runnable { GT_Values.RA.stdBuilder().itemInputs(ItemList.Circuit_Parts_PetriDish.get(1L)) .itemOutputs(BioItemList.getPetriDish(null)) .fluidInputs(used.getGas(10L) != null ? used.getGas(8L) : used.getFluid(16L)).duration(5 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); + .eut(TierEU.RECIPE_LV).addTo(autoclaveRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.glass_bottle)) .itemOutputs(BioItemList.getDNASampleFlask(null)) .fluidInputs(used.getGas(10L) != null ? used.getGas(8L) : used.getFluid(16L)).duration(5 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sAutoclaveRecipes); + .eut(TierEU.RECIPE_LV).addTo(autoclaveRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java index adb84fd8a0..b8398761b4 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Centrifuge.java @@ -2,7 +2,7 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.MATERIALS_PER_FUEL; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.sHTGR_Fuel; -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.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; @@ -37,7 +37,7 @@ public class Centrifuge implements Runnable { WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1), WerkstoffLoader.Thorium232.get(OrePrefixes.dust, 1)) .outputChances(800, 375, 22, 22, 5).duration(8 * MINUTES + 20 * SECONDS).eut(TierEU.RECIPE_EV) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); ItemStack[] pellets = new ItemStack[6]; Arrays.fill(pellets, new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 64, 4)); @@ -46,18 +46,18 @@ public class Centrifuge implements Runnable { .itemInputs( new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 3), GT_Utility.getIntegratedCircuit(17)) - .itemOutputs(pellets).duration(40 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + .itemOutputs(pellets).duration(40 * MINUTES).eut(TierEU.RECIPE_LV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 5), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 64, 6)) - .duration(40 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + .duration(40 * MINUTES).eut(TierEU.RECIPE_LV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 6)) .itemOutputs(Materials.Lead.getDust(1)).outputChances(300).duration(60 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); int i = 0; for (GT_TileEntity_HTGR.HTGRMaterials.Fuel_ fuel : sHTGR_Fuel) { @@ -71,14 +71,14 @@ public class Centrifuge implements Runnable { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4), new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4), new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4)) - .duration(10 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + .duration(10 * MINUTES).eut(TierEU.RECIPE_LV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 5), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 6)) - .duration(2 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + .duration(2 * MINUTES + 30 * SECONDS).eut(TierEU.RECIPE_LV).addTo(centrifugeRecipes); GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 6)) @@ -92,7 +92,7 @@ public class Centrifuge implements Runnable { if (fuel.recycledFluid != null) { recipeBuilder.fluidOutputs(fuel.recycledFluid); } - recipeBuilder.duration(1 * MINUTES).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + recipeBuilder.duration(1 * MINUTES).eut(TierEU.RECIPE_LV).addTo(centrifugeRecipes); i += MATERIALS_PER_FUEL; } @@ -100,17 +100,17 @@ public class Centrifuge implements Runnable { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(17)).itemOutputs(BioItemList.getOther(4)) .fluidInputs(new FluidStack(BioCultureLoader.eColi.getFluid(), 1000)) .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[1], 10)).duration(60 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_HV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(17)) .fluidInputs(new FluidStack(FluidLoader.BioLabFluidMaterials[1], 1000)) .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[3], 250)).duration(60 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_HV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(17)) .fluidInputs(new FluidStack(BioCultureLoader.CommonYeast.getFluid(), 1000)) .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[2], 10)).duration(60 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_HV).addTo(centrifugeRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java index 47fc76767a..9ccc301898 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/ChemicalBath.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.recipe.RecipeMaps.chemicalBathRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -22,32 +22,32 @@ public class ChemicalBath implements Runnable { GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 6)) .fluidInputs(Dyes.dyeRed.getFluidDye(i, 36)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 7)) .fluidInputs(Dyes.dyeGreen.getFluidDye(i, 36)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 8)) .fluidInputs(Dyes.dyePurple.getFluidDye(i, 36)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 9)) .fluidInputs(Dyes.dyeYellow.getFluidDye(i, 36)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 10)) .fluidInputs(Dyes.dyeLime.getFluidDye(i, 36)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 11)) .fluidInputs(Dyes.dyeBrown.getFluidDye(i, 36)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); } @@ -56,7 +56,7 @@ public class ChemicalBath implements Runnable { GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, i)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .fluidInputs(Materials.Chlorine.getGas(50)).duration(3 * SECONDS + 4 * TICKS).eut(2) - .addTo(sChemicalBathRecipes); + .addTo(chemicalBathRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java index b82e06a9e4..c69af8159b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Electrolyzer.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; +import static gregtech.api.recipe.RecipeMaps.electrolyzerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -23,36 +23,33 @@ public class Electrolyzer implements Runnable { .itemOutputs( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 2L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L)) - .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(10 * SECONDS).eut(90) - .addTo(sElectrolyzerRecipes); + .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(10 * SECONDS).eut(90).addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.RedZircon.get(OrePrefixes.dust, 6)) .itemOutputs( WerkstoffLoader.Zirconium.get(OrePrefixes.dust, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L)) .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(12 * SECONDS + 10 * TICKS).eut(90) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Fayalit.get(OrePrefixes.dust, 7)) .itemOutputs( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 2L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 1L)) - .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(16 * SECONDS).eut(90) - .addTo(sElectrolyzerRecipes); + .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(16 * SECONDS).eut(90).addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Prasiolite.get(OrePrefixes.dust, 16)) .itemOutputs( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 5L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L)) - .duration(29 * SECONDS).eut(90).addTo(sElectrolyzerRecipes); + .duration(29 * SECONDS).eut(90).addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.Hedenbergit.get(OrePrefixes.dust, 10)) .itemOutputs( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 2L)) - .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(15 * SECONDS).eut(90) - .addTo(sElectrolyzerRecipes); + .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(15 * SECONDS).eut(90).addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder() .itemInputs(WerkstoffLoader.FuchsitAL.get(OrePrefixes.dust, 21), ItemList.Cell_Empty.get(2)) @@ -62,7 +59,7 @@ public class Electrolyzer implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2)) .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(19 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder() .itemInputs(WerkstoffLoader.FuchsitCR.get(OrePrefixes.dust, 21), ItemList.Cell_Empty.get(2)) @@ -72,7 +69,7 @@ public class Electrolyzer implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.SiliconDioxide, 3L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2)) .fluidOutputs(Materials.Oxygen.getGas(2000L)).duration(23 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder() .itemInputs(WerkstoffLoader.VanadioOxyDravit.get(OrePrefixes.dust, 53), ItemList.Cell_Empty.get(3)) @@ -84,7 +81,7 @@ public class Electrolyzer implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3)) .fluidOutputs(Materials.Oxygen.getGas(19000L)).duration(35 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -98,7 +95,7 @@ public class Electrolyzer implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3)) .fluidOutputs(Materials.Oxygen.getGas(19000L)).duration(36 * SECONDS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder() .itemInputs(WerkstoffLoader.FluorBuergerit.get(OrePrefixes.dust, 50), ItemList.Cell_Empty.get(3)) @@ -110,7 +107,7 @@ public class Electrolyzer implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fluorine, 3)) .fluidOutputs(Materials.Oxygen.getGas(6000L)).duration(36 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); GT_Values.RA.stdBuilder() .itemInputs(WerkstoffLoader.Olenit.get(OrePrefixes.dust, 51), ItemList.Cell_Empty.get(1)) @@ -121,7 +118,7 @@ public class Electrolyzer implements Runnable { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Boron, 3), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1)) .fluidOutputs(Materials.Oxygen.getGas(1000L)).duration(39 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sElectrolyzerRecipes); + .addTo(electrolyzerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java index c1b2a4ba25..befa1bf05d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Extractor.java @@ -1,7 +1,7 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static gregtech.api.enums.Mods.CropLoadCore; -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.SECONDS; import java.util.List; @@ -26,14 +26,14 @@ public class Extractor implements Runnable { GT_Values.RA.stdBuilder().itemInputs(BW_Util.setStackSize(stack, 12)) .itemOutputs(BioItemList.getOther(1)).duration(25 * SECONDS).eut((int) TierEU.RECIPE_HV) - .addTo(sExtractorRecipes); + .addTo(extractorRecipes); } } GT_Values.RA.stdBuilder().itemInputs(ItemList.Circuit_Chip_Stemcell.get(1L)) .itemOutputs(BioItemList.getOther(4)).duration(25 * SECONDS).eut((int) TierEU.RECIPE_LuV) - .addTo(sExtractorRecipes); + .addTo(extractorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java index e1eaa07400..9c1d594bad 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidHeater.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidHeaterRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -19,6 +19,6 @@ public class FluidHeater implements Runnable { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(10)) .fluidInputs(new FluidStack(FluidLoader.fulvicAcid, 1000)) .fluidOutputs(new FluidStack(FluidLoader.heatedfulvicAcid, 1000)).duration(4 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_MV).addTo(sFluidHeaterRecipes); + .eut(TierEU.RECIPE_MV).addTo(fluidHeaterRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java index d9939ac3b2..dfd92ee866 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FluidSolidifier.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidSolidifierRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.init.Blocks; @@ -22,52 +22,52 @@ public class FluidSolidifier implements Runnable { GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Blocks.lapis_block)) .itemOutputs(new ItemStack(ItemRegistry.BW_BLOCKS[0], 1, 0)) .fluidInputs(Materials.Iron.getMolten(1296L)).duration(5 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 1)) .fluidInputs(Materials.Titanium.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 2)) .fluidInputs(Materials.TungstenSteel.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_EV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 3)) .fluidInputs(WerkstoffLoader.LuVTierMaterial.getMolten(1152)).duration(40 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sFluidSolidficationRecipes); + .eut(TierEU.RECIPE_IV).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 4)) .fluidInputs(Materials.Iridium.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_LuV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 5)) .fluidInputs(Materials.Osmium.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_ZPM) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 13)) .fluidInputs(Materials.Neutronium.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_UV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 14)) .fluidInputs(Materials.CosmicNeutronium.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_UHV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 15)) .fluidInputs(Materials.Infinity.getMolten(1152)).duration(40 * SECONDS).eut(TierEU.RECIPE_UEV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 0)) .itemOutputs(new ItemStack(ItemRegistry.bw_glasses[1], 1, 0)) .fluidInputs(MaterialsUEVplus.TranscendentMetal.getMolten(1152)).duration(40 * SECONDS) - .eut(TierEU.RECIPE_UIV).addTo(sFluidSolidficationRecipes); + .eut(TierEU.RECIPE_UIV).addTo(fluidSolidifierRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java index f24e71fb99..251200649d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/FormingPress.java @@ -2,7 +2,7 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.MATERIALS_PER_FUEL; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.sHTGR_Fuel; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.recipe.RecipeMaps.formingPressRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -23,21 +23,21 @@ public class FormingPress implements Runnable { new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials), Materials.Graphite.getDust(64)) .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 1)) - .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(formingPressRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 1), Materials.Silicon.getDust(64)) .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 2)) - .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(formingPressRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 2), Materials.Graphite.getDust(64)) .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials, 1, 3)) - .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(formingPressRecipes); int i = 0; for (GT_TileEntity_HTGR.HTGRMaterials.Fuel_ fuel : sHTGR_Fuel) { @@ -46,21 +46,21 @@ public class FormingPress implements Runnable { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i), Materials.Carbon.getDust(64)) .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 1)) - .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(formingPressRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 1), Materials.Silicon.getDust(64)) .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 2)) - .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(formingPressRecipes); GT_Values.RA.stdBuilder() .itemInputs( new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 2), Materials.Graphite.getDust(64)) .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 3)) - .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sPressRecipes); + .duration(2 * SECONDS).eut(TierEU.RECIPE_LV).addTo(formingPressRecipes); i += MATERIALS_PER_FUEL; } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java index cc149e0bec..c37fad13d4 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/LaserEngraver.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -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.SECONDS; import net.minecraft.init.Items; @@ -19,7 +19,7 @@ public class LaserEngraver implements Runnable { GT_Values.RA.stdBuilder().itemInputs(new ItemStack(Items.emerald), GT_Utility.getIntegratedCircuit(17)) .itemOutputs(BioItemList.getPlasmidCell(null)).duration(5 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java index e6ea24dc8b..92ccdc005d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Mixer.java @@ -3,7 +3,7 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.MATERIALS_PER_FUEL; import static com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_HTGR.HTGRMaterials.sHTGR_Fuel; import static gregtech.api.enums.Mods.Gendustry; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -32,13 +32,13 @@ public class Mixer implements Runnable { Materials.Uranium235.getDust(1), GT_Utility.getIntegratedCircuit(2)) .itemOutputs(new ItemStack(GT_TileEntity_THTR.THTRMaterials.aTHTR_Materials)).duration(20 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_LV).addTo(mixerRecipes); int i = 0; for (GT_TileEntity_HTGR.HTGRMaterials.Fuel_ fuel : sHTGR_Fuel) { GT_Values.RA.stdBuilder().itemInputs(fuel.mainItem, fuel.secondaryItem, GT_Utility.getIntegratedCircuit(1)) .itemOutputs(new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i)) - .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .duration(20 * SECONDS).eut(TierEU.RECIPE_LV).addTo(mixerRecipes); i += MATERIALS_PER_FUEL; } @@ -51,7 +51,7 @@ public class Mixer implements Runnable { .itemOutputs(Materials.Empty.getCells(1)) .fluidInputs(FluidRegistry.getFluidStack("liquiddna", 1000)) .fluidOutputs(new FluidStack(FluidLoader.BioLabFluidMaterials[0], 2000)).duration(25 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_HV).addTo(mixerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java index 8dd55d5f24..1f505f96a9 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/recipes/Pulverizer.java @@ -1,6 +1,6 @@ package com.github.bartimaeusnek.bartworks.common.loaders.recipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -21,47 +21,47 @@ public class Pulverizer implements Runnable { GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 1)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Titanium.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_EV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 2)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.TungstenSteel.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_IV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 3)) .itemOutputs( Materials.BorosilicateGlass.getDust(9), WerkstoffLoader.LuVTierMaterial.get(OrePrefixes.dust, 8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_LuV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 4)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Iridium.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_ZPM).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 5)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Osmium.getDust(8)).duration(40 * SECONDS) - .eut(TierEU.RECIPE_UV).addTo(sMaceratorRecipes); + .eut(TierEU.RECIPE_UV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 13)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Neutronium.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_UHV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 14)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.CosmicNeutronium.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_UEV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_UEV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, 15)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), Materials.Infinity.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_UIV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_UIV).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[1], 1, 0)) .itemOutputs(Materials.BorosilicateGlass.getDust(9), MaterialsUEVplus.TranscendentMetal.getDust(8)) - .duration(40 * SECONDS).eut(TierEU.RECIPE_UMV).addTo(sMaceratorRecipes); + .duration(40 * SECONDS).eut(TierEU.RECIPE_UMV).addTo(maceratorRecipes); for (int i = 6; i < 11; i++) { GT_Values.RA.stdBuilder().itemInputs(new ItemStack(ItemRegistry.bw_glasses[0], 1, i)) .itemOutputs(Materials.BorosilicateGlass.getDust(9)).duration(20 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java index 62fa551434..fd1fb049cc 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_BioVat.java @@ -50,13 +50,13 @@ import net.minecraftforge.fluids.FluidStack; import org.jetbrains.annotations.NotNull; import com.github.bartimaeusnek.bartworks.API.SideReference; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.MainMod; import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler; import com.github.bartimaeusnek.bartworks.common.items.LabParts; import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; import com.github.bartimaeusnek.bartworks.common.net.RendererPacket; import com.github.bartimaeusnek.bartworks.common.tileentities.tiered.GT_MetaTileEntity_RadioHatch; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.BioCulture; import com.github.bartimaeusnek.bartworks.util.Coords; @@ -75,6 +75,7 @@ import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; 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.render.TextureFactory; @@ -199,8 +200,8 @@ public class GT_TileEntity_BioVat extends GT_MetaTileEntity_EnhancedMultiBlockBa } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return BWRecipes.instance.getMappingsFor(BWRecipes.BACTERIALVATBYTE); + public RecipeMap<?> getRecipeMap() { + return BartWorksRecipeMaps.bacterialVatRecipes; } /** diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_CircuitAssemblyLine.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_CircuitAssemblyLine.java index e7c9f3f7c7..016dc0f14c 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_CircuitAssemblyLine.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_CircuitAssemblyLine.java @@ -31,9 +31,13 @@ import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import static gregtech.api.util.GT_Utility.filterValidMTEs; import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; import java.util.Collections; import java.util.List; +import javax.annotation.Nonnull; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemStack; @@ -47,9 +51,9 @@ import net.minecraftforge.common.util.ForgeDirection; import org.jetbrains.annotations.NotNull; import com.github.bartimaeusnek.bartworks.API.modularUI.BW_UITextures; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.BW_Meta_Items; import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.CircuitImprintLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Tooltip_Reference; import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; @@ -72,12 +76,13 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMul import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus; +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.render.TextureFactory; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import mcp.mobius.waila.api.IWailaConfigHandler; import mcp.mobius.waila.api.IWailaDataAccessor; @@ -265,9 +270,15 @@ public class GT_TileEntity_CircuitAssemblyLine extends } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - if (this.mode == 0) return BWRecipes.instance.getMappingsFor((byte) 3); - return GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes; + public RecipeMap<?> getRecipeMap() { + if (this.mode == 0) return BartWorksRecipeMaps.circuitAssemblyLineRecipes; + return RecipeMaps.circuitAssemblerRecipes; + } + + @Nonnull + @Override + public Collection<RecipeMap<?>> getAvailableRecipeMaps() { + return Arrays.asList(BartWorksRecipeMaps.circuitAssemblyLineRecipes, RecipeMaps.circuitAssemblerRecipes); } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_ElectricImplosionCompressor.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_ElectricImplosionCompressor.java index 1441514d87..25b11ea75d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_ElectricImplosionCompressor.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_ElectricImplosionCompressor.java @@ -37,11 +37,11 @@ import net.minecraftforge.common.util.ForgeDirection; import org.apache.commons.lang3.tuple.Pair; import org.jetbrains.annotations.NotNull; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.MainMod; import com.github.bartimaeusnek.bartworks.client.renderer.BW_EICPistonVisualizer; import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler; import com.github.bartimaeusnek.bartworks.common.net.EICPacket; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.Coords; import com.gtnewhorizon.structurelib.StructureLibAPI; import com.gtnewhorizon.structurelib.alignment.IAlignmentLimits; @@ -67,6 +67,7 @@ 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.render.TextureFactory; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OverclockCalculator; @@ -256,8 +257,8 @@ public class GT_TileEntity_ElectricImplosionCompressor } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return BWRecipes.instance.eicMap; + public RecipeMap<?> getRecipeMap() { + return BartWorksRecipeMaps.electricImplosionCompressorRecipes; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java index 45b9b83fdd..714e774133 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_HTGR.java @@ -20,7 +20,6 @@ import static gregtech.api.util.GT_Utility.filterValidMTEs; import java.util.ArrayList; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import net.minecraft.entity.player.EntityPlayer; @@ -30,6 +29,7 @@ import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.common.items.SimpleSubItemClass; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import com.github.bartimaeusnek.bartworks.util.ChatColorHelper; @@ -51,10 +51,10 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus; +import gregtech.api.recipe.RecipeMap; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; public class GT_TileEntity_HTGR extends GT_MetaTileEntity_EnhancedMultiBlockBase<GT_TileEntity_HTGR> { @@ -121,22 +121,6 @@ public class GT_TileEntity_HTGR extends GT_MetaTileEntity_EnhancedMultiBlockBase // GregTech_API.sBlockCasings8, 5)) .build(); - public static final GT_Recipe.GT_Recipe_Map fakeRecipeMap = new GT_Recipe.GT_Recipe_Map( - new HashSet<>(), - "bw.recipe.htgr", - "High Temperature Gas-cooled Reactor", - null, - "gregtech:textures/gui/basicmachines/Default", - 1, - 1, - 1, - 0, - 1, - "", - 1, - "", - false, - true).useModularUI(true); private static final int HELIUM_NEEDED = 730000; public static final int powerUsage = (int) TierEU.RECIPE_LuV; private static final int maxcapacity = 720000; @@ -271,6 +255,12 @@ public class GT_TileEntity_HTGR extends GT_MetaTileEntity_EnhancedMultiBlockBase } @Override + public RecipeMap<?> getRecipeMap() { + // Only for visual + return BartWorksRecipeMaps.htgrFakeRecipes; + } + + @Override public boolean checkRecipe(ItemStack controllerStack) { if (this.empty) { @@ -604,7 +594,7 @@ public class GT_TileEntity_HTGR extends GT_MetaTileEntity_EnhancedMultiBlockBase for (@SuppressWarnings("unused") Fuel_ fuel : sHTGR_Fuel) { - fakeRecipeMap.addFakeRecipe( + BartWorksRecipeMaps.htgrFakeRecipes.addFakeRecipe( false, new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 64, i + 4) }, new ItemStack[] { new ItemStack(GT_TileEntity_HTGR.HTGRMaterials.aHTGR_Materials, 1, i + 5) }, diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_Windmill.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_Windmill.java index 26d7ed3d01..93ccdecd6c 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_Windmill.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/GT_TileEntity_Windmill.java @@ -76,6 +76,7 @@ import gregtech.api.interfaces.modularui.IGetTitleColor; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase; import gregtech.api.objects.ItemData; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_OreDictUnificator; @@ -283,8 +284,8 @@ public class GT_TileEntity_Windmill extends GT_MetaTileEntity_EnhancedMultiBlock if (this.mOutputItems == null) this.mOutputItems = new ItemStack[2]; - GT_Recipe.GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; - GT_Recipe tRecipe = tMap.findRecipe(this.getBaseMetaTileEntity(), false, false, V[1], null, itemStack); + GT_Recipe tRecipe = RecipeMaps.maceratorRecipes + .findRecipe(this.getBaseMetaTileEntity(), false, false, V[1], null, itemStack); if (tRecipe == null) { return false; } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaBlastFurnace.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaBlastFurnace.java index 5b4f3a1ece..edf56833ee 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaBlastFurnace.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaBlastFurnace.java @@ -59,6 +59,8 @@ import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; +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.render.TextureFactory; @@ -278,7 +280,7 @@ public class GT_TileEntity_MegaBlastFurnace extends GT_TileEntity_MegaMultiBlock @Override protected GT_OverclockCalculator createOverclockCalculator(@Nonnull GT_Recipe recipe) { return super.createOverclockCalculator(recipe).setRecipeHeat(recipe.mSpecialValue) - .setMultiHeat(GT_TileEntity_MegaBlastFurnace.this.mHeatingCapacity).setHeatOC(true) + .setMachineHeat(GT_TileEntity_MegaBlastFurnace.this.mHeatingCapacity).setHeatOC(true) .setHeatDiscount(true); } @@ -379,8 +381,13 @@ public class GT_TileEntity_MegaBlastFurnace extends GT_TileEntity_MegaMultiBlock } @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 -2; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java index 273469366c..2638f5de7c 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaChemicalReactor.java @@ -45,9 +45,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; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; 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; public class GT_TileEntity_MegaChemicalReactor @@ -108,8 +109,8 @@ public class GT_TileEntity_MegaChemicalReactor } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes; + public RecipeMap<?> getRecipeMap() { + return RecipeMaps.multiblockChemicalReactorRecipes; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaDistillTower.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaDistillTower.java index 4644b33dc8..6ae286900d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaDistillTower.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaDistillTower.java @@ -52,9 +52,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_Output; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; 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 gregtech.common.tileentities.machines.GT_MetaTileEntity_Hatch_Output_ME; @@ -246,8 +247,13 @@ public class GT_TileEntity_MegaDistillTower extends GT_TileEntity_MegaMultiBlock } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sDistillationRecipes; + public RecipeMap<?> getRecipeMap() { + return RecipeMaps.distillationTowerRecipes; + } + + @Override + public int getRecipeCatalystPriority() { + return -1; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java index 1c82e6cbff..70a3326729 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaOilCracker.java @@ -56,10 +56,11 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_MultiInput; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.recipe.check.CheckRecipeResult; 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; public class GT_TileEntity_MegaOilCracker extends GT_TileEntity_MegaMultiBlockBase<GT_TileEntity_MegaOilCracker> @@ -185,8 +186,8 @@ public class GT_TileEntity_MegaOilCracker extends GT_TileEntity_MegaMultiBlockBa } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sCrackingRecipes; + public RecipeMap<?> getRecipeMap() { + return RecipeMaps.crackingRecipes; } @Override @@ -335,13 +336,13 @@ public class GT_TileEntity_MegaOilCracker extends GT_TileEntity_MegaMultiBlockBa tHatch.mRecipeMap = getRecipeMap(); if (tHatch instanceof GT_MetaTileEntity_Hatch_MultiInput) { for (final FluidStack tFluid : ((GT_MetaTileEntity_Hatch_MultiInput) tHatch).getStoredFluid()) { - if (tFluid != null && !GT_Recipe.GT_Recipe_Map.sCrackingRecipes.isValidCatalystFluid(tFluid)) { + if (tFluid != null && !RecipeMaps.crackingRecipes.getBackend().isValidCatalystFluid(tFluid)) { rList.add(tFluid); } } } else { if (tHatch.getFillableStack() != null) { - if (!GT_Recipe.GT_Recipe_Map.sCrackingRecipes.isValidCatalystFluid(tHatch.getFillableStack())) + if (!RecipeMaps.crackingRecipes.getBackend().isValidCatalystFluid(tHatch.getFillableStack())) rList.add(tHatch.getFillableStack()); } } @@ -350,14 +351,14 @@ public class GT_TileEntity_MegaOilCracker extends GT_TileEntity_MegaMultiBlockBa tHatch.mRecipeMap = getRecipeMap(); if (tHatch instanceof GT_MetaTileEntity_Hatch_MultiInput) { for (final FluidStack tFluid : ((GT_MetaTileEntity_Hatch_MultiInput) tHatch).getStoredFluid()) { - if (tFluid != null && GT_Recipe.GT_Recipe_Map.sCrackingRecipes.isValidCatalystFluid(tFluid)) { + if (tFluid != null && RecipeMaps.crackingRecipes.getBackend().isValidCatalystFluid(tFluid)) { rList.add(tFluid); } } } else { if (tHatch.getFillableStack() != null) { final FluidStack tStack = tHatch.getFillableStack(); - if (GT_Recipe.GT_Recipe_Map.sCrackingRecipes.isValidCatalystFluid(tStack)) { + if (RecipeMaps.crackingRecipes.getBackend().isValidCatalystFluid(tStack)) { rList.add(tStack); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java index 1243bae84d..fce136840d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java @@ -44,9 +44,10 @@ import gregtech.api.interfaces.ITexture; 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.render.TextureFactory; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; public class GT_TileEntity_MegaVacuumFreezer extends GT_TileEntity_MegaMultiBlockBase<GT_TileEntity_MegaVacuumFreezer> @@ -175,8 +176,8 @@ public class GT_TileEntity_MegaVacuumFreezer extends GT_TileEntity_MegaMultiBloc } @Override - public GT_Recipe.GT_Recipe_Map getRecipeMap() { - return GT_Recipe.GT_Recipe_Map.sVacuumRecipes; + public RecipeMap<?> getRecipeMap() { + return RecipeMaps.vacuumFreezerRecipes; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_AcidGenerator.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_AcidGenerator.java index 3686f59246..d9b7645d29 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_AcidGenerator.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_AcidGenerator.java @@ -16,7 +16,7 @@ package com.github.bartimaeusnek.bartworks.common.tileentities.tiered; import net.minecraft.util.StatCollector; import net.minecraftforge.common.util.ForgeDirection; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.util.BW_Tooltip_Reference; import com.github.bartimaeusnek.bartworks.util.ChatColorHelper; @@ -26,8 +26,8 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator; +import gregtech.api.recipe.RecipeMap; import gregtech.api.render.TextureFactory; -import gregtech.api.util.GT_Recipe; public class GT_MetaTileEntity_AcidGenerator extends GT_MetaTileEntity_BasicGenerator { @@ -46,8 +46,8 @@ public class GT_MetaTileEntity_AcidGenerator extends GT_MetaTileEntity_BasicGene } @Override - public GT_Recipe.GT_Recipe_Map getRecipes() { - return BWRecipes.instance.getMappingsFor((byte) 2); + public RecipeMap<?> getRecipeMap() { + return BartWorksRecipeMaps.acidGenFuels; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java index 4e01fca2a0..30420d4328 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java @@ -21,12 +21,12 @@ import net.minecraft.util.StatCollector; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.common.items.LabModule; import com.github.bartimaeusnek.bartworks.common.items.LabParts; import com.github.bartimaeusnek.bartworks.common.loaders.BioCultureLoader; import com.github.bartimaeusnek.bartworks.common.loaders.BioItemList; import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Tooltip_Reference; import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.BioCulture; @@ -43,9 +43,9 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.XSTR; +import gregtech.api.recipe.RecipeMap; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.items.behaviors.Behaviour_DataOrb; @@ -140,8 +140,8 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine { } @Override - public GT_Recipe.GT_Recipe_Map getRecipeList() { - return BWRecipes.instance.getMappingsFor(BWRecipes.BIOLABBYTE); + public RecipeMap<?> getRecipeMap() { + return BartWorksRecipeMaps.bioLabRecipes; } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_RadioHatch.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_RadioHatch.java index 33589f45f6..942c2823b0 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_RadioHatch.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_RadioHatch.java @@ -25,8 +25,8 @@ import net.minecraft.util.StatCollector; import net.minecraftforge.common.util.ForgeDirection; import com.github.bartimaeusnek.bartworks.API.modularUI.BW_UITextures; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.MainMod; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_ColorUtil; import com.github.bartimaeusnek.bartworks.util.BW_Tooltip_Reference; import com.github.bartimaeusnek.bartworks.util.MathUtils; @@ -56,16 +56,19 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.modularui.IAddGregtechLogo; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.interfaces.tileentity.RecipeMapWorkable; import gregtech.api.metatileentity.BaseMetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.objects.ItemData; +import gregtech.api.recipe.RecipeMap; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.items.GT_MetaGenerated_Tool_01; -public class GT_MetaTileEntity_RadioHatch extends GT_MetaTileEntity_Hatch implements IAddGregtechLogo { +public class GT_MetaTileEntity_RadioHatch extends GT_MetaTileEntity_Hatch + implements RecipeMapWorkable, IAddGregtechLogo { private final int cap; public int sievert; @@ -97,11 +100,6 @@ public class GT_MetaTileEntity_RadioHatch extends GT_MetaTileEntity_Hatch implem this.cap = aTier - 2; } - public GT_MetaTileEntity_RadioHatch(String aName, int aTier, String aDescription, ITexture[][][] aTextures) { - super(aName, aTier, 1, aDescription, aTextures); - this.cap = aTier - 2; - } - public GT_MetaTileEntity_RadioHatch(String aName, int aTier, String[] aDescription, ITexture[][][] aTextures) { super(aName, aTier, 1, aDescription, aTextures); this.cap = aTier - 2; @@ -214,7 +212,7 @@ public class GT_MetaTileEntity_RadioHatch extends GT_MetaTileEntity_Hatch implem } if (this.lastRecipe == null || this.lastFail) { - this.lastRecipe = BWRecipes.instance.getMappingsFor(BWRecipes.RADHATCH).findRecipe( + this.lastRecipe = BartWorksRecipeMaps.radioHatchRecipes.findRecipe( this.getBaseMetaTileEntity(), false, Integer.MAX_VALUE - 7, @@ -304,7 +302,7 @@ public class GT_MetaTileEntity_RadioHatch extends GT_MetaTileEntity_Hatch implem public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side, ItemStack aStack) { return side == this.getBaseMetaTileEntity().getFrontFacing() - && BWRecipes.instance.getMappingsFor(BWRecipes.RADHATCH).containsInput(aStack); + && BartWorksRecipeMaps.radioHatchRecipes.containsInput(aStack); } @Override @@ -340,6 +338,12 @@ public class GT_MetaTileEntity_RadioHatch extends GT_MetaTileEntity_Hatch implem } } + @Override + public RecipeMap<?> getRecipeMap() { + // Only for visual + return BartWorksRecipeMaps.radioHatchRecipes; + } + private static final int RADIATION_SHUTTER_WINDOW_ID = 999; @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioLabHandler.java b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioLabHandler.java index bcac09fde6..c5fc4b1465 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioLabHandler.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioLabHandler.java @@ -22,13 +22,13 @@ import codechicken.nei.recipe.GuiUsageRecipe; import codechicken.nei.recipe.TemplateRecipeHandler; import cpw.mods.fml.common.event.FMLInterModComms; import gregtech.api.enums.GT_Values; -import gregtech.api.util.GT_Recipe; +import gregtech.api.recipe.RecipeCategory; import gregtech.nei.GT_NEI_DefaultHandler; public class BW_NEI_BioLabHandler extends GT_NEI_DefaultHandler { - public BW_NEI_BioLabHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) { - super(aRecipeMap); + public BW_NEI_BioLabHandler(RecipeCategory recipeCategory) { + super(recipeCategory); if (!NEI_BW_Config.sIsAdded) { FMLInterModComms.sendRuntimeMessage( GT_Values.GT, @@ -42,7 +42,7 @@ public class BW_NEI_BioLabHandler extends GT_NEI_DefaultHandler { @Override public TemplateRecipeHandler newInstance() { - return new BW_NEI_BioLabHandler(this.mRecipeMap); + return new BW_NEI_BioLabHandler(this.recipeCategory); } @Override diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioVatHandler.java b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioVatHandler.java index a7b170961d..38f2a9c800 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioVatHandler.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/BW_NEI_BioVatHandler.java @@ -25,13 +25,13 @@ import codechicken.nei.recipe.GuiUsageRecipe; import codechicken.nei.recipe.TemplateRecipeHandler; import cpw.mods.fml.common.event.FMLInterModComms; import gregtech.api.enums.GT_Values; -import gregtech.api.util.GT_Recipe; +import gregtech.api.recipe.RecipeCategory; import gregtech.nei.GT_NEI_DefaultHandler; public class BW_NEI_BioVatHandler extends GT_NEI_DefaultHandler { - public BW_NEI_BioVatHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) { - super(aRecipeMap); + public BW_NEI_BioVatHandler(RecipeCategory recipeCategory) { + super(recipeCategory); if (!NEI_BW_Config.sIsAdded) { FMLInterModComms.sendRuntimeMessage( GT_Values.GT, @@ -45,7 +45,7 @@ public class BW_NEI_BioVatHandler extends GT_NEI_DefaultHandler { @Override public TemplateRecipeHandler newInstance() { - return new BW_NEI_BioVatHandler(this.mRecipeMap); + return new BW_NEI_BioVatHandler(this.recipeCategory); } private void loadLabPartRecipes(ItemStack aResult) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/IMCForNEI.java b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/IMCForNEI.java deleted file mode 100644 index b32a7c2b49..0000000000 --- a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/IMCForNEI.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.github.bartimaeusnek.bartworks.neiHandler; - -import static gregtech.api.enums.Mods.NotEnoughItems; - -import net.minecraft.nbt.NBTTagCompound; - -import com.github.bartimaeusnek.bartworks.MainMod; - -import cpw.mods.fml.common.event.FMLInterModComms; - -public class IMCForNEI { - - public static void IMCSender() { - sendCatalyst("gt.recipe.largechemicalreactor", "gregtech:gt.blockmachines:13366", -10); - sendCatalyst("gt.recipe.craker", "gregtech:gt.blockmachines:13367", -10); - sendHandler("bw.recipe.htgr", "gregtech:gt.blockmachines:12791"); - sendCatalyst("bw.recipe.htgr", "gregtech:gt.blockmachines:12791"); - sendHandler("bw.recipe.radhatch", "gregtech:gt.blockmachines:12713"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12713"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12714"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12715"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12716"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12717"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12718"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12719"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12720"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12721"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12722"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12723"); - sendCatalyst("bw.recipe.radhatch", "gregtech:gt.blockmachines:12724"); - sendCatalyst("gt.recipe.circuitassembler", "gregtech:gt.blockmachines:12735", -20); - } - - private static void sendHandler(String name, String block) { - NBTTagCompound aNBT = new NBTTagCompound(); - aNBT.setString("handler", name); - aNBT.setString("modName", MainMod.NAME); - aNBT.setString("modId", MainMod.MOD_ID); - aNBT.setBoolean("modRequired", true); - aNBT.setString("itemName", block); - aNBT.setInteger("handlerHeight", 135); - aNBT.setInteger("handlerWidth", 166); - aNBT.setInteger("maxRecipesPerPage", 2); - aNBT.setInteger("yShift", 6); - 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); - } -} diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/NEI_BW_Config.java b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/NEI_BW_Config.java index 56a4befdc5..9b403a743b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/NEI_BW_Config.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/neiHandler/NEI_BW_Config.java @@ -15,11 +15,11 @@ package com.github.bartimaeusnek.bartworks.neiHandler; import net.minecraft.item.ItemStack; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.MainMod; import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import codechicken.nei.PositionedStack; import codechicken.nei.api.API; @@ -66,10 +66,11 @@ public class NEI_BW_Config implements IConfigureNEI { stack.setItemDamage(Short.MAX_VALUE); API.hideItem(stack); } + NEI_BW_Config.sIsAdded = false; new BW_NEI_OreHandler(); - new BW_NEI_BioVatHandler(BWRecipes.instance.getMappingsFor(BWRecipes.BACTERIALVATBYTE)); - new BW_NEI_BioLabHandler(BWRecipes.instance.getMappingsFor(BWRecipes.BIOLABBYTE)); + new BW_NEI_BioVatHandler(BartWorksRecipeMaps.bacterialVatRecipes.getDefaultRecipeCategory()); + new BW_NEI_BioLabHandler(BartWorksRecipeMaps.bioLabRecipes.getDefaultRecipeCategory()); NEI_BW_Config.sIsAdded = true; } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java index ee322c5634..79cb2438dd 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGeneratedFrames.java @@ -14,7 +14,7 @@ package com.github.bartimaeusnek.bartworks.system.material; import static gregtech.api.enums.GT_Values.RA; -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 static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -52,7 +52,7 @@ public class BW_MetaGeneratedFrames extends MetaPipeEntity { .itemInputs( GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial.getVarName(), 4), ItemList.Circuit_Integrated.getWithDamage(0, 4)) - .itemOutputs(getStackForm(1)).duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(sAssemblerRecipes); + .itemOutputs(getStackForm(1)).duration(3 * SECONDS + 4 * TICKS).eut(8).addTo(assemblerRecipes); } private BW_MetaGeneratedFrames(String aName, Werkstoff aMaterial) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java index 11200e95c9..91d5a87dd5 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/BW_Meta_Items.java @@ -13,7 +13,7 @@ package com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.recipe.RecipeMaps.formingPressRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import java.util.ArrayList; @@ -34,7 +34,6 @@ import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.MainMod; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Tooltip_Reference; import com.github.bartimaeusnek.bartworks.util.BW_Util; @@ -51,6 +50,7 @@ import gregtech.api.interfaces.IItemBehaviour; import gregtech.api.interfaces.IItemContainer; import gregtech.api.items.GT_MetaBase_Item; import gregtech.api.objects.ItemData; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; @@ -76,10 +76,10 @@ public class BW_Meta_Items { WerkstoffLoader.MagnetoResonaticDust.get(OrePrefixes.dust, 1), WerkstoffLoader.ArInGaPhoBiBoTe.get(OrePrefixes.dust, 4)) .itemOutputs(BW_Meta_Items.NEWCIRCUITS.getStack(2)).duration(15 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sPressRecipes); + .addTo(formingPressRecipes); - GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.autoclaveRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.NEWCIRCUITS.getStack(2) }, new ItemStack[] { BW_Meta_Items.NEWCIRCUITS.getStack(3) }, diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java index 9d8675406f..fd5cfeb38d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java @@ -28,10 +28,11 @@ import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.ShapedOreRecipe; +import com.github.bartimaeusnek.bartworks.API.recipe.BWNBTDependantCraftingRecipe; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.ASM.BWCoreStaticReplacementMethodes; import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.Pair; import com.google.common.collect.ArrayListMultimap; @@ -42,6 +43,7 @@ import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.enums.ItemList; 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; @@ -74,15 +76,15 @@ public class CircuitImprintLoader { } private static void reAddOriginalRecipes() { - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.mRecipeList.removeAll(MODIFIED_CAL_RECIPES); - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.mRecipeList.addAll(ORIGINAL_CAL_RECIPES); + RecipeMaps.circuitAssemblerRecipes.getBackend().removeRecipes(MODIFIED_CAL_RECIPES); + ORIGINAL_CAL_RECIPES.forEach(RecipeMaps.circuitAssemblerRecipes::add); ORIGINAL_CAL_RECIPES.clear(); MODIFIED_CAL_RECIPES.clear(); } private static void rebuildCircuitAssemblerMap(HashSet<GT_Recipe> toRem, HashSet<GT_Recipe> toAdd) { reAddOriginalRecipes(); - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.mRecipeList + RecipeMaps.circuitAssemblerRecipes.getAllRecipes() .forEach(e -> CircuitImprintLoader.handleCircuitRecipeRebuilding(e, toRem, toAdd)); } @@ -108,8 +110,7 @@ public class CircuitImprintLoader { || circuitRecipe.mFluidInputs[0].isFluidEqual(new FluidStack(solderIndalloy, 0)) || circuitRecipe.mFluidInputs[0].isFluidEqual(new FluidStack(solderUEV, 0))) { GT_Recipe newRecipe = CircuitImprintLoader.reBuildRecipe(circuitRecipe); - if (newRecipe != null) - BWRecipes.instance.getMappingsFor(BWRecipes.CIRCUITASSEMBLYLINE).addRecipe(newRecipe); + if (newRecipe != null) BartWorksRecipeMaps.circuitAssemblyLineRecipes.addRecipe(newRecipe); addCutoffRecipeToSets(toRem, toAdd, circuitRecipe); } else if (circuitRecipe.mEUt > BW_Util.getTierVoltage(ConfigHandler.cutoffTier)) toRem.add(circuitRecipe); } @@ -121,8 +122,8 @@ public class CircuitImprintLoader { } private static void exchangeRecipesInList(HashSet<GT_Recipe> toRem, HashSet<GT_Recipe> toAdd) { - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.mRecipeList.addAll(toAdd); - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.mRecipeList.removeAll(toRem); + toAdd.forEach(RecipeMaps.circuitAssemblerRecipes::add); + RecipeMaps.circuitAssemblerRecipes.getBackend().removeRecipes(toRem); ORIGINAL_CAL_RECIPES.addAll(toRem); MODIFIED_CAL_RECIPES.addAll(toAdd); } @@ -169,7 +170,7 @@ public class CircuitImprintLoader { return null; } - return new BWRecipes.DynamicGTRecipe( + return new GT_Recipe( false, in, new ItemStack[] { getOutputMultiplied(original) }, @@ -273,7 +274,7 @@ public class CircuitImprintLoader { private static void removeOldRecipesFromRegistries() { recipeWorldCache.forEach(CraftingManager.getInstance().getRecipeList()::remove); BWCoreStaticReplacementMethodes.clearRecentlyUsedRecipes(); - gtrecipeWorldCache.forEach(GT_Recipe.GT_Recipe_Map.sSlicerRecipes.mRecipeList::remove); + RecipeMaps.slicerRecipes.getBackend().removeRecipes(gtrecipeWorldCache); recipeWorldCache.forEach(r -> { try { BW_Util.getGTBufferedRecipeList().remove(r); @@ -302,7 +303,7 @@ public class CircuitImprintLoader { && OreDictionary.getOreIDs(stack).length > 0 ? OreDictionary.getOreIDs(stack)[0] : -1)))); - GT_Recipe slicingRecipe = new BWRecipes.DynamicGTRecipe( + GT_Recipe slicingRecipe = new GT_Recipe( true, new ItemStack[] { stack, ItemList.Shape_Slicer_Flat.get(0) }, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStackWithNBT(tag, 1, 1) }, @@ -314,7 +315,7 @@ public class CircuitImprintLoader { eut, BW_Util.CLEANROOM); gtrecipeWorldCache.add(slicingRecipe); - GT_Recipe.GT_Recipe_Map.sSlicerRecipes.add(slicingRecipe); + RecipeMaps.slicerRecipes.add(slicingRecipe); } private static void makeAndAddCraftingRecipes(NBTTagCompound tag) { @@ -323,7 +324,7 @@ public class CircuitImprintLoader { 'G', WerkstoffLoader.Prasiolite.get(OrePrefixes.gemExquisite, 1), 'X', BW_Meta_Items.getNEWCIRCUITS().getStack(3) }; - IRecipe bwrecipe = new BWRecipes.BWNBTDependantCraftingRecipe(circuit, imprintRecipe); + IRecipe bwrecipe = new BWNBTDependantCraftingRecipe(circuit, imprintRecipe); ShapedOreRecipe gtrecipe = BW_Util.createGTCraftingRecipe( circuit, GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.KEEPNBT @@ -349,7 +350,7 @@ public class CircuitImprintLoader { } private static void deleteCALRecipesAndTags() { - BWRecipes.instance.getMappingsFor(BWRecipes.CIRCUITASSEMBLYLINE).mRecipeList.clear(); + BartWorksRecipeMaps.circuitAssemblyLineRecipes.getBackend().clearRecipes(); recipeTagMap.clear(); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java index 5da0462d82..7e1abb7a7a 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java @@ -91,7 +91,7 @@ import static gregtech.api.enums.ItemList.Optical_Cpu_Containment_Housing; import static gregtech.api.enums.ItemList.Optically_Compatible_Memory; import static gregtech.api.enums.ItemList.Optically_Perfected_CPU; import static gregtech.api.enums.ItemList.values; -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 java.util.ArrayList; @@ -157,7 +157,7 @@ public class CircuitPartLoader implements Runnable { GT_Values.RA.stdBuilder().itemInputs(single.get(16).copy(), GT_Utility.getIntegratedCircuit(16)) .itemOutputs(BW_Meta_Items.getNEWCIRCUITS().getStack(CircuitImprintLoader.reverseIDs)) .fluidInputs(Materials.Plastic.getMolten(72)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); CircuitImprintLoader.circuitIIconRefs.put(CircuitImprintLoader.reverseIDs, single); CircuitImprintLoader.reverseIDs--; diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java index c4838905e1..43a5a3dac3 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java @@ -14,7 +14,7 @@ package com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement; import static gregtech.api.enums.Mods.Forestry; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidCannerRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -63,10 +63,10 @@ public class GTMetaItemEnhancer { GT_Values.RA.stdBuilder().itemInputs(GT_ModHandler.getModItem(Forestry.ID, "refractoryEmpty", 1)) .itemOutputs(new ItemStack(moltenCapsuls, 1, i)).fluidInputs(m.getMolten(144)) - .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(2 * TICKS).eut(2).addTo(fluidCannerRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(moltenCapsuls, 1, i)).fluidOutputs(m.getMolten(144)) - .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(2 * TICKS).eut(2).addTo(fluidCannerRecipes); } if (m.getFluid(1) == null && m.getGas(1) == null || OreDictionary.doesOreNameExist("capsule" + m.mName)) @@ -93,10 +93,10 @@ public class GTMetaItemEnhancer { GT_Utility.addFluidContainerData(emptyData); GT_Values.RA.stdBuilder().itemInputs(container).itemOutputs(new ItemStack(filled, 1, it)) - .fluidInputs(new FluidStack(f, amount)).duration(amount / 62).eut(2).addTo(sFluidCannerRecipes); + .fluidInputs(new FluidStack(f, amount)).duration(amount / 62).eut(2).addTo(fluidCannerRecipes); GT_Values.RA.stdBuilder().itemInputs(new ItemStack(filled, 1, it)).fluidOutputs(new FluidStack(f, amount)) - .duration(amount / 62).eut(2).addTo(sFluidCannerRecipes); + .duration(amount / 62).eut(2).addTo(fluidCannerRecipes); } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java index 907689ad5e..15b83fb6ff 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java @@ -72,11 +72,11 @@ import static gregtech.api.enums.OrePrefixes.dustSmall; import static gregtech.api.enums.OrePrefixes.dustTiny; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.nugget; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidHeaterRecipes; +import static gregtech.api.recipe.RecipeMaps.mixerRecipes; +import static gregtech.api.recipe.RecipeMaps.sifterRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -122,6 +122,8 @@ import gregtech.api.items.GT_Generic_Block; import gregtech.api.items.GT_Generic_Item; import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -148,17 +150,17 @@ public class PlatinumSludgeOverHaul { Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(Materials.DilutedSulfuricAcid.getCells(3)).duration(1 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_LV).addTo(mixerRecipes); GT_Values.RA.stdBuilder().itemInputs(Materials.Water.getCells(1), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.SulfuricAcid.getFluid(2000)) .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(3000)).duration(1 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_LV).addTo(mixerRecipes); GT_Values.RA.stdBuilder().itemInputs(Materials.SulfuricAcid.getCells(2), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(Materials.Empty.getCells(2)).fluidInputs(Materials.Water.getFluid(1000)) .fluidOutputs(Materials.DilutedSulfuricAcid.getFluid(3000)).duration(1 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .eut(TierEU.RECIPE_LV).addTo(mixerRecipes); // FormicAcid // CO + NaOH = CHO2Na GT_Values.RA.stdBuilder().itemInputs(Materials.CarbonMonoxide.getCells(1), Materials.SodiumHydroxide.getDust(3)) @@ -183,7 +185,7 @@ public class PlatinumSludgeOverHaul { Materials.NitricAcid.getCells(1), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(AquaRegia.get(cell, 2)).duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -191,18 +193,18 @@ public class PlatinumSludgeOverHaul { Materials.NitricAcid.getCells(1), GT_Utility.getIntegratedCircuit(2)) .itemOutputs(Materials.Empty.getCells(2)).fluidOutputs(AquaRegia.getFluidOrGas(2000)) - .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(sMixerRecipes); + .duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV).addTo(mixerRecipes); GT_Values.RA.stdBuilder().itemInputs(Materials.NitricAcid.getCells(1), GT_Utility.getIntegratedCircuit(3)) .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.DilutedSulfuricAcid.getFluid(1000)) .fluidOutputs(AquaRegia.getFluidOrGas(2000)).duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); GT_Values.RA.stdBuilder() .itemInputs(Materials.DilutedSulfuricAcid.getCells(1), GT_Utility.getIntegratedCircuit(4)) .itemOutputs(Materials.Empty.getCells(1)).fluidInputs(Materials.NitricAcid.getFluid(1000)) .fluidOutputs(AquaRegia.getFluidOrGas(2000)).duration(1 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_LV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); // AmmoniumChloride // NH3 + HCl = NH4Cl @@ -276,7 +278,7 @@ public class PlatinumSludgeOverHaul { // Pt GT_Values.RA.stdBuilder().itemInputs(PTMetallicPowder.get(dust, 3), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(Materials.Platinum.getNuggets(2)).duration(30 * SECONDS).eut(TierEU.RECIPE_MV) - .metadata(COIL_HEAT, Materials.Platinum.mMeltingPoint).addTo(sBlastRecipes); + .metadata(COIL_HEAT, Materials.Platinum.mMeltingPoint).addTo(blastFurnaceRecipes); GT_Values.RA.stdBuilder().itemInputs(PTMetallicPowder.get(dust), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(PTResidue.get(dustTiny)).fluidInputs(AquaRegia.getFluidOrGas(1000)) @@ -295,7 +297,7 @@ public class PlatinumSludgeOverHaul { Materials.NitrogenDioxide.getCells(1), Materials.DilutedSulfuricAcid.getCells(1)) .fluidInputs(AmmoniumChloride.getFluidOrGas(400)).fluidOutputs(PDAmmonia.getFluidOrGas(400)) - .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(sCentrifugeRecipes); + .duration(60 * SECONDS).eut(TierEU.RECIPE_LV).addTo(centrifugeRecipes); GT_Values.RA.addMultiblockChemicalRecipe( new ItemStack[] { GT_Utility.getIntegratedCircuit(1) }, @@ -326,11 +328,11 @@ public class PlatinumSludgeOverHaul { PTSaltRefined.get(dust), PTSaltRefined.get(dust)) .outputChances(1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500).duration(30 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sSifterRecipes); + .eut(TierEU.RECIPE_LV).addTo(sifterRecipes); GT_Values.RA.stdBuilder().itemInputs(PTSaltRefined.get(dust), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(PTMetallicPowder.get(dust)).fluidOutputs(Materials.Chlorine.getGas(87)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 900).addTo(sBlastRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 900).addTo(blastFurnaceRecipes); // 2PtCl + Ca = 2Pt + CaCl2 @@ -368,7 +370,7 @@ public class PlatinumSludgeOverHaul { PDMetallicPowder.get(dust), PDMetallicPowder.get(dust)) .outputChances(1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500).duration(30 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sSifterRecipes); + .eut(TierEU.RECIPE_LV).addTo(sifterRecipes); GT_Values.RA.addChemicalRecipeForBasicMachineOnly( PDRawPowder.get(dust, 4), @@ -401,13 +403,13 @@ public class PlatinumSludgeOverHaul { GT_Values.RA.stdBuilder().itemInputs(PTResidue.get(dust), GT_Utility.getIntegratedCircuit(11)) .itemOutputs(LeachResidue.get(dust)).fluidInputs(PotassiumDisulfate.getMolten(360)) .fluidOutputs(RHSulfate.getFluidOrGas(360)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) - .metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + .metadata(COIL_HEAT, 775).addTo(blastFurnaceRecipes); // Ru GT_Values.RA.stdBuilder().itemInputs(LeachResidue.get(dust, 10), Materials.Saltpeter.getDust(10)) .itemOutputs(SodiumRuthenate.get(dust, 3), IrOsLeachResidue.get(dust, 6)) .fluidInputs(Materials.SaltWater.getFluid(1000)).fluidOutputs(GT_ModHandler.getSteam(1000)) - .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + .duration(10 * SECONDS).eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 775).addTo(blastFurnaceRecipes); GT_Values.RA.stdBuilder().itemInputs(SodiumRuthenate.get(dust, 6), Materials.Chlorine.getCells(3)) .itemOutputs(Materials.Empty.getCells(3)).fluidOutputs(RutheniumTetroxideSollution.getFluidOrGas(9000)) @@ -416,7 +418,7 @@ public class PlatinumSludgeOverHaul { GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)) .fluidInputs(RutheniumTetroxideSollution.getFluidOrGas(800)) .fluidOutputs(HotRutheniumTetroxideSollution.getFluidOrGas(800)).duration(15 * SECONDS) - .eut(TierEU.RECIPE_HV).addTo(sFluidHeaterRecipes); + .eut(TierEU.RECIPE_HV).addTo(fluidHeaterRecipes); GT_Values.RA.addCrackingRecipe( 17, @@ -441,7 +443,7 @@ public class PlatinumSludgeOverHaul { GT_Values.RA.stdBuilder().itemInputs(IrOsLeachResidue.get(dust, 4), GT_Utility.getIntegratedCircuit(11)) .itemOutputs(IrLeachResidue.get(dust, 2)).fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) .fluidOutputs(AcidicOsmiumSolution.getFluidOrGas(2000)).duration(10 * SECONDS).eut(TierEU.RECIPE_MV) - .metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + .metadata(COIL_HEAT, 775).addTo(blastFurnaceRecipes); GT_Values.RA.addDistillationTowerRecipe( AcidicOsmiumSolution.getFluidOrGas(1000), @@ -458,7 +460,7 @@ public class PlatinumSludgeOverHaul { // Ir GT_Values.RA.stdBuilder().itemInputs(IrLeachResidue.get(dust), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(PGSDResidue.get(dust), IridiumDioxide.get(dust)).duration(10 * SECONDS) - .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 775).addTo(sBlastRecipes); + .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 775).addTo(blastFurnaceRecipes); GT_Values.RA.stdBuilder().itemInputs(IridiumDioxide.get(dust), Materials.HydrochloricAcid.getCells(1)) .itemOutputs(Materials.Empty.getCells(1)).fluidOutputs(AcidicIridiumSolution.getFluidOrGas(1000)) @@ -495,11 +497,11 @@ public class PlatinumSludgeOverHaul { GT_Values.RA.stdBuilder().itemInputs(CrudeRhMetall.get(dust), Materials.Salt.getDust(1)) .itemOutputs(RHSalt.get(dust, 3)).fluidInputs(Materials.Chlorine.getGas(1000)).duration(15 * SECONDS) - .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 600).addTo(sBlastRecipes); + .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 600).addTo(blastFurnaceRecipes); GT_Values.RA.stdBuilder().itemInputs(RHSalt.get(dust, 10)).fluidInputs(Materials.Water.getFluid(2000)) .fluidOutputs(RHSaltSolution.getFluidOrGas(2000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); GT_Values.RA.stdBuilder().itemInputs(SodiumNitrate.get(dust, 5), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(RHNitrate.get(dust), Materials.Salt.getDust(2)) @@ -523,11 +525,11 @@ public class PlatinumSludgeOverHaul { RhFilterCake.get(dust), RhFilterCake.get(dust)) .outputChances(1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500).duration(30 * SECONDS) - .eut(TierEU.RECIPE_LV).addTo(sSifterRecipes); + .eut(TierEU.RECIPE_LV).addTo(sifterRecipes); GT_Values.RA.stdBuilder().itemInputs(RhFilterCake.get(dust)).fluidInputs(Materials.Water.getFluid(1000)) .fluidOutputs(RHFilterCakeSolution.getFluidOrGas(1000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sMixerRecipes); + .addTo(mixerRecipes); GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(2)).itemOutputs(ReRh.get(dust)) .fluidInputs(RHFilterCakeSolution.getFluidOrGas(1000)).duration(15 * SECONDS).eut(TierEU.RECIPE_LV) @@ -584,21 +586,22 @@ public class PlatinumSludgeOverHaul { e.printStackTrace(); } // gt machines - maploop: for (GT_Recipe.GT_Recipe_Map map : GT_Recipe.GT_Recipe_Map.sMappings) { - if (map == GT_Recipe.GT_Recipe_Map.sFusionRecipes || map == GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes - || map == GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes - || "gt.recipe.eyeofharmony".equals(map.mUnlocalizedName) - || "gtpp.recipe.quantumforcesmelter".equals(map.mUnlocalizedName)) + maploop: for (RecipeMap<?> map : RecipeMap.ALL_RECIPE_MAPS.values()) { + if (map == RecipeMaps.fusionRecipes || map == RecipeMaps.unpackagerRecipes + || map == RecipeMaps.packagerRecipes + || map == RecipeMaps.replicatorRecipes + || "gt.recipe.eyeofharmony".equals(map.unlocalizedName) + || "gtpp.recipe.quantumforcesmelter".equals(map.unlocalizedName)) continue; HashSet<GT_Recipe> toDel = new HashSet<>(); - recipeloop: for (GT_Recipe recipe : map.mRecipeList) { + recipeloop: for (GT_Recipe recipe : map.getAllRecipes()) { if (recipe.mFakeRecipe) continue maploop; for (int i = 0; i < recipe.mFluidOutputs.length; i++) { - if (map.equals(GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes)) continue maploop; - if ("gtpp.recipe.alloyblastsmelter".equals(map.mUnlocalizedName)) continue maploop; - if (map.equals(GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes) - || map.equals(GT_Recipe.GT_Recipe_Map.sChemicalRecipes)) { + if (map.equals(RecipeMaps.fluidExtractionRecipes)) continue maploop; + if ("gtpp.recipe.alloyblastsmelter".equals(map.unlocalizedName)) continue maploop; + if (map.equals(RecipeMaps.multiblockChemicalReactorRecipes) + || map.equals(RecipeMaps.chemicalReactorRecipes)) { if (GT_Utility.areFluidsEqual(Ruthenium.getMolten(1), recipe.mFluidOutputs[i]) || GT_Utility.areFluidsEqual(Rhodium.getMolten(1), recipe.mFluidOutputs[i])) toDel.add(recipe); @@ -753,7 +756,7 @@ public class PlatinumSludgeOverHaul { } } } - map.mRecipeList.removeAll(toDel); + map.getBackend().removeRecipes(toDel); } // TODO: remove EnderIO recipes @@ -775,7 +778,7 @@ public class PlatinumSludgeOverHaul { Materials.Nikolite.getDust(8), 1800, 120); - for (GT_Recipe recipe : GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.mRecipeList) { + for (GT_Recipe recipe : RecipeMaps.circuitAssemblerRecipes.getAllRecipes()) { if (recipe.mEUt > 512) continue; if (BW_Util.checkStackAndPrefix(recipe.mOutputs[0])) { for (int i = 0; i < recipe.mInputs.length; i++) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java index b11eb10d4d..5d1644ae2b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AddSomeRecipes.java @@ -15,7 +15,7 @@ package com.github.bartimaeusnek.bartworks.system.material.processingLoaders; import static gregtech.api.enums.OrePrefixes.dust; import static gregtech.api.enums.OrePrefixes.dustSmall; -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.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -43,7 +43,7 @@ public class AddSomeRecipes implements Runnable { GT_OreDictUnificator.get(dust, Materials.Platinum, 1L)) .outputChances(100_00, 50_00, 50_00, 25_00, 100_00, 100_00) .fluidOutputs(WerkstoffLoader.Xenon.getFluidOrGas(1)).duration(12 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_EV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_EV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_Tiberium_2.get(1)) .itemOutputs( @@ -55,7 +55,7 @@ public class AddSomeRecipes implements Runnable { GT_OreDictUnificator.get(dust, Materials.Platinum, 2L)) .outputChances(100_00, 50_00, 50_00, 25_00, 100_00, 100_00) .fluidOutputs(WerkstoffLoader.Xenon.getFluidOrGas(2)).duration(12 * SECONDS + 10 * TICKS) - .eut(TierEU.RECIPE_EV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_EV).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_Tiberium_4.get(1)) .itemOutputs( @@ -67,7 +67,7 @@ public class AddSomeRecipes implements Runnable { GT_OreDictUnificator.get(dust, Materials.Platinum, 4L)) .outputChances(100_00, 50_00, 50_00, 25_00, 100_00, 100_00) .fluidOutputs(WerkstoffLoader.Xenon.getFluidOrGas(4)).duration(50 * SECONDS).eut(TierEU.RECIPE_EV) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(BW_NonMeta_MaterialItems.Depleted_TheCoreCell.get(1)) .itemOutputs( @@ -78,7 +78,7 @@ public class AddSomeRecipes implements Runnable { GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 64L), GT_OreDictUnificator.get(dust, Materials.TungstenSteel, 48L)) .outputChances(100_00, 50_00, 50_00, 100_00, 100_00, 100_00).duration(1 * MINUTES + 40 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sCentrifugeRecipes); + .eut(TierEU.RECIPE_IV).addTo(centrifugeRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java index b7387653b2..d08ae368bf 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java @@ -16,7 +16,6 @@ package com.github.bartimaeusnek.bartworks.system.material.processingLoaders; import static com.github.bartimaeusnek.bartworks.util.BW_Util.CLEANROOM; import static gregtech.api.enums.Mods.Gendustry; import static gregtech.api.enums.OrePrefixes.bolt; -import static gregtech.api.enums.OrePrefixes.cell; import static gregtech.api.enums.OrePrefixes.crushed; import static gregtech.api.enums.OrePrefixes.crushedPurified; import static gregtech.api.enums.OrePrefixes.dust; @@ -27,17 +26,17 @@ import static gregtech.api.enums.OrePrefixes.gemExquisite; import static gregtech.api.enums.OrePrefixes.gemFlawed; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.stickLong; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.recipe.RecipeMaps.autoclaveRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.primitiveBlastRecipes; +import static gregtech.api.recipe.RecipeMaps.sifterRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; -import java.lang.reflect.Field; -import java.util.Map; +import java.util.Arrays; +import java.util.List; import java.util.Objects; import net.minecraft.init.Items; @@ -46,8 +45,10 @@ import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; -import org.apache.commons.lang3.reflect.FieldUtils; +import org.apache.commons.lang3.tuple.ImmutablePair; +import org.apache.commons.lang3.tuple.Pair; +import com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps; import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler; import com.github.bartimaeusnek.bartworks.common.loaders.BioCultureLoader; import com.github.bartimaeusnek.bartworks.common.loaders.BioItemList; @@ -55,9 +56,7 @@ import com.github.bartimaeusnek.bartworks.common.loaders.FluidLoader; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.bartimaeusnek.bartworks.system.material.BW_NonMeta_MaterialItems; import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.BW_Meta_Items; -import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.BioCulture; import com.github.bartimaeusnek.bartworks.util.BioDNA; @@ -65,26 +64,21 @@ import com.github.bartimaeusnek.bartworks.util.BioData; import com.github.bartimaeusnek.bartworks.util.BioPlasmid; import gregtech.api.GregTech_API; -import gregtech.api.enums.Element; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; +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_RecipeConstants; import gregtech.api.util.GT_Utility; import gregtech.common.items.behaviors.Behaviour_DataOrb; public class AdditionalRecipes { - private static BWRecipes.BW_Recipe_Map_LiquidFuel sAcidGenFuels = (BWRecipes.BW_Recipe_Map_LiquidFuel) BWRecipes.instance - .getMappingsFor((byte) 2); - private static BWRecipes.BacteriaVatRecipeMap sBacteriaVat = (BWRecipes.BacteriaVatRecipeMap) BWRecipes.instance - .getMappingsFor((byte) 1); - private static GT_Recipe.GT_Recipe_Map sBiolab = BWRecipes.instance.getMappingsFor((byte) 0); - private static void runBWRecipes() { if (ConfigHandler.BioLab) { @@ -97,7 +91,7 @@ public class AdditionalRecipes { ItemStack Detergent = BioItemList.getOther(1); ItemStack DNAFlask = BioItemList.getDNASampleFlask(null); ItemStack EthanolCell = Materials.Ethanol.getCells(1); - sBiolab.addFakeRecipe( + BartWorksRecipeMaps.bioLabRecipes.addFakeRecipe( false, new ItemStack[] { stack, DNAFlask, Detergent, EthanolCell }, new ItemStack[] { BioItemList.getDNASampleFlask(BioDNA.convertDataToDNA(DNA)), @@ -120,7 +114,7 @@ public class AdditionalRecipes { Behaviour_DataOrb.setDataTitle(Outp, "DNA Sample"); Behaviour_DataOrb.setDataName(Outp, DNA.getName()); - sBiolab.addFakeRecipe( + BartWorksRecipeMaps.bioLabRecipes.addFakeRecipe( false, new ItemStack[] { stack, FluidLoader.BioLabFluidCells[0], FluidLoader.BioLabFluidCells[3], ItemList.Tool_DataOrb.get(1L) }, @@ -146,7 +140,7 @@ public class AdditionalRecipes { Behaviour_DataOrb.setDataTitle(inp2, "DNA Sample"); Behaviour_DataOrb.setDataName(inp2, BioCultureLoader.BIO_DATA_BETA_LACMATASE.getName()); - sBiolab.addFakeRecipe( + BartWorksRecipeMaps.bioLabRecipes.addFakeRecipe( false, new ItemStack[] { FluidLoader.BioLabFluidCells[1], BioItemList.getPlasmidCell(null), inp, inp2 }, @@ -165,7 +159,7 @@ public class AdditionalRecipes { BioData DNA = BioData.getBioDataFromNBTTag(stack.getTagCompound().getCompoundTag("DNA")); BioData Plasmid = BioData.getBioDataFromNBTTag(stack.getTagCompound().getCompoundTag("Plasmid")); if (!Objects.equals(DNA.getName(), Plasmid.getName())) { - sBiolab.addFakeRecipe( + BartWorksRecipeMaps.bioLabRecipes.addFakeRecipe( true, new ItemStack[] { BioItemList.getPetriDish(BioCulture.getBioCulture(DNA.getName())), BioItemList.getPlasmidCell(BioPlasmid.convertDataToPlasmid(Plasmid)), @@ -185,7 +179,7 @@ public class AdditionalRecipes { Behaviour_DataOrb.setDataTitle(Outp, "DNA Sample"); Behaviour_DataOrb.setDataName(Outp, "Any DNA"); // Clonal Cellular Synthesis- [Liquid DNA] + Medium Petri Dish + Plasma Membrane + Stem Cells + Genome Data - sBiolab.addFakeRecipe( + BartWorksRecipeMaps.bioLabRecipes.addFakeRecipe( false, new ItemStack[] { BioItemList.getPetriDish(null), BioItemList.getOther(4), ItemList.Circuit_Chip_Stemcell.get(2L), Outp }, @@ -204,11 +198,11 @@ public class AdditionalRecipes { for (FluidStack fluidStack : easyFluids) { for (BioCulture bioCulture : BioCulture.BIO_CULTURE_ARRAY_LIST) { if (bioCulture.isBreedable() && bioCulture.getTier() == 0) { - sBacteriaVat.addRecipe( + BartWorksRecipeMaps.bacterialVatRecipes.addRecipe( // boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, // int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, // int aEUt, int aSpecialValue - new BWRecipes.BacteriaVatRecipe( + new GT_Recipe( true, new ItemStack[] { GT_Utility.getIntegratedCircuit(1), new ItemStack(Items.sugar, 64) }, @@ -219,12 +213,11 @@ public class AdditionalRecipes { new FluidStack[] { new FluidStack(bioCulture.getFluid(), 10) }, 1000, (int) TierEU.RECIPE_HV, - BW_Util.STANDART), - true); + BW_Util.STANDART)); // aOptimize, aInputs, aOutputs, aSpecialItems, aChances, aFluidInputs, aFluidOutputs, // aDuration, aEUt, aSpecialValue - sBiolab.addRecipe( - new BWRecipes.DynamicGTRecipe( + BartWorksRecipeMaps.bioLabRecipes.addRecipe( + new GT_Recipe( false, new ItemStack[] { BioItemList.getPetriDish(null), fluidStack.equals(Materials.Water.getFluid(1000L)) @@ -245,17 +238,25 @@ public class AdditionalRecipes { } } - sAcidGenFuels.addLiquidFuel(Materials.PhosphoricAcid, 36); - sAcidGenFuels.addLiquidFuel(Materials.DilutedHydrochloricAcid, 14); - sAcidGenFuels.addLiquidFuel(Materials.HypochlorousAcid, 30); - sAcidGenFuels.addLiquidFuel(Materials.HydrofluoricAcid, 40); - sAcidGenFuels.addLiquidFuel(Materials.HydrochloricAcid, 28); - sAcidGenFuels.addLiquidFuel(Materials.NitricAcid, 24); - sAcidGenFuels.addLiquidFuel(Materials.Mercury, 32); - sAcidGenFuels.addLiquidFuel(Materials.DilutedSulfuricAcid, 9); - sAcidGenFuels.addLiquidFuel(Materials.SulfuricAcid, 18); - sAcidGenFuels.addLiquidFuel(Materials.AceticAcid, 11); - sAcidGenFuels.addMoltenFuel(Materials.Redstone, 10); + List<Pair<Materials, Integer>> liquidFuels = Arrays.asList( + ImmutablePair.of(Materials.PhosphoricAcid, 36), + ImmutablePair.of(Materials.DilutedHydrochloricAcid, 14), + ImmutablePair.of(Materials.HypochlorousAcid, 30), + ImmutablePair.of(Materials.HydrofluoricAcid, 40), + ImmutablePair.of(Materials.HydrochloricAcid, 28), + ImmutablePair.of(Materials.NitricAcid, 24), + ImmutablePair.of(Materials.Mercury, 32), + ImmutablePair.of(Materials.DilutedSulfuricAcid, 9), + ImmutablePair.of(Materials.SulfuricAcid, 18), + ImmutablePair.of(Materials.AceticAcid, 11), + ImmutablePair.of(WerkstoffLoader.FormicAcid.getBridgeMaterial(), 40)); + for (Pair<Materials, Integer> fuel : liquidFuels) { + GT_Values.RA.stdBuilder().itemInputs(fuel.getLeft().getCells(1)).itemOutputs(Materials.Empty.getCells(1)) + .metadata(GT_RecipeConstants.FUEL_VALUE, fuel.getRight()).addTo(BartWorksRecipeMaps.acidGenFuels); + } + GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(OrePrefixes.cellMolten, Materials.Redstone, 1)) + .itemOutputs(Materials.Empty.getCells(1)).metadata(GT_RecipeConstants.FUEL_VALUE, 10) + .addTo(BartWorksRecipeMaps.acidGenFuels); } @SuppressWarnings("deprecation") @@ -266,8 +267,6 @@ public class AdditionalRecipes { 4, WerkstoffLoader.AdemicSteel.get(dust), null); - ((BWRecipes.BW_Recipe_Map_LiquidFuel) BWRecipes.instance.getMappingsFor((byte) 2)) - .addLiquidFuel(WerkstoffLoader.FormicAcid.getBridgeMaterial(), 40); // Thorium/Yttrium Glas GT_Values.RA.addBlastRecipe( WerkstoffLoader.YttriumOxide.get(dustSmall, 2), @@ -289,7 +288,7 @@ public class AdditionalRecipes { Materials.Thorium.getDust(1), WerkstoffLoader.Thorium232.get(dust)) .outputChances(7000, 1300, 700, 600, 300, 100).duration(20 * SECONDS).eut((int) TierEU.RECIPE_IV) - .addTo(sSifterRecipes); + .addTo(sifterRecipes); // 3ThO2 + 4Al = 3Th + 2Al2O3 GT_Values.RA.addChemicalRecipe( @@ -332,7 +331,7 @@ public class AdditionalRecipes { GT_Values.RA.stdBuilder().itemInputs(GT_OreDictUnificator.get(dust, Materials.Quartzite, 40L)) .itemOutputs(Materials.Amethyst.getDust(10)).duration(40 * SECONDS).eut(0).metadata(ADDITIVE_AMOUNT, 6) - .addTo(sPrimitiveBlastRecipes); + .addTo(primitiveBlastRecipes); // Cubic Circonia // 2Y + 3O = Y2O3 @@ -345,7 +344,7 @@ public class AdditionalRecipes { 4096, (int) TierEU.RECIPE_LV); // Zr + 2O =Y22O3= ZrO2 - GT_Recipe.GT_Recipe_Map.sBlastRecipes.addRecipe( + RecipeMaps.blastFurnaceRecipes.addRecipe( false, new ItemStack[] { WerkstoffLoader.Zirconium.get(dust, 10), WerkstoffLoader.YttriumOxide.get(dust, 0) }, new ItemStack[] { WerkstoffLoader.CubicZirconia.get(gemFlawed, 40) }, @@ -395,12 +394,12 @@ public class AdditionalRecipes { GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.MagnetoResonaticDust.get(dust)) .itemOutputs(WerkstoffLoader.MagnetoResonaticDust.get(gemChipped, 9)).outputChances(90_00) .fluidInputs(WerkstoffLoader.Neon.getFluidOrGas(1000)).duration(3 * MINUTES + 45 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sAutoclaveRecipes); + .eut(TierEU.RECIPE_IV).addTo(autoclaveRecipes); GT_Values.RA.stdBuilder().itemInputs(WerkstoffLoader.MagnetoResonaticDust.get(dust)) .itemOutputs(WerkstoffLoader.MagnetoResonaticDust.get(gem)) .fluidInputs(WerkstoffLoader.Krypton.getFluidOrGas(1000)).duration(3 * MINUTES + 45 * SECONDS) - .eut(TierEU.RECIPE_IV).addTo(sAutoclaveRecipes); + .eut(TierEU.RECIPE_IV).addTo(autoclaveRecipes); // Milk @@ -414,7 +413,7 @@ public class AdditionalRecipes { Materials.Phosphor.getDustTiny(1)) .outputChances(100_00, 100_00, 10_00, 100_00, 10_00, 10_00).fluidInputs(Materials.Milk.getFluid(10000)) .fluidOutputs(Materials.Water.getFluid(8832)).duration(2 * SECONDS + 10 * TICKS).eut(TierEU.RECIPE_MV) - .addTo(sCentrifugeRecipes); + .addTo(centrifugeRecipes); // Magneto Resonatic Circuits @@ -426,8 +425,8 @@ public class AdditionalRecipes { ? FluidRegistry.getFluid("molten.mutatedlivingsolder") : FluidRegistry.getFluid("molten.solderingalloy"); // ULV - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.circuitAssemblerRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStack(3), WerkstoffLoader.MagnetoResonaticDust.get(gem), ItemList.NandChip.get(1), @@ -443,8 +442,8 @@ public class AdditionalRecipes { CLEANROOM)); // LV-EV for (int i = 1; i <= 4; i++) { - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.circuitAssemblerRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStack(3), WerkstoffLoader.MagnetoResonaticDust.get(gem), @@ -463,8 +462,8 @@ public class AdditionalRecipes { } // IV-LuV for (int i = 5; i <= 6; i++) { - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.circuitAssemblerRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStack(3), WerkstoffLoader.MagnetoResonaticDust.get(gem), @@ -482,8 +481,8 @@ public class AdditionalRecipes { CLEANROOM)); } // ZPM - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.circuitAssemblerRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStack(3), WerkstoffLoader.MagnetoResonaticDust.get(gemExquisite, 1), @@ -500,8 +499,8 @@ public class AdditionalRecipes { BW_Util.getMachineVoltageFromTier(7 + 1), CLEANROOM)); // UV - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.circuitAssemblerRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStack(3), WerkstoffLoader.MagnetoResonaticDust.get(gemExquisite, 1), @@ -519,8 +518,8 @@ public class AdditionalRecipes { CLEANROOM)); // UHV-UEV for (int i = 9; i <= 10; i++) { - GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.circuitAssemblerRecipes.add( + new GT_Recipe( false, new ItemStack[] { BW_Meta_Items.getNEWCIRCUITS().getStack(3), WerkstoffLoader.MagnetoResonaticDust.get(gemExquisite, 1), @@ -537,7 +536,7 @@ public class AdditionalRecipes { BW_Util.getMachineVoltageFromTier(i + 1), CLEANROOM)); } - GT_Recipe.GT_Recipe_Map.sSmallNaquadahReactorFuels.addRecipe( + RecipeMaps.smallNaquadahReactorFuels.addRecipe( true, new ItemStack[] { WerkstoffLoader.Tiberium.get(bolt) }, new ItemStack[] {}, @@ -547,7 +546,7 @@ public class AdditionalRecipes { 0, 0, 12500); - GT_Recipe.GT_Recipe_Map.sLargeNaquadahReactorFuels.addRecipe( + RecipeMaps.largeNaquadahReactorFuels.addRecipe( true, new ItemStack[] { WerkstoffLoader.Tiberium.get(stick) }, new ItemStack[] {}, @@ -558,45 +557,36 @@ public class AdditionalRecipes { 0, 62500); - try { - Class<GT_Recipe.GT_Recipe_Map> map = GT_Recipe.GT_Recipe_Map.class; - GT_Recipe.GT_Recipe_Map sHugeNaquadahReactorFuels = (GT_Recipe.GT_Recipe_Map) FieldUtils - .getField(map, "sHugeNaquadahReactorFuels").get(null); - GT_Recipe.GT_Recipe_Map sExtremeNaquadahReactorFuels = (GT_Recipe.GT_Recipe_Map) FieldUtils - .getField(map, "sExtremeNaquadahReactorFuels").get(null); - GT_Recipe.GT_Recipe_Map sUltraHugeNaquadahReactorFuels = (GT_Recipe.GT_Recipe_Map) FieldUtils - .getField(map, "sUltraHugeNaquadahReactorFuels").get(null); - sHugeNaquadahReactorFuels.addRecipe( - true, - new ItemStack[] { WerkstoffLoader.Tiberium.get(stickLong) }, - new ItemStack[] {}, - null, - null, - null, - 0, - 0, - 125000); - sExtremeNaquadahReactorFuels.addRecipe( - true, - new ItemStack[] { WerkstoffLoader.Tiberium.get(stick) }, - new ItemStack[] {}, - null, - null, - null, - 0, - 0, - 31250); - sUltraHugeNaquadahReactorFuels.addRecipe( - true, - new ItemStack[] { WerkstoffLoader.Tiberium.get(stickLong) }, - new ItemStack[] {}, - null, - null, - null, - 0, - 0, - 125000); - } catch (NullPointerException | IllegalAccessException ignored) {} + RecipeMaps.hugeNaquadahReactorFuels.addRecipe( + true, + new ItemStack[] { WerkstoffLoader.Tiberium.get(stickLong) }, + new ItemStack[] {}, + null, + null, + null, + 0, + 0, + 125000); + RecipeMaps.extremeNaquadahReactorFuels.addRecipe( + true, + new ItemStack[] { WerkstoffLoader.Tiberium.get(stick) }, + new ItemStack[] {}, + null, + null, + null, + 0, + 0, + 31250); + RecipeMaps.ultraHugeNaquadahReactorFuels.addRecipe( + true, + new ItemStack[] { WerkstoffLoader.Tiberium.get(stickLong) }, + new ItemStack[] {}, + null, + null, + null, + 0, + 0, + 125000); LoadItemContainers.run(); @@ -638,73 +628,5 @@ public class AdditionalRecipes { (int) TierEU.RECIPE_LuV); GregTech_API.sAfterGTPostload.add(new AddSomeRecipes()); - AdditionalRecipes.oldGThelperMethod(); - } - - @SuppressWarnings("unchecked") - private static void oldGThelperMethod() { - // manual override for older GT - Werkstoff werkstoff = WerkstoffLoader.Oganesson; - Materials werkstoffBridgeMaterial = null; - boolean aElementSet = false; - for (Element e : Element.values()) { - if ("Uuo".equals(e.toString())) { - werkstoffBridgeMaterial = werkstoff.getBridgeMaterial() != null ? werkstoff.getBridgeMaterial() - : new Materials( - -1, - werkstoff.getTexSet(), - 0, - 0, - 0, - false, - werkstoff.getDefaultName(), - werkstoff.getDefaultName()); - werkstoffBridgeMaterial.mElement = e; - e.mLinkedMaterials.add(werkstoffBridgeMaterial); - aElementSet = true; - werkstoff.setBridgeMaterial(werkstoffBridgeMaterial); - break; - } - } - if (!aElementSet) return; - - GT_OreDictUnificator.addAssociation(cell, werkstoffBridgeMaterial, werkstoff.get(cell), false); - try { - Field f = Materials.class.getDeclaredField("MATERIALS_MAP"); - f.setAccessible(true); - Map<String, Materials> MATERIALS_MAP = (Map<String, Materials>) f.get(null); - MATERIALS_MAP.remove(werkstoffBridgeMaterial.mName); - } catch (NoSuchFieldException | IllegalAccessException | ClassCastException e) { - e.printStackTrace(); - } - ItemStack scannerOutput = ItemList.Tool_DataOrb.get(1L); - Behaviour_DataOrb.setDataTitle(scannerOutput, "Elemental-Scan"); - Behaviour_DataOrb.setDataName(scannerOutput, werkstoff.getToolTip()); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( - false, - new BWRecipes.DynamicGTRecipe( - false, - new ItemStack[] { werkstoff.get(cell) }, - new ItemStack[] { scannerOutput }, - ItemList.Tool_DataOrb.get(1L), - null, - null, - null, - (int) (werkstoffBridgeMaterial.getMass() * 8192L), - 30, - 0)); - GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes.addFakeRecipe( - false, - new BWRecipes.DynamicGTRecipe( - false, - new ItemStack[] { Materials.Empty.getCells(1) }, - new ItemStack[] { werkstoff.get(cell) }, - scannerOutput, - null, - new FluidStack[] { Materials.UUMatter.getFluid(werkstoffBridgeMaterial.getMass()) }, - null, - (int) (werkstoffBridgeMaterial.getMass() * 512L), - 30, - 0)); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/DownTierLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/DownTierLoader.java index 7b5886bbde..2aa7394435 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/DownTierLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/DownTierLoader.java @@ -20,23 +20,24 @@ import java.util.Set; import com.github.bartimaeusnek.bartworks.util.BW_Util; import com.github.bartimaeusnek.bartworks.util.StreamUtils; +import gregtech.api.recipe.RecipeMap; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_Recipe; public class DownTierLoader { public static void run() { - GT_Recipe.GT_Recipe_Map.sMappings.stream() - .filter(map -> StreamUtils.filterVisualMaps(map) && map != GT_Recipe.GT_Recipe_Map.sFusionRecipes) - .forEach(map -> { + RecipeMap.ALL_RECIPE_MAPS.values().stream() + .filter(map -> StreamUtils.filterVisualMaps(map) && map != RecipeMaps.fusionRecipes).forEach(map -> { Set<GT_Recipe> newRecipes = new HashSet<>(); Set<GT_Recipe> toRem = new HashSet<>(); - map.mRecipeList.stream().filter(recipe -> Objects.nonNull(recipe) && recipe.mEUt > 128) + map.getAllRecipes().stream().filter(recipe -> Objects.nonNull(recipe) && recipe.mEUt > 128) .forEach(recipe -> { toRem.add(recipe); newRecipes.add(BW_Util.copyAndSetTierToNewRecipe(recipe, (byte) 2)); }); - map.mRecipeList.removeAll(toRem); - map.mRecipeList.addAll(newRecipes); + map.getBackend().removeRecipes(toRem); + newRecipes.forEach(map::add); }); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java index 7ba97bf837..b0402b1d1d 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/BlockLoader.java @@ -17,8 +17,8 @@ import static gregtech.api.enums.OrePrefixes.block; import static gregtech.api.enums.OrePrefixes.cellMolten; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.plate; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.cutterRecipes; +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.UniversalArcFurnace; @@ -28,6 +28,8 @@ import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWer import gregtech.api.enums.GT_Values; import gregtech.api.enums.TierEU; +import gregtech.api.recipe.RecipeCategories; +import gregtech.api.util.GT_RecipeConstants; public class BlockLoader implements IWerkstoffRunnable { @@ -36,19 +38,20 @@ public class BlockLoader implements IWerkstoffRunnable { if (!werkstoff.hasItemType(block)) return; if (werkstoff.hasItemType(ingot)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(ingot, 9)) - .duration(16 * TICKS).eut(90).addTo(UniversalArcFurnace); + .duration(16 * TICKS).eut(90).metadata(GT_RecipeConstants.RECYCLE, true).addTo(UniversalArcFurnace); } if (werkstoff.hasItemType(cellMolten)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).fluidOutputs(werkstoff.getMolten(1296)) - .duration(14 * SECONDS + 8 * TICKS).eut(8).addTo(sFluidExtractionRecipes); + .recipeCategory(RecipeCategories.fluidExtractorRecycling).duration(14 * SECONDS + 8 * TICKS).eut(8) + .addTo(fluidExtractionRecipes); } if (werkstoff.hasItemType(plate)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(plate, 9)) .duration((int) Math.max(werkstoff.getStats().getMass() * 10L, 1L)).eut(TierEU.RECIPE_LV) - .addTo(sCutterRecipes); + .addTo(cutterRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java index 7942554934..967a25665e 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CasingLoader.java @@ -21,7 +21,7 @@ import static gregtech.api.enums.OrePrefixes.plank; import static gregtech.api.enums.OrePrefixes.plate; import static gregtech.api.enums.OrePrefixes.plateDouble; import static gregtech.api.enums.OrePrefixes.screw; -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 com.github.bartimaeusnek.bartworks.system.material.BW_GT_MaterialReference; @@ -60,7 +60,7 @@ public class CasingLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder() .itemInputs(werkstoff.get(plate, 6), werkstoff.get(screw, 2), werkstoff.get(gearGtSmall)) .itemOutputs(werkstoff.get(blockCasing)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(blockCasingAdvanced), @@ -70,6 +70,6 @@ public class CasingLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder() .itemInputs(werkstoff.get(reboltedCasingsOuterStuff, 6), werkstoff.get(screw, 2), werkstoff.get(gearGt)) .itemOutputs(werkstoff.get(blockCasingAdvanced)).duration(10 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sAssemblerRecipes); + .addTo(assemblerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java index 3382697708..379424d9d4 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CellLoader.java @@ -17,9 +17,9 @@ import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.OrePrefixes.capsule; import static gregtech.api.enums.OrePrefixes.cell; import static gregtech.api.enums.OrePrefixes.dust; -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.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidCannerRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidSolidifierRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.ArrayList; @@ -34,7 +34,6 @@ import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.Pair; import gregtech.api.enums.Element; @@ -43,6 +42,8 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.TextureSet; import gregtech.api.interfaces.ISubTagContainer; +import gregtech.api.recipe.RecipeCategories; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; @@ -139,8 +140,8 @@ public class CellLoader implements IWerkstoffRunnable { int cellEmpty = cells - 1; stOutputs.add(Materials.Empty.getCells(-cellEmpty)); - if (werkstoff.getStats().isElektrolysis()) GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.add( - new BWRecipes.DynamicGTRecipe( + if (werkstoff.getStats().isElektrolysis()) RecipeMaps.electrolyzerRecipes.add( + new GT_Recipe( true, new ItemStack[] { input, cellEmpty > 0 ? Materials.Empty.getCells(cellEmpty) : null }, stOutputs.toArray(new ItemStack[0]), @@ -155,8 +156,8 @@ public class CellLoader implements IWerkstoffRunnable { * werkstoff.getContents().getValue().size())), Math.min(4, werkstoff.getContents().getValue().size()) * 30, 0)); - if (werkstoff.getStats().isCentrifuge()) GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.add( - new BWRecipes.DynamicGTRecipe( + if (werkstoff.getStats().isCentrifuge()) RecipeMaps.centrifugeRecipes.add( + new GT_Recipe( true, new ItemStack[] { input, cellEmpty > 0 ? Materials.Empty.getCells(cellEmpty) : null }, stOutputs.toArray(new ItemStack[0]), @@ -186,11 +187,11 @@ public class CellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1)).itemOutputs(werkstoff.get(cell)) .fluidInputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)) - .duration(16 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(16 * TICKS).eut(2).addTo(fluidCannerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(cell)).itemOutputs(Materials.Empty.getCells(1)) .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)) - .duration(16 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(16 * TICKS).eut(2).addTo(fluidCannerRecipes); if (Forestry.isModLoaded()) { FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData( @@ -203,18 +204,18 @@ public class CellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(capsule)) .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.fluids.get(werkstoff)), 1000)) - .duration(16 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(16 * TICKS).eut(2).addTo(fluidCannerRecipes); } if (werkstoff.hasItemType(dust)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust)).fluidOutputs(werkstoff.getFluidOrGas(1000)) .duration(werkstoff.getStats().getMass()).eut(werkstoff.getStats().getMass() > 128 ? 64 : 30) - .addTo(sFluidExtractionRecipes); + .recipeCategory(RecipeCategories.fluidExtractorRecycling).addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(GT_Utility.getIntegratedCircuit(1)).itemOutputs(werkstoff.get(dust)) .fluidInputs(werkstoff.getFluidOrGas(1000)).duration((int) werkstoff.getStats().getMass()) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); } @@ -247,9 +248,9 @@ public class CellLoader implements IWerkstoffRunnable { ItemStack scannerOutput = ItemList.Tool_DataOrb.get(1L); Behaviour_DataOrb.setDataTitle(scannerOutput, "Elemental-Scan"); Behaviour_DataOrb.setDataName(scannerOutput, werkstoff.getToolTip()); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( + RecipeMaps.scannerFakeRecipes.addFakeRecipe( false, - new BWRecipes.DynamicGTRecipe( + new GT_Recipe( false, new ItemStack[] { werkstoff.get(cell) }, new ItemStack[] { scannerOutput }, diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java index 9878a51539..57986cdfe3 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CraftingMaterialLoader.java @@ -28,12 +28,12 @@ import static gregtech.api.enums.OrePrefixes.rotor; import static gregtech.api.enums.OrePrefixes.screw; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.wireFine; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; -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.sWiremillRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.cutterRecipes; +import static gregtech.api.recipe.RecipeMaps.extruderRecipes; +import static gregtech.api.recipe.RecipeMaps.latheRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.wiremillRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -63,18 +63,18 @@ public class CraftingMaterialLoader implements IWerkstoffRunnable { ItemList.Shape_Extruder_Bolt.get(0L)) .itemOutputs(werkstoff.get(bolt, 8)) .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1)).eut(8 * tVoltageMultiplier) - .addTo(sExtruderRecipes); + .addTo(extruderRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick)).itemOutputs(werkstoff.get(bolt, 4)) - .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(4).addTo(sCutterRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(4).addTo(cutterRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(bolt)).itemOutputs(werkstoff.get(dustTiny, 1)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); // screw GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(bolt)).itemOutputs(werkstoff.get(screw)) - .duration((int) Math.max(werkstoff.getStats().getMass() / 8L, 1L)).eut(4).addTo(sLatheRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() / 8L, 1L)).eut(4).addTo(latheRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(screw), @@ -82,7 +82,7 @@ public class CraftingMaterialLoader implements IWerkstoffRunnable { new Object[] { "fX", "X ", 'X', werkstoff.get(bolt) }); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(screw)).itemOutputs(werkstoff.get(dustTiny, 1)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); if (werkstoff.hasItemType(gem)) return; @@ -91,7 +91,7 @@ public class CraftingMaterialLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Ring.get(0L)) .itemOutputs(werkstoff.get(ring, 4)) .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1)).eut(6 * tVoltageMultiplier) - .addTo(sExtruderRecipes); + .addTo(extruderRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(ring), @@ -106,29 +106,29 @@ public class CraftingMaterialLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 4), ItemList.Shape_Extruder_Gear.get(0L)) .itemOutputs(werkstoff.get(gearGt)).duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1)) - .eut(8 * tVoltageMultiplier).addTo(sExtruderRecipes); + .eut(8 * tVoltageMultiplier).addTo(extruderRecipes); // wireFine GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Wire.get(0L)) .itemOutputs(werkstoff.get(wireFine, 8)) .duration((int) Math.max(werkstoff.getStats().getMass() * 1.5F, 1F)).eut(8 * tVoltageMultiplier) - .addTo(sExtruderRecipes); + .addTo(extruderRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), GT_Utility.getIntegratedCircuit(3)) .itemOutputs(werkstoff.get(wireFine, 8)).duration((int) Math.max(werkstoff.getStats().getMass(), 1)) - .eut(8 * tVoltageMultiplier).addTo(sWiremillRecipes); + .eut(8 * tVoltageMultiplier).addTo(wiremillRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick), GT_Utility.getIntegratedCircuit(3)) .itemOutputs(werkstoff.get(wireFine, 4)) .duration((int) Math.max(werkstoff.getStats().getMass() * 0.5F, 1F)).eut(8 * tVoltageMultiplier) - .addTo(sWiremillRecipes); + .addTo(wiremillRecipes); // smallGear if (WerkstoffLoader.smallGearShape != null) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), WerkstoffLoader.smallGearShape.get(0L)) .itemOutputs(werkstoff.get(gearGtSmall)).duration((int) werkstoff.getStats().getMass()) - .eut(8 * tVoltageMultiplier).addTo(sExtruderRecipes); + .eut(8 * tVoltageMultiplier).addTo(extruderRecipes); } @@ -146,20 +146,20 @@ public class CraftingMaterialLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate, 4), werkstoff.get(ring)) .itemOutputs(werkstoff.get(rotor)).fluidInputs(Materials.Tin.getMolten(32)).duration(12 * SECONDS) - .eut(24).addTo(sAssemblerRecipes); + .eut(24).addTo(assemblerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate, 4), werkstoff.get(ring)) .itemOutputs(werkstoff.get(rotor)).fluidInputs(Materials.Lead.getMolten(48)).duration(12 * SECONDS) - .eut(24).addTo(sAssemblerRecipes); + .eut(24).addTo(assemblerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate, 4), werkstoff.get(ring)) .itemOutputs(werkstoff.get(rotor)).fluidInputs(Materials.SolderingAlloy.getMolten(16)) - .duration(12 * SECONDS).eut(24).addTo(sAssemblerRecipes); + .duration(12 * SECONDS).eut(24).addTo(assemblerRecipes); if (WerkstoffLoader.rotorShape != null) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 5), WerkstoffLoader.rotorShape.get(0L)) - .itemOutputs(werkstoff.get(rotor)).duration(10 * SECONDS).eut(60).addTo(sExtruderRecipes); + .itemOutputs(werkstoff.get(rotor)).duration(10 * SECONDS).eut(60).addTo(extruderRecipes); } @@ -181,17 +181,17 @@ public class CraftingMaterialLoader implements IWerkstoffRunnable { } GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gearGt)).itemOutputs(werkstoff.get(dust, 4)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gearGtSmall)).itemOutputs(werkstoff.get(dust, 1)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(rotor)) .itemOutputs(werkstoff.get(dust, 4), werkstoff.get(dustSmall)).duration(2 * TICKS).eut(8) - .addTo(sMaceratorRecipes); + .addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ring)).itemOutputs(werkstoff.get(dustSmall, 1)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java index 23a1576eb4..90ef6d5813 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/CrushedLoader.java @@ -24,11 +24,11 @@ import static gregtech.api.enums.OrePrefixes.gem; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.nugget; import static gregtech.api.enums.OrePrefixes.ore; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.recipe.RecipeMaps.autoclaveRecipes; +import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes; +import static gregtech.api.recipe.RecipeMaps.chemicalBathRecipes; +import static gregtech.api.recipe.RecipeMaps.electroMagneticSeparatorRecipes; +import static gregtech.api.recipe.RecipeMaps.hammerRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -75,7 +75,7 @@ public class CrushedLoader implements IWerkstoffRunnable { new Object[] { "h ", "W ", 'W', werkstoff.get(crushedCentrifuged) }); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushed)).itemOutputs(werkstoff.get(dustImpure)) - .duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(10 * TICKS).eut(16).addTo(hammerRecipes); GT_ModHandler.addPulverisationRecipe( werkstoff.get(crushed), @@ -99,7 +99,7 @@ public class CrushedLoader implements IWerkstoffRunnable { GT_OreDictUnificator.get(dust, Materials.Stone, 1L)); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushedPurified)).itemOutputs(werkstoff.get(dustPure)) - .duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(10 * TICKS).eut(16).addTo(hammerRecipes); GT_ModHandler.addPulverisationRecipe( werkstoff.get(crushedPurified), @@ -115,7 +115,7 @@ public class CrushedLoader implements IWerkstoffRunnable { werkstoff.getOreByProduct(1, dust)); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushedCentrifuged)).itemOutputs(werkstoff.get(dust)) - .duration(10 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(10 * TICKS).eut(16).addTo(hammerRecipes); GT_ModHandler.addPulverisationRecipe( werkstoff.get(crushedCentrifuged), @@ -126,29 +126,29 @@ public class CrushedLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustImpure)) .itemOutputs(werkstoff.get(dust), werkstoff.getOreByProduct(0, dust)).outputChances(100_00, 11_11) - .duration(Math.max(1L, werkstoff.getStats().getMass() * 8L)).eut(5).addTo(sCentrifugeRecipes); + .duration(Math.max(1L, werkstoff.getStats().getMass() * 8L)).eut(5).addTo(centrifugeRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)) .itemOutputs(werkstoff.get(dust), werkstoff.getOreByProduct(1, dust)).outputChances(100_00, 11_11) - .duration(Math.max(1L, werkstoff.getStats().getMass() * 8L)).eut(5).addTo(sCentrifugeRecipes); + .duration(Math.max(1L, werkstoff.getStats().getMass() * 8L)).eut(5).addTo(centrifugeRecipes); if (werkstoff.contains(SubTag.CRYSTALLISABLE)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)).itemOutputs(werkstoff.get(gem)) .outputChances(9000).fluidInputs(Materials.Water.getFluid(200L)) - .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(autoclaveRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustImpure)).itemOutputs(werkstoff.get(gem)) .outputChances(9000).fluidInputs(Materials.Water.getFluid(200L)) - .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + .duration(1 * MINUTES + 40 * SECONDS).eut(24).addTo(autoclaveRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustPure)).itemOutputs(werkstoff.get(gem)) .outputChances(9500).fluidInputs(gregtech.api.util.GT_ModHandler.getDistilledWater(200L)) - .duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + .duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(autoclaveRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustImpure)).itemOutputs(werkstoff.get(gem)) .outputChances(9500).fluidInputs(gregtech.api.util.GT_ModHandler.getDistilledWater(200L)) - .duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(sAutoclaveRecipes); + .duration(1 * MINUTES + 15 * SECONDS).eut(24).addTo(autoclaveRecipes); } if (werkstoff.contains(SubTag.WASHING_MERCURY)) { @@ -159,7 +159,7 @@ public class CrushedLoader implements IWerkstoffRunnable { werkstoff.getOreByProduct(1, dust), GT_OreDictUnificator.get(dust, Materials.Stone, 1L)) .outputChances(10000, 7000, 4000).fluidInputs(Materials.Mercury.getFluid(1000L)) - .duration(40 * SECONDS).eut(8).addTo(sChemicalBathRecipes); + .duration(40 * SECONDS).eut(8).addTo(chemicalBathRecipes); } if (werkstoff.contains(SubTag.WASHING_SODIUMPERSULFATE)) { @@ -173,7 +173,7 @@ public class CrushedLoader implements IWerkstoffRunnable { .fluidInputs( Materials.SodiumPersulfate .getFluid(GT_Mod.gregtechproxy.mDisableOldChemicalRecipes ? 1000L : 100L)) - .duration(40 * SECONDS).eut(8).addTo(sChemicalBathRecipes); + .duration(40 * SECONDS).eut(8).addTo(chemicalBathRecipes); } if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_GOLD)) { @@ -184,7 +184,7 @@ public class CrushedLoader implements IWerkstoffRunnable { GT_OreDictUnificator.get(dustSmall, Materials.Gold, 1L), GT_OreDictUnificator.get(nugget, Materials.Gold, 1L)) .outputChances(10000, 4000, 2000).duration(20 * SECONDS).eut(24) - .addTo(sElectroMagneticSeparatorRecipes); + .addTo(electroMagneticSeparatorRecipes); } else if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_IRON)) { @@ -194,7 +194,7 @@ public class CrushedLoader implements IWerkstoffRunnable { GT_OreDictUnificator.get(dustSmall, Materials.Iron, 1L), GT_OreDictUnificator.get(nugget, Materials.Iron, 1L)) .outputChances(10000, 4000, 2000).duration(20 * SECONDS).eut(24) - .addTo(sElectroMagneticSeparatorRecipes); + .addTo(electroMagneticSeparatorRecipes); } else if (werkstoff.contains(SubTag.ELECTROMAGNETIC_SEPERATION_NEODYMIUM)) { @@ -204,7 +204,7 @@ public class CrushedLoader implements IWerkstoffRunnable { GT_OreDictUnificator.get(dustSmall, Materials.Neodymium, 1L), GT_OreDictUnificator.get(nugget, Materials.Neodymium, 1L)) .outputChances(10000, 4000, 2000).duration(20 * SECONDS).eut(24) - .addTo(sElectroMagneticSeparatorRecipes); + .addTo(electroMagneticSeparatorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java index 74a2d78414..6c63c12f17 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java @@ -22,11 +22,11 @@ import static gregtech.api.enums.OrePrefixes.gem; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.ingotHot; import static gregtech.api.enums.OrePrefixes.nugget; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sVacuumRecipes; +import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.packagerRecipes; +import static gregtech.api.recipe.RecipeMaps.primitiveBlastRecipes; +import static gregtech.api.recipe.RecipeMaps.vacuumFreezerRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeConstants.ADDITIVE_AMOUNT; import static gregtech.api.util.GT_RecipeConstants.COIL_HEAT; @@ -41,7 +41,6 @@ import net.minecraftforge.fluids.FluidStack; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import com.github.bartimaeusnek.bartworks.util.Pair; import gregtech.api.enums.GT_Values; @@ -50,8 +49,10 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.TextureSet; import gregtech.api.enums.TierEU; import gregtech.api.interfaces.ISubTagContainer; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_RecipeConstants; import gregtech.api.util.GT_Utility; public class DustLoader implements IWerkstoffRunnable { @@ -151,7 +152,7 @@ public class DustLoader implements IWerkstoffRunnable { ItemStack input = werkstoff.get(dust); input.stackSize = werkstoff.getContents().getKey(); if (werkstoff.getStats().isElektrolysis()) { - GT_Recipe tRecipe = new BWRecipes.DynamicGTRecipe( + GT_Recipe tRecipe = new GT_Recipe( true, new ItemStack[] { input, cells > 0 ? Materials.Empty.getCells(cells) : null }, stOutputs.toArray(new ItemStack[0]), @@ -166,12 +167,12 @@ public class DustLoader implements IWerkstoffRunnable { / werkstoff.getContents().getValue().size())), Math.min(4, werkstoff.getContents().getValue().size()) * 30, 0); - GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.add(tRecipe); - GT_Recipe.GT_Recipe_Map.sMultiblockElectrolyzerRecipes.add(tRecipe); + RecipeMaps.electrolyzerRecipes.add(tRecipe); + RecipeMaps.electrolyzerNonCellRecipes.add(tRecipe); } if (werkstoff.getStats().isCentrifuge()) { - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.centrifugeRecipes.add( + new GT_Recipe( true, new ItemStack[] { input, cells > 0 ? Materials.Empty.getCells(cells) : null }, stOutputs.toArray(new ItemStack[0]), @@ -201,49 +202,28 @@ public class DustLoader implements IWerkstoffRunnable { / werkstoff.getContents().getValue().size())), Math.min(4, werkstoff.getContents().getValue().size()) * 30, 0); - GT_Recipe.GT_Recipe_Map.sMultiblockCentrifugeRecipes.add(tRecipe); + RecipeMaps.centrifugeNonCellRecipes.add(tRecipe); } if (werkstoff.getGenerationFeatures().hasChemicalRecipes()) { if (cells > 0) stOutputs.add(Materials.Empty.getCells(cells)); - GT_Recipe.GT_Recipe_Map.sChemicalRecipes.add( - new BWRecipes.DynamicGTRecipe( - true, - stOutputs.toArray(new ItemStack[0]), - new ItemStack[] { input }, - null, - null, - new FluidStack[] { flOutputs.size() > 0 ? flOutputs.get(0) : null }, - null, + GT_Values.RA.stdBuilder().itemInputs(stOutputs.toArray(new ItemStack[0])).itemOutputs(input) + .fluidInputs(flOutputs.toArray(new FluidStack[0])) + .duration( (int) Math.max( 1L, Math.abs( werkstoff.getStats().getProtons() - / werkstoff.getContents().getValue().size())), - Math.min(4, werkstoff.getContents().getValue().size()) * 30, - 0)); - GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe( - true, - stOutputs.toArray(new ItemStack[0]), - new ItemStack[] { input }, - null, - null, - new FluidStack[] { flOutputs.size() > 0 ? flOutputs.get(0) : null }, - null, - (int) Math.max( - 1L, - Math.abs( - werkstoff.getStats().getProtons() - / werkstoff.getContents().getValue().size())), - Math.min(4, werkstoff.getContents().getValue().size()) * 30, - 0); + / werkstoff.getContents().getValue().size()))) + .eut(Math.min(4, werkstoff.getContents().getValue().size()) * 30) + .addTo(GT_RecipeConstants.UniversalChemical); } if (werkstoff.getGenerationFeatures().hasMixerRecipes()) { if (cells > 0) stOutputs.add(Materials.Empty.getCells(cells)); short circuitID = werkstoff.getMixCircuit(); ItemStack circuit = circuitID == -1 ? null : GT_Utility.getIntegratedCircuit(circuitID); if (circuit != null) stOutputs.add(circuit); - GT_Recipe.GT_Recipe_Map.sMixerRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.mixerRecipes.add( + new GT_Recipe( true, stOutputs.toArray(new ItemStack[0]), new ItemStack[] { input }, @@ -273,7 +253,7 @@ public class DustLoader implements IWerkstoffRunnable { / werkstoff.getContents().getValue().size())), Math.min(4, werkstoff.getContents().getValue().size()) * 30, 0); - GT_Recipe.GT_Recipe_Map.sMultiblockMixerRecipes.add(tRecipe); + RecipeMaps.mixerNonCellRecipes.add(tRecipe); } } @@ -292,16 +272,16 @@ public class DustLoader implements IWerkstoffRunnable { new Object[] { "T ", 'T', werkstoff.get(dust) }); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustTiny, 9), ItemList.Schematic_Dust.get(0L)) - .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(sBoxinatorRecipes); + .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(packagerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustSmall, 4), ItemList.Schematic_Dust.get(0L)) - .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(sBoxinatorRecipes); + .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(packagerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustTiny, 9), ItemList.Schematic_3by3.get(0L)) - .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(sBoxinatorRecipes); + .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(packagerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustSmall, 4), ItemList.Schematic_2by2.get(0L)) - .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(sBoxinatorRecipes); + .itemOutputs(werkstoff.get(dust)).duration(5 * SECONDS).eut(4).addTo(packagerRecipes); if (werkstoff.hasItemType(ingot) && !werkstoff.getStats().isBlastFurnace()) { GT_ModHandler.addSmeltingRecipe(werkstoff.get(dust), werkstoff.get(ingot)); @@ -319,7 +299,8 @@ public class DustLoader implements IWerkstoffRunnable { Math.max(werkstoff.getStats().getMass() / 40L, 1L) * werkstoff.getStats().getMeltingPoint()) .eut(werkstoff.getStats().getMeltingVoltage()) - .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()).addTo(sBlastRecipes); + .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()) + .addTo(blastFurnaceRecipes); } else if (werkstoff.contains(WerkstoffLoader.NOBLE_GAS_SMELTING)) { GT_Values.RA.stdBuilder() @@ -332,7 +313,8 @@ public class DustLoader implements IWerkstoffRunnable { Math.max(werkstoff.getStats().getMass() / 40L, 1L) * werkstoff.getStats().getMeltingPoint()) .eut(werkstoff.getStats().getMeltingVoltage()) - .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()).addTo(sBlastRecipes); + .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()) + .addTo(blastFurnaceRecipes); } else { GT_Values.RA.stdBuilder() @@ -344,7 +326,8 @@ public class DustLoader implements IWerkstoffRunnable { Math.max(werkstoff.getStats().getMass() / 40L, 1L) * werkstoff.getStats().getMeltingPoint()) .eut(werkstoff.getStats().getMeltingVoltage()) - .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()).addTo(sBlastRecipes); + .metadata(COIL_HEAT, werkstoff.getStats().getMeltingPoint()) + .addTo(blastFurnaceRecipes); if (werkstoff.getStats().getMeltingPoint() <= 1000) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust)) @@ -352,7 +335,7 @@ public class DustLoader implements IWerkstoffRunnable { .duration( (int) Math.max(werkstoff.getStats().getMass() / 40L, 1L) * werkstoff.getStats().getMeltingPoint()) - .eut(0).metadata(ADDITIVE_AMOUNT, 9).addTo(sPrimitiveBlastRecipes); + .eut(0).metadata(ADDITIVE_AMOUNT, 9).addTo(primitiveBlastRecipes); } } } @@ -360,22 +343,22 @@ public class DustLoader implements IWerkstoffRunnable { if (werkstoff.getStats().isBlastFurnace() && werkstoff.getStats().getMeltingPoint() > 1750) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingotHot)).itemOutputs(werkstoff.get(ingot)) .duration((int) Math.max(werkstoff.getStats().getMass() * 3L, 1L)).eut(TierEU.RECIPE_MV) - .addTo(sVacuumRecipes); + .addTo(vacuumFreezerRecipes); } if (werkstoff.hasItemType(ingot)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)).itemOutputs(werkstoff.get(dust)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(nugget)).itemOutputs(werkstoff.get(dustTiny)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); } if (werkstoff.hasItemType(ingot) || werkstoff.hasItemType(gem)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(dust, 9)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java index d57ee89da8..c58b1a0241 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/GemLoader.java @@ -26,13 +26,13 @@ import static gregtech.api.enums.OrePrefixes.gemFlawless; import static gregtech.api.enums.OrePrefixes.lens; import static gregtech.api.enums.OrePrefixes.ore; import static gregtech.api.enums.OrePrefixes.plate; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sImplosionRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; -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.sSifterRecipes; +import static gregtech.api.recipe.RecipeMaps.compressorRecipes; +import static gregtech.api.recipe.RecipeMaps.hammerRecipes; +import static gregtech.api.recipe.RecipeMaps.implosionRecipes; +import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes; +import static gregtech.api.recipe.RecipeMaps.latheRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.sifterRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -65,10 +65,10 @@ public class GemLoader implements IWerkstoffRunnable { || werkstoff.hasItemType(ore) && werkstoff.hasItemType(dust)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem, 9)).itemOutputs(werkstoff.get(block)) - .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + .duration(15 * SECONDS).eut(2).addTo(compressorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(block)).itemOutputs(werkstoff.get(gem, 9)) - .duration(5 * SECONDS).eut(24).addTo(sHammerRecipes); + .duration(5 * SECONDS).eut(24).addTo(hammerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(crushedPurified)) .itemOutputs( @@ -79,24 +79,24 @@ public class GemLoader implements IWerkstoffRunnable { werkstoff.get(gemChipped), werkstoff.get(dust)) .outputChances(200, 1000, 2500, 2000, 4000, 5000).duration(40 * SECONDS).eut(16) - .addTo(sSifterRecipes); + .addTo(sifterRecipes); } GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemExquisite)).itemOutputs(werkstoff.get(dust, 4)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless)).itemOutputs(werkstoff.get(dust, 2)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem)).itemOutputs(werkstoff.get(dust)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed)).itemOutputs(werkstoff.get(dustSmall, 2)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped)).itemOutputs(werkstoff.get(dustSmall)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(gemFlawless, 2), @@ -116,19 +116,19 @@ public class GemLoader implements IWerkstoffRunnable { new Object[] { "h ", "W ", 'W', werkstoff.get(gemFlawed) }); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemExquisite)).itemOutputs(werkstoff.get(gemFlawless, 2)) - .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(hammerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless)).itemOutputs(werkstoff.get(gem, 2)) - .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(hammerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem)).itemOutputs(werkstoff.get(gemFlawed, 2)) - .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(hammerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed)).itemOutputs(werkstoff.get(gemChipped, 2)) - .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(hammerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped)).itemOutputs(werkstoff.get(dustTiny)) - .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(sHammerRecipes); + .duration(3 * SECONDS + 4 * TICKS).eut(16).addTo(hammerRecipes); if (!werkstoff.contains(WerkstoffLoader.NO_BLAST)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless, 3)) @@ -136,42 +136,42 @@ public class GemLoader implements IWerkstoffRunnable { werkstoff.get(gemExquisite), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) .duration(20 * TICKS).eut(TierEU.RECIPE_LV).metadata(ADDITIVE_AMOUNT, 8) - .addTo(sImplosionRecipes); + .addTo(implosionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem, 3)) .itemOutputs( werkstoff.get(gemFlawless), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) .duration(20 * TICKS).eut(TierEU.RECIPE_LV).metadata(ADDITIVE_AMOUNT, 8) - .addTo(sImplosionRecipes); + .addTo(implosionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed, 3)) .itemOutputs(werkstoff.get(gem), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) .duration(20 * TICKS).eut(TierEU.RECIPE_LV).metadata(ADDITIVE_AMOUNT, 8) - .addTo(sImplosionRecipes); + .addTo(implosionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped, 3)) .itemOutputs(werkstoff.get(gemFlawed), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 2)) .duration(20 * TICKS).eut(TierEU.RECIPE_LV).metadata(ADDITIVE_AMOUNT, 8) - .addTo(sImplosionRecipes); + .addTo(implosionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust, 4)) .itemOutputs(werkstoff.get(gem, 3), GT_OreDictUnificator.get(dustTiny, Materials.DarkAsh, 8)) .duration(20 * TICKS).eut(TierEU.RECIPE_LV).metadata(ADDITIVE_AMOUNT, 24) - .addTo(sImplosionRecipes); + .addTo(implosionRecipes); } if (werkstoff.hasItemType(plate)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)) .itemOutputs(werkstoff.get(lens), werkstoff.get(dustSmall)).duration(60 * SECONDS) - .eut(TierEU.RECIPE_MV).addTo(sLatheRecipes); + .eut(TierEU.RECIPE_MV).addTo(latheRecipes); } GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemExquisite)) .itemOutputs(werkstoff.get(lens), werkstoff.get(dust, 2)).duration(2 * MINUTES) - .eut(TierEU.RECIPE_LV).addTo(sLatheRecipes); + .eut(TierEU.RECIPE_LV).addTo(latheRecipes); final ITexture texture = TextureFactory.of( Textures.BlockIcons.MACHINE_CASINGS[2][0], @@ -184,7 +184,7 @@ public class GemLoader implements IWerkstoffRunnable { texture)); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(lens)).itemOutputs(werkstoff.get(dustSmall, 3)) - .duration(20 * SECONDS).eut(2).addTo(sMaceratorRecipes); + .duration(20 * SECONDS).eut(2).addTo(maceratorRecipes); for (ItemStack is : OreDictionary.getOres( "craftingLens" + BW_ColorUtil.getDyeFromColor(werkstoff.getRGBA()).mName.replace(" ", ""))) { @@ -192,18 +192,18 @@ public class GemLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemChipped, 3), is) .itemOutputs(werkstoff.get(gemFlawed, 1)).duration(30 * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawed, 3), is).itemOutputs(werkstoff.get(gem, 1)) - .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(sLaserEngraverRecipes); + .duration(30 * SECONDS).eut(TierEU.RECIPE_MV).addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem, 3), is) .itemOutputs(werkstoff.get(gemFlawless, 1)).duration(60 * SECONDS).eut(TierEU.RECIPE_HV) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gemFlawless, 3), is) .itemOutputs(werkstoff.get(gemExquisite, 1)).duration(2 * MINUTES).eut(2000) - .addTo(sLaserEngraverRecipes); + .addTo(laserEngraverRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java index dd64c84241..9447b0f43b 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MetalLoader.java @@ -15,8 +15,8 @@ package com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.rec import static gregtech.api.enums.OrePrefixes.block; import static gregtech.api.enums.OrePrefixes.ingot; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; +import static gregtech.api.recipe.RecipeMaps.compressorRecipes; +import static gregtech.api.recipe.RecipeMaps.extruderRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; @@ -24,6 +24,8 @@ import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWer import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; +import gregtech.api.recipe.RecipeCategories; +import gregtech.api.recipe.RecipeMaps; public class MetalLoader implements IWerkstoffRunnable { @@ -31,18 +33,16 @@ public class MetalLoader implements IWerkstoffRunnable { public void run(Werkstoff werkstoff) { if (werkstoff.hasItemType(ingot)) { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 9)).itemOutputs(werkstoff.get(block)) - .duration(15 * SECONDS).eut(2).addTo(sCompressorRecipes); + .duration(15 * SECONDS).eut(2).addTo(compressorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 9), ItemList.Shape_Extruder_Block.get(0)) .itemOutputs(werkstoff.get(block)).duration((int) werkstoff.getStats().getMass()) - .eut(8 * werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15).addTo(sExtruderRecipes); - - GT_Values.RA.addAlloySmelterRecipe( - werkstoff.get(ingot, 9), - ItemList.Shape_Mold_Block.get(0L), - werkstoff.get(block), - (int) (werkstoff.getStats().getMass() / 2), - 4 * werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15); + .eut(8 * werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15).addTo(extruderRecipes); + + GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 9), ItemList.Shape_Mold_Block.get(0L)) + .itemOutputs(werkstoff.get(block)).duration((int) (werkstoff.getStats().getMass() / 2)) + .eut(4 * werkstoff.getStats().getMeltingPoint() >= 2800 ? 60 : 15) + .recipeCategory(RecipeCategories.alloySmelterMolding).addTo(RecipeMaps.alloySmelterRecipes); } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java index 8e1aa3bd59..eca18f2888 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MoltenCellLoader.java @@ -32,9 +32,9 @@ import static gregtech.api.enums.OrePrefixes.rotor; import static gregtech.api.enums.OrePrefixes.screw; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.stickLong; -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.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidCannerRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidSolidifierRecipes; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -50,6 +50,7 @@ import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWer import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.recipe.RecipeCategories; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Utility; @@ -67,46 +68,54 @@ public class MoltenCellLoader implements IWerkstoffRunnable { } GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dust)).fluidOutputs(werkstoff.getMolten(144)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustSmall)).fluidOutputs(werkstoff.getMolten(36)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(dustTiny)).fluidOutputs(werkstoff.getMolten(16)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); } else { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)).fluidOutputs(werkstoff.getMolten(144)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(nugget)).fluidOutputs(werkstoff.getMolten(16)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ingot.get(0)).itemOutputs(werkstoff.get(ingot)) .fluidInputs(werkstoff.getMolten(144)).duration((int) werkstoff.getStats().getMass()) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Nugget.get(0)).itemOutputs(werkstoff.get(nugget)) .fluidInputs(werkstoff.getMolten(16)).duration((int) ((double) werkstoff.getStats().getMass() / 9D)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Block.get(0)).itemOutputs(werkstoff.get(block)) .fluidInputs(werkstoff.getMolten(1296)).duration((int) werkstoff.getStats().getMass() * 9) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); if (!werkstoff.hasItemType(plate)) { return; } GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stickLong)).fluidOutputs(werkstoff.getMolten(144)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)).fluidOutputs(werkstoff.getMolten(144)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick)).fluidOutputs(werkstoff.getMolten(72)) - .duration(15 * SECONDS).eut(2).addTo(sFluidExtractionRecipes); + .duration(15 * SECONDS).eut(2).recipeCategory(RecipeCategories.fluidExtractorRecycling) + .addTo(fluidExtractionRecipes); } if (werkstoff.getGenerationFeatures().hasMetalCraftingSolidifierRecipes()) { @@ -118,16 +127,16 @@ public class MoltenCellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Rod_Long.get(0)) .itemOutputs(werkstoff.get(stickLong)).fluidInputs(werkstoff.getMolten(144)) .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Rod.get(0)).itemOutputs(werkstoff.get(stick)) .fluidInputs(werkstoff.getMolten(72)) .duration((int) Math.max(werkstoff.getStats().getMass() / 2, 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Plate.get(0)).itemOutputs(werkstoff.get(plate)) .fluidInputs(werkstoff.getMolten(144)).duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); } @@ -139,27 +148,27 @@ public class MoltenCellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Screw.get(0)).itemOutputs(werkstoff.get(screw)) .fluidInputs(werkstoff.getMolten(18)) .duration((int) Math.max(werkstoff.getStats().getMass() / 8, 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Gear.get(0)).itemOutputs(werkstoff.get(gearGt)) .fluidInputs(werkstoff.getMolten(576)) .duration((int) Math.max(werkstoff.getStats().getMass() / 4, 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Gear_Small.get(0)) .itemOutputs(werkstoff.get(gearGtSmall)).fluidInputs(werkstoff.getMolten(144)) .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Bolt.get(0)).itemOutputs(werkstoff.get(bolt)) .fluidInputs(werkstoff.getMolten(18)) .duration((int) Math.max(werkstoff.getStats().getMass() / 8, 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Ring.get(0)).itemOutputs(werkstoff.get(ring)) .fluidInputs(werkstoff.getMolten(36)) .duration((int) Math.max(werkstoff.getStats().getMass() / 4, 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); // No Spring Molds @@ -170,7 +179,7 @@ public class MoltenCellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Rotor.get(0)).itemOutputs(werkstoff.get(rotor)) .fluidInputs(werkstoff.getMolten(612)) .duration((int) Math.max(werkstoff.getStats().getMass() * 4.25, 1L)) - .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(sFluidSolidficationRecipes); + .eut(werkstoff.getStats().getMass() > 128 ? 64 : 30).addTo(fluidSolidifierRecipes); } @@ -193,11 +202,11 @@ public class MoltenCellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(Materials.Empty.getCells(1)).itemOutputs(werkstoff.get(cellMolten)) .fluidInputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)) - .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(2 * TICKS).eut(2).addTo(fluidCannerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(cellMolten)).itemOutputs(Materials.Empty.getCells(1)) .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)) - .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(2 * TICKS).eut(2).addTo(fluidCannerRecipes); if (!Forestry.isModLoaded()) return; @@ -213,7 +222,7 @@ public class MoltenCellLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(capsuleMolten)) .fluidOutputs(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144)) - .duration(2 * TICKS).eut(2).addTo(sFluidCannerRecipes); + .duration(2 * TICKS).eut(2).addTo(fluidCannerRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java index 65d9c2be4d..fa6252c545 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/MultipleMetalLoader.java @@ -17,17 +17,17 @@ import static gregtech.api.enums.OrePrefixes.dust; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.plateDense; import static gregtech.api.enums.OrePrefixes.plateDouble; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.item.ItemStack; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; +import gregtech.api.recipe.RecipeMaps; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -37,8 +37,8 @@ public class MultipleMetalLoader implements IWerkstoffRunnable { @Override public void run(Werkstoff werkstoff) { if (werkstoff.hasItemType(plateDense)) { - GT_Recipe.GT_Recipe_Map.sBenderRecipes.add( - new BWRecipes.DynamicGTRecipe( + RecipeMaps.benderRecipes.add( + new GT_Recipe( true, new ItemStack[] { werkstoff.get(ingot, 2), GT_Utility.getIntegratedCircuit(2) }, new ItemStack[] { werkstoff.get(plateDouble) }, @@ -55,7 +55,7 @@ public class MultipleMetalLoader implements IWerkstoffRunnable { null); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plateDouble)).itemOutputs(werkstoff.get(dust, 2)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java index 839afe401d..581c475956 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/OreLoader.java @@ -18,7 +18,7 @@ import static gregtech.api.enums.OrePrefixes.dust; import static gregtech.api.enums.OrePrefixes.gem; import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.ore; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.recipe.RecipeMaps.hammerRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; @@ -42,7 +42,7 @@ public class OreLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ore)) .itemOutputs(werkstoff.hasItemType(gem) ? werkstoff.get(gem) : werkstoff.get(crushed)) - .duration(16 * TICKS).eut(10).addTo(sHammerRecipes); + .duration(16 * TICKS).eut(10).addTo(hammerRecipes); GT_ModHandler.addPulverisationRecipe( werkstoff.get(ore), diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java index 7f78d91f79..2978c5e3c0 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/SimpleMetalLoader.java @@ -22,11 +22,11 @@ import static gregtech.api.enums.OrePrefixes.ingot; import static gregtech.api.enums.OrePrefixes.plate; import static gregtech.api.enums.OrePrefixes.stick; import static gregtech.api.enums.OrePrefixes.stickLong; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; -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.recipe.RecipeMaps.benderRecipes; +import static gregtech.api.recipe.RecipeMaps.extruderRecipes; +import static gregtech.api.recipe.RecipeMaps.hammerRecipes; +import static gregtech.api.recipe.RecipeMaps.latheRecipes; +import static gregtech.api.recipe.RecipeMaps.maceratorRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.item.ItemStack; @@ -35,7 +35,6 @@ import com.github.bartimaeusnek.bartworks.API.SideReference; import com.github.bartimaeusnek.bartworks.client.textures.PrefixTextureLinker; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; @@ -44,6 +43,7 @@ import gregtech.api.enums.TextureSet; import gregtech.api.interfaces.ITexture; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Proxy; @@ -56,7 +56,7 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(gem)) .itemOutputs(werkstoff.get(stick), werkstoff.get(dustSmall, 2)) - .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1L)).eut(16).addTo(sLatheRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1L)).eut(16).addTo(latheRecipes); GT_ModHandler.addCraftingRecipe( werkstoff.get(stick, 2), @@ -68,7 +68,7 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { new Object[] { "f ", " X", 'X', werkstoff.get(gem) }); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick, 2)).itemOutputs(werkstoff.get(stickLong)) - .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)).eut(16).addTo(sHammerRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)).eut(16).addTo(hammerRecipes); TextureSet texSet = werkstoff.getTexSet(); ITexture texture = SideReference.Side.Client @@ -81,7 +81,7 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { GregTech_API.registerCover(werkstoff.get(plate), texture, null); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)).itemOutputs(werkstoff.get(dust)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); return; } @@ -103,8 +103,8 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { GT_Proxy.tBits, new Object[] { "hX", 'X', werkstoff.get(plate) }); - sBenderRecipes.add( - new BWRecipes.DynamicGTRecipe( + benderRecipes.add( + new GT_Recipe( true, new ItemStack[] { werkstoff.get(ingot), GT_Utility.getIntegratedCircuit(1) }, new ItemStack[] { werkstoff.get(plate) }, @@ -117,7 +117,7 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { 0)); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 3)).itemOutputs(werkstoff.get(plate, 2)) - .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)).eut(16).addTo(sHammerRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)).eut(16).addTo(hammerRecipes); GregTech_API.registerCover( werkstoff.get(plate), @@ -126,38 +126,38 @@ public class SimpleMetalLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)) .itemOutputs(werkstoff.get(stick), werkstoff.get(dustSmall, 2)) - .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1L)).eut(16).addTo(sLatheRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() * 5L, 1L)).eut(16).addTo(latheRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(werkstoff.get(foil, 4)) - .duration((int) Math.max(werkstoff.getStats().getMass() * 1L, 1L)).eut(24).addTo(sBenderRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() * 1L, 1L)).eut(24).addTo(benderRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), GT_Utility.getIntegratedCircuit(10)) .itemOutputs(werkstoff.get(foil, 4)) - .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(24).addTo(sBenderRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(24).addTo(benderRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick, 2)).itemOutputs(werkstoff.get(stickLong)) - .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)).eut(16).addTo(sHammerRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass(), 1L)).eut(16).addTo(hammerRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Plate.get(0)) .itemOutputs(werkstoff.get(plate)).duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)) - .eut(45).addTo(sExtruderRecipes); + .eut(45).addTo(extruderRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot), ItemList.Shape_Extruder_Rod.get(0)) .itemOutputs(werkstoff.get(stick, 2)) - .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(45).addTo(sExtruderRecipes); + .duration((int) Math.max(werkstoff.getStats().getMass() * 2L, 1L)).eut(45).addTo(extruderRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot)).itemOutputs(werkstoff.get(dust)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plate)).itemOutputs(werkstoff.get(dust)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stickLong)).itemOutputs(werkstoff.get(dust)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(stick)).itemOutputs(werkstoff.get(dustSmall, 2)) - .duration(2 * TICKS).eut(8).addTo(sMaceratorRecipes); + .duration(2 * TICKS).eut(8).addTo(maceratorRecipes); } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java index 43b72c18ee..aa1d3531ec 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/ToolLoader.java @@ -28,10 +28,10 @@ import static gregtech.api.enums.OrePrefixes.toolHeadHammer; import static gregtech.api.enums.OrePrefixes.toolHeadSaw; import static gregtech.api.enums.OrePrefixes.toolHeadWrench; import static gregtech.api.enums.OrePrefixes.turbineBlade; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sExtruderRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes; -import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.recipe.RecipeMaps.assemblerRecipes; +import static gregtech.api.recipe.RecipeMaps.extruderRecipes; +import static gregtech.api.recipe.RecipeMaps.fluidSolidifierRecipes; +import static gregtech.api.recipe.RecipeMaps.formingPressRecipes; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; import static gregtech.api.util.GT_RecipeBuilder.SECONDS; @@ -434,17 +434,17 @@ public class ToolLoader implements IWerkstoffRunnable { GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(ingot, 6), ItemList.Shape_Extruder_Turbine_Blade.get(0)) .itemOutputs(werkstoff.get(turbineBlade, 1)).duration((int) werkstoff.getStats().getMass() / 2 * 20) - .eut(TierEU.RECIPE_MV).addTo(sExtruderRecipes); + .eut(TierEU.RECIPE_MV).addTo(extruderRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Turbine_Blade.get(0)) .itemOutputs(werkstoff.get(turbineBlade, 1)).fluidInputs(werkstoff.getMolten(864)) .duration((int) werkstoff.getStats().getMass() * 20).eut(TierEU.RECIPE_MV) - .addTo(sFluidSolidficationRecipes); + .addTo(fluidSolidifierRecipes); GT_Values.RA.stdBuilder().itemInputs(werkstoff.get(plateDouble, 3), werkstoff.get(screw, 2)) .itemOutputs(werkstoff.get(turbineBlade, 1)) .duration((werkstoff.getStats().getMass() / 4) * SECONDS).eut(TierEU.RECIPE_LV) - .addTo(sPressRecipes); + .addTo(formingPressRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -457,7 +457,7 @@ public class ToolLoader implements IWerkstoffRunnable { werkstoff.getBridgeMaterial(), Materials.Magnalium, null)) - .duration(8 * SECONDS).eut(100).addTo(sAssemblerRecipes); + .duration(8 * SECONDS).eut(100).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -470,7 +470,7 @@ public class ToolLoader implements IWerkstoffRunnable { werkstoff.getBridgeMaterial(), Materials.Titanium, null)) - .duration(16 * SECONDS).eut(400).addTo(sAssemblerRecipes); + .duration(16 * SECONDS).eut(400).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -483,7 +483,7 @@ public class ToolLoader implements IWerkstoffRunnable { werkstoff.getBridgeMaterial(), Materials.TungstenSteel, null)) - .duration(32 * SECONDS).eut(1600).addTo(sAssemblerRecipes); + .duration(32 * SECONDS).eut(1600).addTo(assemblerRecipes); GT_Values.RA.stdBuilder() .itemInputs( @@ -496,7 +496,7 @@ public class ToolLoader implements IWerkstoffRunnable { werkstoff.getBridgeMaterial(), Materials.Americium, null)) - .duration(1 * MINUTES + 4 * SECONDS).eut(6400).addTo(sAssemblerRecipes); + .duration(1 * MINUTES + 4 * SECONDS).eut(6400).addTo(assemblerRecipes); } if (!werkstoff.hasItemType(gem)) { diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/registration/BridgeMaterialsLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/registration/BridgeMaterialsLoader.java index 79d74219a3..e7019d75e2 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/registration/BridgeMaterialsLoader.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/registration/BridgeMaterialsLoader.java @@ -21,22 +21,16 @@ import static gregtech.api.enums.OrePrefixes.values; import java.util.ArrayList; -import net.minecraft.item.ItemStack; - import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import com.github.bartimaeusnek.bartworks.system.material.werkstoff_loaders.IWerkstoffRunnable; -import com.github.bartimaeusnek.bartworks.util.BWRecipes; import gregtech.api.enchants.Enchantment_Radioactivity; import gregtech.api.enums.Element; -import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; -import gregtech.common.items.behaviors.Behaviour_DataOrb; public class BridgeMaterialsLoader implements IWerkstoffRunnable { @@ -79,7 +73,7 @@ public class BridgeMaterialsLoader implements IWerkstoffRunnable { boolean ElementSet = false; for (Element e : Element.values()) { if (e.toString().equals(werkstoff.getToolTip())) { - if (e.mLinkedMaterials.size() > 0) break; + if (!e.mLinkedMaterials.isEmpty()) break; werkstoffBridgeMaterial = werkstoff.getBridgeMaterial() != null ? werkstoff.getBridgeMaterial() : Materials.get(werkstoff.getVarName()) != Materials._NULL @@ -123,25 +117,6 @@ public class BridgeMaterialsLoader implements IWerkstoffRunnable { if (!ElementSet) { continue; } - - if (werkstoff.hasItemType(dust)) { - ItemStack scannerOutput = ItemList.Tool_DataOrb.get(1L); - Behaviour_DataOrb.setDataTitle(scannerOutput, "Elemental-Scan"); - Behaviour_DataOrb.setDataName(scannerOutput, werkstoff.getToolTip()); - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe( - false, - new BWRecipes.DynamicGTRecipe( - false, - new ItemStack[] { werkstoff.get(prefixes) }, - new ItemStack[] { scannerOutput }, - ItemList.Tool_DataOrb.get(1L), - null, - null, - null, - (int) (werkstoffBridgeMaterial.getMass() * 8192L), - 30, - 0)); - } } if (werkstoff.hasItemType(cell)) { @@ -179,7 +154,6 @@ public class BridgeMaterialsLoader implements IWerkstoffRunnable { werkstoff.getStats().getEnchantmentlvl()); } werkstoff.setBridgeMaterial(werkstoffBridgeMaterial); - // if (WerkstoffLoader.items.get(prefixes) != null) } } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/util/BWRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/util/BWRecipes.java index a628c1ffb6..27b16768b9 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/util/BWRecipes.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/util/BWRecipes.java @@ -13,236 +13,27 @@ package com.github.bartimaeusnek.bartworks.util; +import static com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps.bacterialVatRecipes; +import static com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps.bioLabRecipes; +import static com.github.bartimaeusnek.bartworks.API.recipe.BartWorksRecipeMaps.radioHatchRecipes; import static com.github.bartimaeusnek.bartworks.util.BW_Util.calculateSv; import static com.github.bartimaeusnek.bartworks.util.BW_Util.specialToByte; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.function.Supplier; - import javax.annotation.Nonnegative; -import net.minecraft.inventory.InventoryCrafting; import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.StatCollector; -import net.minecraft.world.World; import net.minecraftforge.fluids.FluidStack; -import org.jetbrains.annotations.Nullable; - -import com.github.bartimaeusnek.bartworks.API.modularUI.BW_UITextures; -import com.github.bartimaeusnek.bartworks.MainMod; import com.github.bartimaeusnek.bartworks.common.loaders.BioItemList; -import com.github.bartimaeusnek.bartworks.common.tileentities.multis.GT_TileEntity_BioVat; -import com.gtnewhorizons.modularui.api.drawable.IDrawable; -import com.gtnewhorizons.modularui.api.math.Alignment; -import com.gtnewhorizons.modularui.api.math.Pos2d; -import com.gtnewhorizons.modularui.api.screen.ModularWindow; -import com.gtnewhorizons.modularui.common.widget.DrawableWidget; -import com.gtnewhorizons.modularui.common.widget.ProgressBar; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.gui.modularui.GT_UITextures; -import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_Utility; -import gregtech.nei.GT_NEI_DefaultHandler; -import gregtech.nei.NEIRecipeInfo; -import ic2.core.Ic2Items; -import ic2.core.item.ItemFluidCell; +@SuppressWarnings("UnusedReturnValue") public class BWRecipes { public static final BWRecipes instance = new BWRecipes(); - public static final byte BIOLABBYTE = 0; - public static final byte BACTERIALVATBYTE = 1; - public static final byte ACIDGENMAPBYTE = 2; - public static final byte CIRCUITASSEMBLYLINE = 3; - public static final byte RADHATCH = 4; - - private final GT_Recipe.GT_Recipe_Map sBiolab = new GT_Recipe.GT_Recipe_Map( - new HashSet<>(150), - "bw.recipe.biolab", - StatCollector.translateToLocal("tile.biolab.name"), - null, - "gregtech:textures/gui/basicmachines/BW.GUI.BioLab", - 6, - 2, - 1, - 1, - 1, - "", - 1, - "", - true, - false // special handler - ) { - - @Nullable - @Override - public IDrawable getOverlayForSlot(boolean isFluid, boolean isOutput, int index, boolean isSpecial) { - if (!isFluid && !isOutput && !isSpecial) { - switch (index) { - case 0: - return BW_UITextures.OVERLAY_SLOT_DISH; - case 1: - return BW_UITextures.OVERLAY_SLOT_DNA_FLASK; - case 2: - return GT_UITextures.OVERLAY_SLOT_CIRCUIT; - case 3: - return GT_UITextures.OVERLAY_SLOT_MOLECULAR_1; - case 4: - return GT_UITextures.OVERLAY_SLOT_MOLECULAR_2; - case 5: - return GT_UITextures.OVERLAY_SLOT_DATA_ORB; - } - } else if (isFluid && !isOutput) { - return GT_UITextures.OVERLAY_SLOT_VIAL_2; - } else if (isSpecial) { - return BW_UITextures.OVERLAY_SLOT_MODULE; - } - return super.getOverlayForSlot(isFluid, isOutput, index, false); - } - }.setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE).setLogo(BW_UITextures.PICTURE_BW_LOGO_47X21) - .setLogoPos(125, 3).setLogoSize(47, 21); - private final GT_Recipe.GT_Recipe_Map sBacteriaVat = new BacteriaVatRecipeMap( - new HashSet<>(50), - "bw.recipe.BacteriaVat", - StatCollector.translateToLocal("tile.biovat.name"), - null, - "gregtech:textures/gui/basicmachines/Default", - 6, - 2, - 0, - 1, - 1, - " Sievert: ", - 1, - " Sv", - true, - false // special handler - ).setProgressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE) - .setNEISpecialInfoFormatter((recipeInfo, applyPrefixAndSuffix) -> { - int[] tSpecialA = GT_TileEntity_BioVat.specialValueUnpack(recipeInfo.recipe.mSpecialValue); - return Arrays.asList( - StatCollector.translateToLocal("nei.biovat.0.name") + " " + tSpecialA[0], - (tSpecialA[2] == 1 ? StatCollector.translateToLocal("nei.biovat.1.name") - : StatCollector.translateToLocal("nei.biovat.2.name")) - + applyPrefixAndSuffix.apply(tSpecialA[3])); - }); - private final GT_Recipe.GT_Recipe_Map sAcidGenFuels = new BW_Recipe_Map_LiquidFuel( - new HashSet<>(10), - "bw.fuels.acidgens", - StatCollector.translateToLocal("tile.acidgenerator.name"), - null, - "gregtech:textures/gui/basicmachines/Default", - 1, - 1, - 1, - 1, - 1, - "EU generated: ", - 1000, - "", - false, - true).useModularUI(true); - private final GT_Recipe.GT_Recipe_Map sCircuitAssemblyLineMap = new SpecialObjectSensitiveMap( - new HashSet<>(60), - "bw.recipe.cal", - "Circuit Assembly Line", - null, - "gregtech:textures/gui/basicmachines/Default", - 6, - 1, - 1, - 1, - 1, - "", - 1, - "", - true, - true).setProgressBar(GT_UITextures.PROGRESSBAR_CIRCUIT_ASSEMBLER); - private final GT_Recipe.GT_Recipe_Map sRadHatch = new GT_Recipe.GT_Recipe_Map( - new HashSet<>(150), - "bw.recipe.radhatch", - "Radio Hatch Material List", - null, - "gregtech:textures/gui/basicmachines/BW.GUI.Radioactive", - 1, - 0, - 1, - 0, - 1, - "", - 0, - "", - false, - true) { - - @Override - public void addProgressBarUI(ModularWindow.Builder builder, Supplier<Float> progressSupplier, - Pos2d windowOffset) { - builder.widget( - new DrawableWidget().setDrawable(BW_UITextures.PICTURE_RADIATION) - .setPos(new Pos2d(74, 20).add(windowOffset)).setSize(29, 27)); - } - - @Override - protected void drawNEIEnergyInfo(NEIRecipeInfo recipeInfo) {} - - @Override - protected void drawNEIDurationInfo(NEIRecipeInfo recipeInfo) {} - }.setSlotOverlay(false, false, BW_UITextures.OVERLAY_SLOT_ROD).setLogo(BW_UITextures.PICTURE_BW_LOGO_47X21) - .setLogoPos(118, 55).setLogoSize(47, 21).setNEISpecialInfoFormatter((recipeInfo, applyPrefixAndSuffix) -> { - int radioLevel = recipeInfo.recipe.mEUt; - int amount = recipeInfo.recipe.mDuration; - long time = recipeInfo.recipe.mSpecialValue; - return Arrays.asList( - StatCollector.translateToLocalFormatted("BW.NEI.display.radhatch.0", radioLevel), - StatCollector.translateToLocalFormatted("BW.NEI.display.radhatch.1", amount), - StatCollector.translateToLocalFormatted("BW.NEI.display.radhatch.2", time * amount / 20.0)); - }); - public final GT_Recipe.GT_Recipe_Map eicMap = new GT_Recipe.GT_Recipe_Map( - new HashSet<>(GT_Recipe.GT_Recipe_Map.sImplosionRecipes.mRecipeList.size()), - "gt.recipe.electricimplosioncompressor", - "Electric Implosion Compressor", - null, - "gregtech:textures/gui/basicmachines/Default", - 6, - 2, - 0, - 0, - 1, - "", - 1, - "", - true, - true).setSlotOverlay(false, false, GT_UITextures.OVERLAY_SLOT_IMPLOSION) - .setProgressBar(GT_UITextures.PROGRESSBAR_COMPRESS, ProgressBar.Direction.RIGHT); - - /** - * @param machine 0 = biolab; 1 = BacterialVat; 2 = sAcidGenFuels; 3 = circuitAssemblyLine - */ - public GT_Recipe.GT_Recipe_Map getMappingsFor(byte machine) { - return switch (machine) { - case 0 -> this.sBiolab; - case 1 -> this.sBacteriaVat; - case 2 -> this.sAcidGenFuels; - case 3 -> this.sCircuitAssemblyLineMap; - case 4 -> this.sRadHatch; - default -> null; - }; - } public static long calcDecayTicks(int x) { long ret; @@ -254,8 +45,8 @@ public class BWRecipes { } public boolean addRadHatch(ItemStack item, int radioLevel, int amount, short[] rgba) { - return this.sRadHatch.addRecipe( - new DynamicGTRecipe( + return radioHatchRecipes.addRecipe( + new GT_Recipe( false, new ItemStack[] { item }, null, @@ -269,26 +60,10 @@ public class BWRecipes { != null; } - public boolean addRadHatch(ItemStack item, int radioLevel, int amount, int time, short[] rgba) { - return this.sRadHatch.addRecipe( - new DynamicGTRecipe( - false, - new ItemStack[] { item }, - null, - null, - new int[] { rgba[0], rgba[1], rgba[2] }, - null, - null, - amount, - radioLevel, - time)) - != null; - } - public boolean addBioLabRecipe(ItemStack[] aInputs, ItemStack aOutput, ItemStack aSpecialItems, int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( + return bioLabRecipes.addRecipe( + new GT_Recipe( true, aInputs, new ItemStack[] { aOutput }, @@ -304,8 +79,8 @@ public class BWRecipes { public boolean addBioLabRecipeIncubation(ItemStack aInput, BioCulture aOutput, int[] aChances, FluidStack[] aFluidInputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( + return bioLabRecipes.addRecipe( + new GT_Recipe( true, new ItemStack[] { BioItemList.getPetriDish(null), aInput }, new ItemStack[] { BioItemList.getPetriDish(aOutput) }, @@ -321,8 +96,8 @@ public class BWRecipes { public boolean addBioLabRecipeIncubation(ItemStack aInput, BioCulture aOutput, int[] aChances, FluidStack aFluidInputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( + return bioLabRecipes.addRecipe( + new GT_Recipe( true, new ItemStack[] { BioItemList.getPetriDish(null), aInput }, new ItemStack[] { BioItemList.getPetriDish(aOutput) }, @@ -336,119 +111,6 @@ public class BWRecipes { != null; } - @Deprecated - public boolean addBioLabRecipeDNAExtraction(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( - true, - aInputs, - new ItemStack[] { aOutput }, - BioItemList.mBioLabParts[0], - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue)) - != null; - } - - @Deprecated - public boolean addBioLabRecipePCRThermoclycling(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( - true, - aInputs, - new ItemStack[] { aOutput }, - BioItemList.mBioLabParts[1], - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue)) - != null; - } - - @Deprecated - public boolean addBioLabRecipePlasmidSynthesis(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( - true, - aInputs, - new ItemStack[] { aOutput }, - BioItemList.mBioLabParts[2], - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue)) - != null; - } - - @Deprecated - public boolean addBioLabRecipeTransformation(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( - true, - aInputs, - new ItemStack[] { aOutput }, - BioItemList.mBioLabParts[3], - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue)) - != null; - } - - @Deprecated - public boolean addBioLabRecipeClonalCellularSynthesis(ItemStack[] aInputs, ItemStack aOutput, int[] aChances, - FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - return this.sBiolab.addRecipe( - new DynamicGTRecipe( - true, - aInputs, - new ItemStack[] { aOutput }, - BioItemList.mBioLabParts[4], - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue)) - != null; - } - - @Deprecated - public boolean addBacterialVatRecipe(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, - FluidStack[] aFluidOutputs, int aDuration, int aEUt, Materials material, @Nonnegative byte glasTier) { - int aSievert = 0; - if (material.getProtons() >= 83 || material.getProtons() == 61 || material.getProtons() == 43) - aSievert += calculateSv(material); - aSievert = aSievert << 6; - aSievert = aSievert | glasTier; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( - false, - aInputs, - aOutputs, - null, - new int[] {}, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSievert)) - != null; - } - public boolean addBacterialVatRecipe(ItemStack[] aInputs, BioCulture aCulture, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, @Nonnegative int aDuration, @Nonnegative int aEUt, @Nonnegative int aSv, @Nonnegative int glasTier, int aSpecialValue, boolean exactSv) { @@ -460,8 +122,8 @@ public class BWRecipes { aSievert = aSievert | specialToByte(aSpecialValue); aSievert = aSievert << 4; aSievert = aSievert | glasTier; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( + return bacterialVatRecipes.addRecipe( + new GT_Recipe( false, aInputs, null, @@ -489,8 +151,8 @@ public class BWRecipes { aSievert = aSievert | specialToByte(aSpecialValue); aSievert = aSievert << 4; aSievert = aSievert | gTier; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( + return bacterialVatRecipes.addRecipe( + new GT_Recipe( false, aInputs, null, @@ -504,57 +166,6 @@ public class BWRecipes { != null; } - @Deprecated - public boolean addBacterialVatRecipe(ItemStack[] aInputs, ItemStack[] aOutputs, FluidStack[] aFluidInputs, - FluidStack[] aFluidOutputs, int aDuration, int aEUt, Materials material, boolean exactSv) { - int aSievert = 0; - if (material.getProtons() >= 83 || material.getProtons() == 61 || material.getProtons() == 43) - aSievert += calculateSv(material); - aSievert = aSievert << 1; - aSievert = aSievert | (exactSv ? 1 : 0); - aSievert = aSievert << 6; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( - false, - aInputs, - aOutputs, - null, - new int[] {}, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSievert)) - != null; - } - - @Deprecated - public boolean addBacterialVatRecipe(ItemStack[] aInputs, BioCulture culture, FluidStack[] aFluidInputs, - FluidStack[] aFluidOutputs, int aDuration, int aEUt, Materials material, int aSpecialValue, - boolean exactSv) { - int aSievert = 0; - if (material.getProtons() >= 83 || material.getProtons() == 61 || material.getProtons() == 43) - aSievert += calculateSv(material); - aSievert = aSievert << 1; - aSievert = aSievert | (exactSv ? 1 : 0); - aSievert = aSievert << 2; - aSievert = aSievert | specialToByte(aSpecialValue); - aSievert = aSievert << 4; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( - false, - aInputs, - null, - BioItemList.getPetriDish(culture), - new int[] {}, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSievert)) - != null; - } - /** * Adds a Vat recipe without Rad requirements but with Glas requirements */ @@ -562,8 +173,8 @@ public class BWRecipes { FluidStack[] aFluidOutputs, int aDuration, int aEUt, byte glasTier) { int aSievert = 0; aSievert = aSievert | glasTier; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( + return bacterialVatRecipes.addRecipe( + new GT_Recipe( false, aInputs, null, @@ -582,8 +193,8 @@ public class BWRecipes { */ public boolean addBacterialVatRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, BioCulture culture, FluidStack[] aFluidOutputs, int aDuration, int aEUt) { - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( + return bacterialVatRecipes.addRecipe( + new GT_Recipe( false, aInputs, null, @@ -596,342 +207,4 @@ public class BWRecipes { 0)) != null; } - - public boolean addTrimmedBacterialVatRecipe(ItemStack[] aInputs, BioCulture aCulture, FluidStack[] aFluidInputs, - FluidStack[] aFluidOutputs, int aDuration, int aEUt, Materials material, @Nonnegative int glasTier, - int aSpecialValue, boolean exactSv) { - byte gTier = (byte) glasTier; - int aSievert = 0; - if (material.getProtons() >= 83 || material.getProtons() == 61 || material.getProtons() == 43) - aSievert += material.getProtons(); - aSievert = aSievert << 1; - aSievert = aSievert | (exactSv ? 1 : 0); - aSievert = aSievert << 2; - aSievert = aSievert | specialToByte(aSpecialValue); - aSievert = aSievert << 4; - aSievert = aSievert | gTier; - return this.sBacteriaVat.addRecipe( - new BacteriaVatRecipe( - true, - aInputs, - null, - BioItemList.getPetriDish(aCulture), - new int[] {}, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSievert)) - != null; - } - - public static class DynamicGTRecipe extends GT_Recipe { - - public DynamicGTRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, - int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, - int aSpecialValue, GT_Recipe originalRecipe) { - super( - aOptimize, - aInputs, - aOutputs, - aSpecialItems, - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue); - if (originalRecipe != null) { - this.owners = new ArrayList<>(originalRecipe.owners); - this.stackTraces = new ArrayList<>(originalRecipe.stackTraces); - this.setOwner(MainMod.MOD_ID); - } - } - - public DynamicGTRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, - int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, - int aSpecialValue) { - this( - aOptimize, - aInputs, - aOutputs, - aSpecialItems, - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue, - null); - } - } - - public static class BW_Recipe_Map_LiquidFuel extends GT_Recipe.GT_Recipe_Map_Fuel { - - public BW_Recipe_Map_LiquidFuel(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, - String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, - int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, - int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, - boolean aNEIAllowed) { - super( - aRecipeList, - aUnlocalizedName, - aLocalName, - aNEIName, - aNEIGUIPath, - aUsualInputCount, - aUsualOutputCount, - aMinimalInputItems, - aMinimalInputFluids, - aAmperage, - aNEISpecialValuePre, - aNEISpecialValueMultiplier, - aNEISpecialValuePost, - aShowVoltageAmperageInNEI, - aNEIAllowed); - } - - public GT_Recipe addLiquidFuel(Materials M, int burn) { - return super.addFuel(M.getCells(1), Materials.Empty.getCells(1), burn); - } - - public GT_Recipe addMoltenFuel(Materials M, int burn) { - return super.addFuel( - GT_OreDictUnificator.get(OrePrefixes.cellMolten, M, 1), - Materials.Empty.getCells(1), - burn); - } - - public GT_Recipe addLiquidFuel(FluidStack fluidStack, int burn) { - return super.addFuel(ItemFluidCell.getUniversalFluidCell(fluidStack), Ic2Items.FluidCell.copy(), burn); - } - } - - public static class BacteriaVatRecipe extends GT_Recipe { - - public BacteriaVatRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, ItemStack aSpecialItems, - int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, - int aSpecialValue) { - super( - aOptimize, - aInputs, - aOutputs, - aSpecialItems, - aChances, - aFluidInputs, - aFluidOutputs, - aDuration, - aEUt, - aSpecialValue); - } - } - - public static class BacteriaVatRecipeMap extends BWRecipes.SpecialObjectSensitiveMap { - - public BacteriaVatRecipeMap(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, - String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, - int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, - int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, - boolean aNEIAllowed) { - super( - aRecipeList, - aUnlocalizedName, - aLocalName, - aNEIName, - aNEIGUIPath, - aUsualInputCount, - aUsualOutputCount, - aMinimalInputItems, - aMinimalInputFluids, - aAmperage, - aNEISpecialValuePre, - aNEISpecialValueMultiplier, - aNEISpecialValuePost, - aShowVoltageAmperageInNEI, - aNEIAllowed); - } - - @Override - protected GT_Recipe addRecipe(GT_Recipe aRecipe, boolean aCheckForCollisions, boolean aFakeRecipe, - boolean aHidden) { - aRecipe.mHidden = aHidden; - aRecipe.mFakeRecipe = aFakeRecipe; - GT_Recipe isthere = this - .findRecipe(null, false, false, 9223372036854775807L, aRecipe.mFluidInputs, aRecipe.mInputs); - - if (aRecipe.mFluidInputs.length < this.mMinimalInputFluids - && aRecipe.mInputs.length < this.mMinimalInputItems) { - return null; - } - return aCheckForCollisions && isthere != null - && BW_Util - .areStacksEqualOrNull((ItemStack) isthere.mSpecialItems, (ItemStack) aRecipe.mSpecialItems) - ? null - : this.add(aRecipe); - } - - public GT_Recipe addRecipe(GT_Recipe aRecipe, boolean VanillaGT) { - if (VanillaGT) return this.addRecipe(aRecipe, true, false, false); - return this.addRecipe(aRecipe); - } - - @Override - public GT_Recipe addRecipe(GT_Recipe aRecipe) { - - if (aRecipe.mInputs.length > 0 && GT_Utility.areStacksEqual( - aRecipe.mInputs[aRecipe.mInputs.length - 1], - GT_Utility.getIntegratedCircuit(32767))) - return aRecipe; - ItemStack[] nu1 = Arrays.copyOf(aRecipe.mInputs, aRecipe.mInputs.length + 1); - nu1[nu1.length - 1] = GT_Utility.getIntegratedCircuit(9 + nu1.length); - aRecipe.mInputs = nu1; - if (this.findRecipe(null, false, 9223372036854775807L, aRecipe.mFluidInputs, aRecipe.mInputs) != null) { - ItemStack[] nu = Arrays.copyOf(aRecipe.mInputs, aRecipe.mInputs.length + 1); - int i = 9 + nu.length; - do { - nu[nu.length - 1] = GT_Utility.getIntegratedCircuit(i); - i++; - aRecipe.mInputs = nu; - if (i > 24) i = 1; - if (i == 9 + nu.length) return null; - } while (this.findRecipe(null, false, 9223372036854775807L, aRecipe.mFluidInputs, aRecipe.mInputs) - != null); - } - return this.addRecipe(aRecipe, false, false, false); - } - - @Override - protected List<String> handleNEIItemInputTooltip(List<String> currentTip, - GT_NEI_DefaultHandler.FixedPositionedStack pStack) { - if (pStack.isFluid()) { - currentTip.add(EnumChatFormatting.GRAY + StatCollector.translateToLocal("nei.biovat.input.tooltip")); - return currentTip; - } - return super.handleNEIItemInputTooltip(currentTip, pStack); - } - - @Override - protected List<String> handleNEIItemOutputTooltip(List<String> currentTip, - GT_NEI_DefaultHandler.FixedPositionedStack pStack) { - if (pStack.isFluid()) { - currentTip.add(EnumChatFormatting.GRAY + StatCollector.translateToLocal("nei.biovat.output.tooltip")); - return currentTip; - } - return super.handleNEIItemOutputTooltip(currentTip, pStack); - } - - @Override - protected void drawNEIOverlayForInput(GT_NEI_DefaultHandler.FixedPositionedStack stack) { - drawFluidOverlay(stack); - } - - @Override - protected void drawNEIOverlayForOutput(GT_NEI_DefaultHandler.FixedPositionedStack stack) { - drawFluidOverlay(stack); - } - - private void drawFluidOverlay(GT_NEI_DefaultHandler.FixedPositionedStack stack) { - if (stack.isFluid()) { - drawNEIOverlayText( - "+", - stack, - colorOverride.getTextColorOrDefault("nei_overlay_yellow", 0xFDD835), - 0.5f, - true, - Alignment.TopRight); - return; - } - super.drawNEIOverlayForOutput(stack); - } - } - - public static class SpecialObjectSensitiveMap extends GT_Recipe.GT_Recipe_Map { - - public SpecialObjectSensitiveMap(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, - String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, - int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, - int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, - boolean aNEIAllowed) { - super( - aRecipeList, - aUnlocalizedName, - aLocalName, - aNEIName, - aNEIGUIPath, - aUsualInputCount, - aUsualOutputCount, - aMinimalInputItems, - aMinimalInputFluids, - aAmperage, - aNEISpecialValuePre, - aNEISpecialValueMultiplier, - aNEISpecialValuePost, - aShowVoltageAmperageInNEI, - aNEIAllowed); - this.setSpecialSlotSensitive(true); - } - } - - public static class BWNBTDependantCraftingRecipe implements IRecipe { - - ItemStack result; - Map<Character, ItemStack> charToStackMap = new HashMap<>(9, 1); - String[] shape; - - @SuppressWarnings({ "SuspiciousSystemArraycopy" }) - public BWNBTDependantCraftingRecipe(ItemStack result, Object... recipe) { - this.result = result; - this.shape = new String[3]; - System.arraycopy(recipe, 0, this.shape, 0, 3); - this.charToStackMap.put(' ', null); - for (int i = 3; i < recipe.length; i += 2) { - this.charToStackMap.put((char) recipe[i], ((ItemStack) recipe[i + 1]).copy()); - } - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (!(o instanceof BWRecipes.BWNBTDependantCraftingRecipe that)) return false; - - if (!Objects.equals(this.result, that.result) || !Objects.equals(this.charToStackMap, that.charToStackMap)) - return false; - // Probably incorrect - comparing Object[] arrays with Arrays.equals - return Arrays.equals(this.shape, that.shape); - } - - @Override - public int hashCode() { - int result1 = this.result != null ? this.result.hashCode() : 0; - result1 = 31 * result1 + (this.charToStackMap != null ? this.charToStackMap.hashCode() : 0); - return 31 * result1 + Arrays.hashCode(this.shape); - } - - @Override - public boolean matches(InventoryCrafting p_77569_1_, World p_77569_2_) { - for (int x = 0; x < 3; x++) { - for (int y = 0; y < 3; y++) { - ItemStack toCheck = p_77569_1_.getStackInRowAndColumn(y, x); - ItemStack ref = this.charToStackMap.get(this.shape[x].toCharArray()[y]); - if (!BW_Util.areStacksEqualOrNull(toCheck, ref)) return false; - } - } - return true; - } - - @Override - public ItemStack getCraftingResult(InventoryCrafting p_77572_1_) { - return this.result.copy(); - } - - @Override - public int getRecipeSize() { - return 10; - } - - @Override - public ItemStack getRecipeOutput() { - return this.result; - } - } } diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/util/StreamUtils.java b/src/main/java/com/github/bartimaeusnek/bartworks/util/StreamUtils.java index c56eac94dd..c8fa354dac 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/util/StreamUtils.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/util/StreamUtils.java @@ -16,20 +16,21 @@ package com.github.bartimaeusnek.bartworks.util; import java.util.Optional; import java.util.function.Predicate; +import gregtech.api.recipe.RecipeMap; import gregtech.api.util.GT_Recipe; public class StreamUtils { private StreamUtils() {} - public static Predicate<GT_Recipe.GT_Recipe_Map> filterVisualMaps() { - return gt_recipe_map -> { - Optional<GT_Recipe> op = gt_recipe_map.mRecipeList.stream().findAny(); + public static Predicate<RecipeMap<?>> filterVisualMaps() { + return recipeMap -> { + Optional<GT_Recipe> op = recipeMap.getAllRecipes().stream().findAny(); return op.isPresent() && !op.get().mFakeRecipe; }; } - public static boolean filterVisualMaps(GT_Recipe.GT_Recipe_Map gt_recipe_map) { - return filterVisualMaps().test(gt_recipe_map); + public static boolean filterVisualMaps(RecipeMap<?> recipeMap) { + return filterVisualMaps().test(recipeMap); } } diff --git a/src/main/resources/assets/bartworks/lang/de_DE.lang b/src/main/resources/assets/bartworks/lang/de_DE.lang index 5f47ffc626..23edaf6124 100644 --- a/src/main/resources/assets/bartworks/lang/de_DE.lang +++ b/src/main/resources/assets/bartworks/lang/de_DE.lang @@ -55,9 +55,16 @@ labModule.item.PCRThermoclyclingModule.name=PCR Thermozykler labModule.item.PlasmidSynthesisModule.name=Plasmid Synthese Modul labModule.item.TransformationModule.name=Transformations Modul moon.Ross128ba=Ross128ba -nei.biovat.0.name=Braucht Glass Tier: -nei.biovat.1.name=Braucht genau -nei.biovat.2.name=Braucht mindestens + +# RecipeMap +bw.recipe.biolab=Bio Labor +bw.recipe.BacteriaVat=Bacterien Tank +bw.fuels.acidgens=Säure Generator + +nei.biovat.0.name=Braucht Glass Tier: %s +nei.biovat.1.name=Braucht genau Sievert: %s Sv +nei.biovat.2.name=Braucht mindestens Sievert: %s Sv + planet.Ross128b=Ross128b solarsystem.Ross128System=Ross128-System star.Ross128=Ross128 diff --git a/src/main/resources/assets/bartworks/lang/en_US.lang b/src/main/resources/assets/bartworks/lang/en_US.lang index fdd5498770..7ec5d318d0 100644 --- a/src/main/resources/assets/bartworks/lang/en_US.lang +++ b/src/main/resources/assets/bartworks/lang/en_US.lang @@ -141,9 +141,19 @@ tooltip.tile.radhatch.9.name=h tooltip.tile.radhatch.10.name=Remaining: %s s / %s s tooltip.tile.acidgen.0.name=An Acid Generator tooltip.tile.acidgen.1.name=Creates Power from Chemical Energy Potentials. -nei.biovat.0.name=Needs Glass Tier: -nei.biovat.1.name=Need exactly -nei.biovat.2.name=Need minimum + +# RecipeMap +bw.recipe.biolab=Bio Lab +bw.recipe.BacteriaVat=Bacterial Vat +bw.fuels.acidgens=Acid Generator +bw.recipe.cal=Circuit Assembly Line +bw.recipe.radhatch=Radio Hatch Material List +gt.recipe.electricimplosioncompressor=Electric Implosion Compressor +bw.recipe.htgr=High Temperature Gas-cooled Reactor + +nei.biovat.0.name=Needs Glass Tier: %s +nei.biovat.1.name=Need exactly Sievert: %s Sv +nei.biovat.2.name=Need minimum Sievert: %s Sv nei.biovat.input.tooltip=Consumed up to 1,001x amount, depending on output rate nei.biovat.output.tooltip=Outputs up to 1,001x amount, depending on the amount of fluid stored in the Output Hatch diff --git a/src/main/resources/assets/bartworks/lang/fr_FR.lang b/src/main/resources/assets/bartworks/lang/fr_FR.lang index 6ccf3387b2..a9f4964759 100644 --- a/src/main/resources/assets/bartworks/lang/fr_FR.lang +++ b/src/main/resources/assets/bartworks/lang/fr_FR.lang @@ -127,9 +127,15 @@ tooltip.tile.radhatch.8.name=m tooltip.tile.radhatch.9.name=h tooltip.tile.acidgen.0.name=Un générateur à acide tooltip.tile.acidgen.1.name=Crée de l'énergie à partir de potentiels chimiques. -nei.biovat.0.name=A besoin du tier de verre: -nei.biovat.1.name=A besoin du montant exact -nei.biovat.2.name=A besoin d'un minimum + +# RecipeMap +bw.recipe.biolab=Bio Lab +bw.recipe.BacteriaVat=Bio Cuve +bw.fuels.acidgens=Générateur à Acide + +nei.biovat.0.name=A besoin du tier de verre: %s +nei.biovat.1.name=A besoin du montant exact Sievert: %s Sv +nei.biovat.2.name=A besoin d'un minimum Sievert: %s Sv tile.diode.name=Diode câble tile.energydistributor.name=Distributeur d'énergie diff --git a/src/main/resources/assets/bartworks/lang/zh_CN.lang b/src/main/resources/assets/bartworks/lang/zh_CN.lang index 6746def6a5..f3a9ca534d 100644 --- a/src/main/resources/assets/bartworks/lang/zh_CN.lang +++ b/src/main/resources/assets/bartworks/lang/zh_CN.lang @@ -127,9 +127,15 @@ tooltip.tile.radhatch.8.name=m tooltip.tile.radhatch.9.name=h tooltip.tile.acidgen.0.name=酸性发电机 tooltip.tile.acidgen.1.name=用化学势能产生电力. -nei.biovat.0.name=需要玻璃等级: -nei.biovat.1.name=精确剂量 -nei.biovat.2.name=最小剂量 + +# RecipeMap +bw.recipe.biolab=生物实验室 +bw.recipe.BacteriaVat=生物培养缸 +bw.fuels.acidgens=酸性发电机 + +nei.biovat.0.name=需要玻璃等级: %s +nei.biovat.1.name=精确剂量 Sievert: %s Sv +nei.biovat.2.name=最小剂量 Sievert: %s Sv tile.diode.name=线缆二极管 tile.energydistributor.name=能量分配器 |