aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2023-12-04 05:34:27 +0900
committerGitHub <noreply@github.com>2023-12-03 21:34:27 +0100
commitf74c7cc297d1d19d38a19683cd277ad9ce605d3a (patch)
treeb2a5d66ec5a959099240fb1db239ffc0f9531839 /src/main/java/gregtech/common
parentb08cde7de4ec93cba05fb070991ad1dffb800ce1 (diff)
downloadGT5-Unofficial-f74c7cc297d1d19d38a19683cd277ad9ce605d3a.tar.gz
GT5-Unofficial-f74c7cc297d1d19d38a19683cd277ad9ce605d3a.tar.bz2
GT5-Unofficial-f74c7cc297d1d19d38a19683cd277ad9ce605d3a.zip
Refactor RecipeMap (#2345)
* Remove deprecated and unused things * Move recipemap subclasses * Move GT_Recipe_Map to outside and rename to RecipeMap * Move recipemap instances to separated class & remove prepending s * Remove useless GT_Recipe constructors * Always use ModularUI * Rename IGT_RecipeMap -> IRecipeMap * Add RecipeMapBuilder * Remove more deprecated and unused things * Fix RecipeMap type parameters * Use multimap for recipe index * Fix bending recipe error in dev env * Remove mUniqueIdentifier * Update AE2FC * Less edgy texture for NEI recipe background * Add replicator fluid output slot for NEI and machine GUI * Fix fluid fuels not having fuel value in large boilers * Remove GT_RectHandler and NEI_TransferRectHost * Remove RecipeMapHandler * Move NEI energy description from RecipeMapFrontend to Power * Refactor the way to filter fusion recipes * Check restriction for some properties * Remove showVoltageAmperage * Make Power accept GT_Recipe * Fix NPE * Move NEI duration description to Power from Frontend * Directly implement IRecipeProcessingAwareHatch for GT_MetaTileEntity_Hatch_InputBus_ME * Make Power integrated with GT_OverclockCalculator * Rename Power -> OverclockDescriber * Don't modify recipe find logic until postload finishes * Reformat reserved MTE ids * Fix check for too few inputs on recipe addition * Move replicator logic to backend * Stop un-hiding assline recipes * Allow setting custom recipe comparator & implement for fusion * Update AE2FC * Rename getRecipeList and getRecipes -> getRecipeMap * Automatically register recipe catalysts * Cleanup the way to detect recipe collision * Make use of BasicUIProperties for basic machines * Make use of BasicUIProperties for UIHelper * Rename specialHandler -> recipeTransformer * Add way to automatically register handler info * Add recipe category * Add some APIs for addons * Rename blastRecipes -> blastFurnaceRecipes * Remove GT_MetaTileEntity_BasicMachine_GT_Recipe#mSharedTank and #mRequiresFluidForFiltering * Don't require setting duration and EU/t for fuel recipes * Don't require setting EU/t for primitive blast furnace recipes * Revert change to addMultiblockChemicalRecipe * Fix large boiler general desc recipe not being added * Hide duration and EU/t from large boiler * Cleanup recipe stacktrace draw * Extend metadata usage of recipe builder to recipe itself * Implement metadata handling & NEI comparator for PCB factory * Some rename around NEIRecipeInfo * Some toString implementations * Add more APIs for addons & some rename * Infer handler icon from recipe catalyst if one is not set * Also shrink recipe title when OC is not used * Remove rare earth centrifuge recipe * Use metadata for replicator backend * Adjust geothermal generator output slot * Allow having multiple transferrects * Store recipemap reference in backend * Rename vacuumRecipes -> vacuumFreezerRecipes * Add config to tweak visibility of recipe categories * Remove mHideRecyclingRecipes in favor of recipe category config * Fix typo fluidSolidfierRecipes -> fluidSolidifierRecipes * Refactor findRecipe and ProcessingLogic to use Stream * Fix BBF handler icon & remove bronze blast furnace * Add fluent API for findRecipe * Add way to stop adding progressbar * Change arg order for special texture * Avoid overwriting interesting failure with NO_RECIPE * Some changes for FuelBackend * Set space project icon * Remove localization from TT * Remove CNC recipe adder * Move recipe extractor from AE2FC * Minor internal change for ProcessingLogic#applyRecipe * More javadoc on #getAvailableRecipeMaps * Better implementation of #ofSupplier * Move replicator exponent config to GT_Proxy * Remove RC & IC2 macerator handling * Rename StreamUtil -> GT_StreamUtil * Refactor code around RecipeMetadataStorage * Revise #compileRecipe javadoc * Switch extreme diesel recipe loader to downstream recipe map * Optimize #reMap * Rename reload -> reloadNEICache * Minor tweak for drawEnergyInfo * a bit more doc * Adjust recipe catalysts * Add toString implementation for GT_Fluid for debug * Minor revision for OilCrackerBackend * Index replicator recipes by material --------- Co-authored-by: Glease <4586901+Glease@users.noreply.github.com>
Diffstat (limited to 'src/main/java/gregtech/common')
-rw-r--r--src/main/java/gregtech/common/GT_Client.java42
-rw-r--r--src/main/java/gregtech/common/GT_Proxy.java35
-rw-r--r--src/main/java/gregtech/common/GT_RecipeAdder.java369
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Block_Stones_Abstract.java22
-rw-r--r--src/main/java/gregtech/common/fluid/GT_Fluid.java9
-rw-r--r--src/main/java/gregtech/common/gui/modularui/UIHelper.java82
-rw-r--r--src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java125
-rw-r--r--src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java62
-rw-r--r--src/main/java/gregtech/common/items/ItemComb.java12
-rw-r--r--src/main/java/gregtech/common/items/ItemDrop.java10
-rw-r--r--src/main/java/gregtech/common/items/ItemPropolis.java8
-rw-r--r--src/main/java/gregtech/common/misc/spaceprojects/SpaceProjectManager.java18
-rw-r--r--src/main/java/gregtech/common/power/BasicMachineEUPower.java74
-rw-r--r--src/main/java/gregtech/common/power/EUPower.java58
-rw-r--r--src/main/java/gregtech/common/power/FusionPower.java52
-rw-r--r--src/main/java/gregtech/common/power/Power.java73
-rw-r--r--src/main/java/gregtech/common/power/SteamPower.java54
-rw-r--r--src/main/java/gregtech/common/power/UnspecifiedEUPower.java28
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_RecipeFilter.java67
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java9
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_NaquadahReactor.java20
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java4
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_InputBus_ME.java4
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/IRecipeProcessingAwareHatch.java21
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java11
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_IndustrialApiary.java31
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java97
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java26
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java9
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java94
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java9
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java20
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java80
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java4
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java18
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java6
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java8
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java58
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java15
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java15
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java15
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IntegratedOreFactory.java13
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java15
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java16
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_GasAdvanced.java16
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java5
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_NanoForge.java6
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java21
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java3
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java20
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PlasmaForge.java6
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java14
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java10
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_TranscendentPlasmaMixer.java6
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multiblock/AdvChemicalReactor.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multiblock/Macerator.java5
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java13
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java13
-rw-r--r--src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java7
-rw-r--r--src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java5
81 files changed, 888 insertions, 1234 deletions
diff --git a/src/main/java/gregtech/common/GT_Client.java b/src/main/java/gregtech/common/GT_Client.java
index bac93fa9e1..66d193f3ea 100644
--- a/src/main/java/gregtech/common/GT_Client.java
+++ b/src/main/java/gregtech/common/GT_Client.java
@@ -40,6 +40,8 @@ import net.minecraftforge.oredict.OreDictionary;
import org.lwjgl.opengl.GL11;
+import com.glodblock.github.nei.recipes.FluidRecipe;
+import com.glodblock.github.nei.recipes.extractor.GregTech5RecipeExtractor;
import com.gtnewhorizon.structurelib.alignment.IAlignment;
import com.gtnewhorizon.structurelib.alignment.IAlignmentProvider;
@@ -68,6 +70,8 @@ import gregtech.api.metatileentity.MetaPipeEntity;
import gregtech.api.multitileentity.multiblock.base.MultiBlockPart;
import gregtech.api.net.GT_Packet_ClientPreference;
import gregtech.api.objects.GT_ItemStack;
+import gregtech.api.recipe.RecipeCategory;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.ColorsMetadataSection;
import gregtech.api.util.ColorsMetadataSectionSerializer;
import gregtech.api.util.GT_ClientPreference;
@@ -75,7 +79,6 @@ import gregtech.api.util.GT_CoverBehaviorBase;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_PlayedSound;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder;
import gregtech.common.blocks.GT_Item_Machines;
@@ -94,6 +97,7 @@ import gregtech.common.tileentities.debug.GT_MetaTileEntity_AdvDebugStructureWri
import gregtech.loaders.ExtraIcons;
import gregtech.loaders.misc.GT_Bees;
import gregtech.loaders.preload.GT_PreLoad;
+import gregtech.nei.NEI_GT_Config;
import ic2.api.tile.IWrenchable;
// Referenced classes of package gregtech.common:
@@ -593,6 +597,7 @@ public class GT_Client extends GT_Proxy implements Runnable {
new GT_Renderer_Entity_Arrow(GT_Entity_Arrow_Potion.class, "arrow_potions");
new GT_FlaskRenderer();
new GT_FluidDisplayStackRenderer();
+ MinecraftForge.EVENT_BUS.register(new NEI_GT_Config());
}
@Override
@@ -633,6 +638,21 @@ public class GT_Client extends GT_Proxy implements Runnable {
}
@Override
+ public void onLoadComplete() {
+ super.onLoadComplete();
+ for (RecipeCategory category : RecipeCategory.ALL_RECIPE_CATEGORIES.values()) {
+ if (category.recipeMap.getFrontend()
+ .getNEIProperties().registerNEI) {
+ FluidRecipe.addRecipeMap(
+ category.unlocalizedName,
+ new GregTech5RecipeExtractor(
+ category.unlocalizedName.equals("gt.recipe.scanner")
+ || category.unlocalizedName.equals("gt.recipe.fakeAssemblylineProcess")));
+ }
+ }
+ }
+
+ @Override
public void run() {
GT_Log.out.println("GT_Mod: Downloading Cape List.");
try (final Scanner tScanner = new Scanner(new URL(GT_CAPE_LIST_URL).openStream())) {
@@ -672,7 +692,12 @@ public class GT_Client extends GT_Proxy implements Runnable {
}
@Override
- public int getReloadCount() {
+ public void reloadNEICache() {
+ mReloadCount++;
+ }
+
+ @Override
+ public int getNEIReloadCount() {
return mReloadCount;
}
@@ -693,31 +718,31 @@ public class GT_Client extends GT_Proxy implements Runnable {
// Check for more IC2 recipes to also catch MineTweaker additions
GT_ModHandler.addIC2RecipesToGT(
GT_ModHandler.getMaceratorRecipeList(),
- GT_Recipe.GT_Recipe_Map.sMaceratorRecipes,
+ RecipeMaps.maceratorRecipes,
true,
true,
true);
GT_ModHandler.addIC2RecipesToGT(
GT_ModHandler.getCompressorRecipeList(),
- GT_Recipe.GT_Recipe_Map.sCompressorRecipes,
+ RecipeMaps.compressorRecipes,
true,
true,
true);
GT_ModHandler.addIC2RecipesToGT(
GT_ModHandler.getExtractorRecipeList(),
- GT_Recipe.GT_Recipe_Map.sExtractorRecipes,
+ RecipeMaps.extractorRecipes,
true,
true,
true);
GT_ModHandler.addIC2RecipesToGT(
GT_ModHandler.getOreWashingRecipeList(),
- GT_Recipe.GT_Recipe_Map.sOreWasherRecipes,
+ RecipeMaps.oreWasherRecipes,
false,
true,
true);
GT_ModHandler.addIC2RecipesToGT(
GT_ModHandler.getThermalCentrifugeRecipeList(),
- GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes,
+ RecipeMaps.thermalCentrifugeRecipes,
true,
true,
true);
@@ -726,9 +751,6 @@ public class GT_Client extends GT_Proxy implements Runnable {
afterSomeTime++;
if (afterSomeTime >= 100L) {
afterSomeTime = 0;
- for (GT_Recipe recipe : GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) {
- recipe.mHidden = false;
- }
}
for (Iterator<Map.Entry<GT_PlayedSound, Integer>> iterator = GT_Utility.sPlayedSoundMap.entrySet()
.iterator(); iterator.hasNext();) {
diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java
index e5e4fd0524..1159ac95ba 100644
--- a/src/main/java/gregtech/common/GT_Proxy.java
+++ b/src/main/java/gregtech/common/GT_Proxy.java
@@ -31,9 +31,9 @@ import static gregtech.api.enums.Mods.ThaumicBoots;
import static gregtech.api.enums.Mods.ThaumicTinkerer;
import static gregtech.api.enums.Mods.TwilightForest;
import static gregtech.api.enums.Mods.WitchingGadgets;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCrackingRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCutterRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sWiremillRecipes;
+import static gregtech.api.recipe.RecipeMaps.crackingRecipes;
+import static gregtech.api.recipe.RecipeMaps.cutterRecipes;
+import static gregtech.api.recipe.RecipeMaps.wiremillRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeConstants.UniversalChemical;
import static gregtech.api.util.GT_Util.LAST_BROKEN_TILEENTITY;
@@ -151,6 +151,8 @@ import gregtech.api.objects.GT_ChunkManager;
import gregtech.api.objects.GT_ItemStack;
import gregtech.api.objects.GT_UO_DimensionList;
import gregtech.api.objects.ItemData;
+import gregtech.api.recipe.RecipeCategory;
+import gregtech.api.recipe.RecipeCategorySetting;
import gregtech.api.util.GT_BlockMap;
import gregtech.api.util.GT_CLS_Compat;
import gregtech.api.util.GT_ChunkAssociatedData;
@@ -562,7 +564,6 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
public boolean mNerfedCrops = true;
public boolean mGTBees = true;
public boolean mHideUnusedOres = true;
- public boolean mHideRecyclingRecipes = true;
public boolean mPollution = true;
public boolean mExplosionItemDrop = false;
public boolean mUseGreatlyShrukenReplacementList = true;
@@ -575,6 +576,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
public int mGraniteHavestLevel = 3;
public int mMaxHarvestLevel = 7;
public int mWireHeatingTicks = 4;
+ public double replicatorExponent = 1.2D;
public int mPollutionSmogLimit = 550000;
public int mPollutionPoisonLimit = 750000;
public int mPollutionVegetationLimit = 1000000;
@@ -719,6 +721,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
*/
public boolean mRenderItemChargeBar = true;
+ public final Map<RecipeCategory, RecipeCategorySetting> recipeCategorySettings = new HashMap<>();
+
/**
* This enables showing voltage tier of transformer for Waila, instead of raw voltage number
*/
@@ -826,6 +830,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
GregTech_API.sPreloadStarted = true;
this.mIgnoreTcon = GregTech_API.sOPStuff.get(ConfigCategories.general, "ignoreTConstruct", true);
this.mWireHeatingTicks = GregTech_API.sOPStuff.get(ConfigCategories.general, "WireHeatingTicks", 4);
+ this.replicatorExponent = GregTech_API.sOPStuff.get("Replicator", "Nerf Exponent", 1.2D);
NetworkRegistry.INSTANCE.registerGuiHandler(GT_Values.GT, this);
for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry
.getRegisteredFluidContainerData()) {
@@ -1338,6 +1343,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
}
}
+ public void onLoadComplete() {}
+
public void onServerAboutToStart() {
dimensionWisePollution.clear(); // !!! IMPORTANT for map switching...
GT_ChunkAssociatedData.clearAll();
@@ -1418,7 +1425,15 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
@SubscribeEvent
public void onClientConnectedToServerEvent(FMLNetworkEvent.ClientConnectedToServerEvent aEvent) {}
- public int getReloadCount() {
+ /**
+ * Tells {@link gregtech.nei.GT_NEI_DefaultHandler} to reload recipes.
+ */
+ public void reloadNEICache() {}
+
+ /**
+ * Logging in to server or {@link #reloadNEICache} being called increases the count.
+ */
+ public int getNEIReloadCount() {
return 0;
}
@@ -2022,13 +2037,13 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
.itemOutputs(new ItemStack(aEvent.Ore.getItem(), 1, 8))
.duration(20 * SECONDS)
.eut(1)
- .addTo(sWiremillRecipes);
+ .addTo(wiremillRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(GT_ModHandler.getIC2Item("ironCableItem", 6L))
.itemOutputs(new ItemStack(aEvent.Ore.getItem(), 1, 9))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sWiremillRecipes);
+ .addTo(wiremillRecipes);
}
GT_Values.RA.stdBuilder()
@@ -2036,7 +2051,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
.itemOutputs(new ItemStack(aEvent.Ore.getItem(), 16, 4))
.duration(20 * SECONDS)
.eut(8)
- .addTo(sCutterRecipes);
+ .addTo(cutterRecipes);
}
}
default -> {}
@@ -2622,7 +2637,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
.fluidOutputs(new FluidStack(crackedFluids[i], 1000))
.duration((1 + i) * SECONDS)
.eut(240)
- .addTo(sCrackingRecipes);
+ .addTo(crackingRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(Materials.Hydrogen.getCells(hydrogenAmount), GT_Utility.getIntegratedCircuit(i + 1))
@@ -2674,7 +2689,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG
.fluidOutputs(new FluidStack(crackedFluids[i], 1200))
.duration((1 + i) * SECONDS)
.eut(240)
- .addTo(sCrackingRecipes);
+ .addTo(crackingRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(GT_ModHandler.getIC2Item("steamCell", 1L), GT_Utility.getIntegratedCircuit(i + 1))
diff --git a/src/main/java/gregtech/common/GT_RecipeAdder.java b/src/main/java/gregtech/common/GT_RecipeAdder.java
index c086ecf2be..cc81a5b53d 100644
--- a/src/main/java/gregtech/common/GT_RecipeAdder.java
+++ b/src/main/java/gregtech/common/GT_RecipeAdder.java
@@ -26,6 +26,7 @@ import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.interfaces.internal.IGT_RecipeAdder;
import gregtech.api.objects.ItemData;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_AssemblyLineUtils;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
@@ -62,7 +63,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFusionRecipes.addRecipe(
+ RecipeMaps.fusionRecipes.addRecipe(
null,
new FluidStack[] { aInput1, aInput2 },
new FluidStack[] { aOutput1 },
@@ -80,20 +81,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (FluidOutputArray.length == 0) return false;
- // If the recipe has more than 2 inputs or 2 outputs it is added to a different recipe map.
- // This is so NEI can function properly and understand the recipe. Otherwise, it gets cut off.
- if ((FluidInputArray.length > 2) || (FluidOutputArray.length > 2)) {
- GT_Recipe.GT_Recipe_Map.sComplexFusionRecipes.addRecipe(
- null,
- FluidInputArray,
- FluidOutputArray,
- aFusionDurationInTicks,
- aFusionEnergyPerTick,
- aEnergyNeededForStartingFusion);
- return true;
- }
-
- GT_Recipe.GT_Recipe_Map.sFusionRecipes.addRecipe(
+ RecipeMaps.fusionRecipes.addRecipe(
null,
FluidInputArray,
FluidOutputArray,
@@ -186,7 +174,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(
+ RecipeMaps.centrifugeRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2 },
new ItemStack[] { aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6, },
@@ -225,7 +213,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
oNumber++;
}
- GT_Recipe.GT_Recipe_Map.sMultiblockCentrifugeRecipes.addRecipe(
+ RecipeMaps.centrifugeNonCellRecipes.addRecipe(
false,
itemInputs,
itemOutputs,
@@ -248,7 +236,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("compressor", aInput1, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sCompressorRecipes.addRecipe(
+ RecipeMaps.compressorRecipes.addRecipe(
true,
new ItemStack[] { aInput1 },
new ItemStack[] { aOutput1 },
@@ -300,7 +288,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.addRecipe(
+ RecipeMaps.electrolyzerRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2 },
new ItemStack[] { aOutput1, aOutput2, aOutput3, aOutput4, aOutput5, aOutput6 },
@@ -340,7 +328,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
oNumber++;
}
- GT_Recipe.GT_Recipe_Map.sMultiblockElectrolyzerRecipes
+ RecipeMaps.electrolyzerNonCellRecipes
.addRecipe(false, itemInputs, itemOutputs, null, aChances, fluidInputs, fluidOutputs, aDuration, aEUt, 0);
return true;
}
@@ -428,7 +416,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sChemicalRecipes.addRecipe(
+ RecipeMaps.chemicalReactorRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2 },
new ItemStack[] { aOutput, aOutput2 },
@@ -443,7 +431,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
&& aInput1.getItemDamage() >= 10)
&& !(aInput2 != null && aInput2.getItem() instanceof GT_IntegratedCircuit_Item
&& aInput2.getItemDamage() >= 10)) {
- GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(
+ RecipeMaps.multiblockChemicalReactorRecipes.addRecipe(
false,
new ItemStack[] { aInput1, aInput2 },
new ItemStack[] { aOutput, aOutput2 },
@@ -468,7 +456,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (aEUtick <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes
+ RecipeMaps.multiblockChemicalReactorRecipes
.addRecipe(false, aInputs, aOutputs, null, null, aFluidInputs, aFluidOutputs, aDuration, aEUtick, 0);
return true;
}
@@ -495,7 +483,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (aEUtick <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sChemicalRecipes.addRecipe(
+ RecipeMaps.chemicalReactorRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2 },
new ItemStack[] { aOutput, aOutput2 },
@@ -576,7 +564,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("blastfurnace", aInput1, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sBlastRecipes.addRecipe(
+ RecipeMaps.blastFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2 },
new ItemStack[] { aOutput1, aOutput2 },
@@ -600,7 +588,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("blastfurnace", aInput1, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sBlastRecipes.addRecipe(
+ RecipeMaps.blastFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, aInput3, aInput4 },
new ItemStack[] { aOutput1, aOutput2, aOutput3, aOutput4 },
@@ -618,7 +606,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
@Override
public boolean addPlasmaForgeRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray,
ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt, int coil_heat_level) {
- GT_Recipe.GT_Recipe_Map.sPlasmaForgeRecipes.addRecipe(
+ RecipeMaps.plasmaForgeRecipes.addRecipe(
false,
ItemInputArray,
OutputItemArray,
@@ -647,7 +635,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
}
Materials[] coals = new Materials[] { Materials.Coal, Materials.Charcoal };
for (Materials coal : coals) {
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, coal.getGems(aCoalAmount) },
new ItemStack[] { aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount) },
@@ -658,7 +646,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration,
0,
0);
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, coal.getDust(aCoalAmount) },
new ItemStack[] { aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount) },
@@ -671,7 +659,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
0);
}
if (Railcraft.isModLoaded()) {
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, RailcraftToolItems.getCoalCoke(aCoalAmount / 2) },
new ItemStack[] { aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount / 2) },
@@ -684,7 +672,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
0);
}
if (GTPlusPlus.isModLoaded()) {
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2,
GT_ModHandler.getModItem(GTPlusPlus.ID, "itemCactusCoke", (aCoalAmount * 2L)) },
@@ -696,7 +684,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration * 2 / 3,
0,
0);
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2,
GT_ModHandler.getModItem(GTPlusPlus.ID, "itemSugarCoke", (aCoalAmount * 2L)) },
@@ -717,7 +705,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aOutput1 = aOutput1 == null ? null : GT_Utility.copyAmount(aOutput1.stackSize * 10, aOutput1);
aOutput2 = aOutput2 == null ? null : GT_Utility.copyAmount(aOutput2.stackSize * 10, aOutput2);
for (Materials coal : coals) {
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, coal.getBlocks(aCoalAmount) },
new ItemStack[] { aOutput1, aOutput2, Materials.DarkAsh.getDust(aCoalAmount) },
@@ -728,7 +716,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration * 10,
0,
0);
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, coal.getBlocks(aCoalAmount) },
new ItemStack[] { aOutput1, aOutput2, Materials.DarkAsh.getDust(aCoalAmount) },
@@ -741,7 +729,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
0);
}
if (Railcraft.isModLoaded()) {
- GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(
+ RecipeMaps.primitiveBlastRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, EnumCube.COKE_BLOCK.getItem(aCoalAmount / 2) },
new ItemStack[] { aOutput1, aOutput2, Materials.Ash.getDust(aCoalAmount / 2) },
@@ -767,7 +755,17 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("canning", aInput1, aDuration)) <= 0) {
return false;
}
- new GT_Recipe(aInput1, aEUt, aInput2, aDuration, aOutput1, aOutput2);
+ RecipeMaps.cannerRecipes.addRecipe(
+ true,
+ aInput2 == null ? new ItemStack[] { aInput1 } : new ItemStack[] { aInput1, aInput2 },
+ new ItemStack[] { aOutput1, aOutput2 },
+ null,
+ null,
+ null,
+ null,
+ aDuration,
+ Math.max(aEUt, 1),
+ 0);
return true;
}
@@ -793,24 +791,26 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
<= 0) {
return false;
}
- GT_Recipe tRecipe = new GT_Recipe(aInput1, aInput2, aEUt, aDuration, aOutput1);
+ GT_Recipe tRecipe = new GT_Recipe(
+ true,
+ aInput2 == null ? new ItemStack[] { aInput1 } : new ItemStack[] { aInput1, aInput2 },
+ new ItemStack[] { aOutput1 },
+ null,
+ null,
+ null,
+ null,
+ aDuration,
+ Math.max(aEUt, 1),
+ 0);
if (hidden) {
tRecipe.mHidden = true;
}
+ RecipeMaps.alloySmelterRecipes.addRecipe(tRecipe);
return true;
}
@Override
@Deprecated
- public boolean addCNCRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) {
- if ((aInput1 == null) || (aOutput1 == null)) {
- return false;
- }
- return GregTech_API.sRecipeFile.get("cnc", aOutput1, aDuration) > 0;
- }
-
- @Override
- @Deprecated
public boolean addLatheRecipe(ItemStack aInput1, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) {
if ((aInput1 == null) || (aOutput1 == null)) {
return false;
@@ -818,7 +818,17 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("lathe", aInput1, aDuration)) <= 0) {
return false;
}
- new GT_Recipe(aInput1, aOutput1, aOutput2, aDuration, aEUt);
+ RecipeMaps.latheRecipes.addRecipe(
+ true,
+ new ItemStack[] { aInput1 },
+ new ItemStack[] { aOutput1, aOutput2 },
+ null,
+ null,
+ null,
+ null,
+ aDuration,
+ aEUt,
+ 0);
return true;
}
@@ -832,7 +842,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("cutting", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sCutterRecipes.addRecipe(
+ RecipeMaps.cutterRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2 },
@@ -918,7 +928,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom && aSpecial == -200) {
aSpecial = 0;
}
- GT_Recipe.GT_Recipe_Map.sCutterRecipes.addRecipe(
+ RecipeMaps.cutterRecipes.addRecipe(
true,
aInputs,
aOutputs,
@@ -928,7 +938,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration * 2,
aEUt,
aSpecial);
- GT_Recipe.GT_Recipe_Map.sCutterRecipes.addRecipe(
+ RecipeMaps.cutterRecipes.addRecipe(
true,
aInputs,
aOutputs,
@@ -938,7 +948,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration * 2,
aEUt,
aSpecial);
- GT_Recipe.GT_Recipe_Map.sCutterRecipes.addRecipe(
+ RecipeMaps.cutterRecipes.addRecipe(
true,
aInputs,
aOutputs,
@@ -1058,7 +1068,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
}
}
- GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.addRecipe(
+ RecipeMaps.assemblerRecipes.addRecipe(
true,
aInputs,
new ItemStack[] { aOutput1 },
@@ -1091,7 +1101,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
return false;
}
- GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.addRecipe(
+ RecipeMaps.assemblerRecipes.addRecipe(
true,
aInputs,
new ItemStack[] { aOutput1 },
@@ -1113,7 +1123,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("wiremill", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sWiremillRecipes.addRecipe(
+ RecipeMaps.wiremillRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput },
@@ -1135,7 +1145,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("wiremill", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sWiremillRecipes.addRecipe(
+ RecipeMaps.wiremillRecipes.addRecipe(
true,
new ItemStack[] { aInput, aCircuit },
new ItemStack[] { aOutput },
@@ -1157,7 +1167,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("polarizer", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPolarizerRecipes.addRecipe(
+ RecipeMaps.polarizerRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput },
@@ -1179,7 +1189,17 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("bender", aInput1, aDuration)) <= 0) {
return false;
}
- new GT_Recipe(aEUt, aDuration, aInput1, aOutput1);
+ RecipeMaps.benderRecipes.addRecipe(
+ true,
+ new ItemStack[] { aInput1, ItemList.Circuit_Integrated.getWithDamage(0, aInput1.stackSize) },
+ new ItemStack[] { aOutput1 },
+ null,
+ null,
+ null,
+ null,
+ aDuration,
+ Math.max(aEUt, 1),
+ 0);
return true;
}
@@ -1202,7 +1222,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration,
Math.max(aEUt, 1),
0);
- GT_Recipe.GT_Recipe_Map.sBenderRecipes.addRecipe(tRecipe);
+ RecipeMaps.benderRecipes.addRecipe(tRecipe);
return true;
}
@@ -1215,7 +1235,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("extruder", aOutput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sExtruderRecipes.addRecipe(
+ RecipeMaps.extruderRecipes.addRecipe(
true,
new ItemStack[] { aInput, aShape },
new ItemStack[] { aOutput },
@@ -1237,7 +1257,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("slicer", aOutput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sSlicerRecipes.addRecipe(
+ RecipeMaps.slicerRecipes.addRecipe(
true,
new ItemStack[] { aInput, aShape },
new ItemStack[] { aOutput },
@@ -1261,7 +1281,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("orewasher", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sOreWasherRecipes.addRecipe(
+ RecipeMaps.oreWasherRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -1285,7 +1305,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("orewasher", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sOreWasherRecipes.addRecipe(
+ RecipeMaps.oreWasherRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -1316,7 +1336,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
int tITNT = Math.max(1, tExplosives >> 2); // the best
// new GT_Recipe(aInput1, aInput2, aOutput1, aOutput2);
if (tGunpowder < 65) {
- GT_Recipe.GT_Recipe_Map.sImplosionRecipes.addRecipe(
+ RecipeMaps.implosionRecipes.addRecipe(
true,
new ItemStack[] { aInput1, ItemList.Block_Powderbarrel.get(tGunpowder) },
new ItemStack[] { aOutput1, aOutput2 },
@@ -1329,7 +1349,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
0);
}
if (tDynamite < 17) {
- GT_Recipe.GT_Recipe_Map.sImplosionRecipes.addRecipe(
+ RecipeMaps.implosionRecipes.addRecipe(
true,
new ItemStack[] { aInput1, GT_ModHandler.getIC2Item("dynamite", tDynamite, null) },
new ItemStack[] { aOutput1, aOutput2 },
@@ -1341,7 +1361,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
30,
0);
}
- GT_Recipe.GT_Recipe_Map.sImplosionRecipes.addRecipe(
+ RecipeMaps.implosionRecipes.addRecipe(
true,
new ItemStack[] { aInput1, new ItemStack(Blocks.tnt, tTNT) },
new ItemStack[] { aOutput1, aOutput2 },
@@ -1352,7 +1372,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
20,
30,
0);
- GT_Recipe.GT_Recipe_Map.sImplosionRecipes.addRecipe(
+ RecipeMaps.implosionRecipes.addRecipe(
true,
new ItemStack[] { aInput1, GT_ModHandler.getIC2Item("industrialTnt", tITNT, null) },
new ItemStack[] { aOutput1, aOutput2 },
@@ -1395,7 +1415,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("distillation", aInput.getUnlocalizedName(), aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sDistillationRecipes.addRecipe(
+ RecipeMaps.distillationTowerRecipes.addRecipe(
false,
null,
new ItemStack[] { aOutput2 },
@@ -1418,7 +1438,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("distillation", aInput.getUnlocalizedName(), aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sDistillationRecipes.addRecipe(
+ RecipeMaps.distillationTowerRecipes.addRecipe(
false,
aCircuit,
new ItemStack[] { aOutput2 },
@@ -1450,7 +1470,16 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("vacuumfreezer", aInput1, aDuration)) <= 0) {
return false;
}
- new GT_Recipe(aInput1, aOutput1, aDuration, aEUt, 0); // Since all other methods are taken
+ RecipeMaps.vacuumFreezerRecipes.addRecipe(
+ false,
+ new ItemStack[] { aInput1 },
+ new ItemStack[] { aOutput1 },
+ null,
+ null,
+ null,
+ aDuration,
+ aEUt,
+ 0);
FluidStack tInputFluid = GT_Utility.getFluidForFilledItem(aInput1, true);
FluidStack tOutputFluid = GT_Utility.getFluidForFilledItem(aOutput1, true);
if (tInputFluid != null && tOutputFluid != null) {
@@ -1468,7 +1497,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("vacuumfreezer", aInput1, aDuration)) <= 0) {
return false;
}
- new GT_Recipe(aInput1, aOutput1, aDuration);
+ addVacuumFreezerRecipe(aInput1, aOutput1, aDuration, 120);
FluidStack tInputFluid = GT_Utility.getFluidForFilledItem(aInput1, true);
FluidStack tOutputFluid = GT_Utility.getFluidForFilledItem(aOutput1, true);
if (tInputFluid != null && tOutputFluid != null) {
@@ -1483,8 +1512,16 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aInput1 == null) || (aOutput1 == null)) {
return false;
}
-
- new GT_Recipe(aInput1, aOutput1, aDuration, aEUt);
+ RecipeMaps.vacuumFreezerRecipes.addRecipe(
+ false,
+ null,
+ null,
+ null,
+ new FluidStack[] { aInput1 },
+ new FluidStack[] { aOutput1 },
+ Math.max(1, aDuration),
+ aEUt,
+ 0);
return true;
}
@@ -1492,7 +1529,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
@Deprecated
public boolean addVacuumFreezerRecipe(ItemStack[] aItemInput, FluidStack[] aFluidInput, ItemStack[] aItemOutput,
FluidStack[] aFluidOutput, int aDuration, int aEUt) {
- GT_Recipe.GT_Recipe_Map.sVacuumRecipes.addRecipe(
+ RecipeMaps.vacuumFreezerRecipes.addRecipe(
false,
aItemInput,
aItemOutput,
@@ -1518,7 +1555,14 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (aInput1 == null) {
return false;
}
- new GT_Recipe(aInput1, aOutput1, GregTech_API.sRecipeFile.get("fuel_" + aType, aInput1, aEU), aType);
+ new GT_Recipe(
+ aInput1,
+ aOutput1,
+ null,
+ null,
+ null,
+ GregTech_API.sRecipeFile.get("fuel_" + aType, aInput1, aEU),
+ aType);
return true;
}
@@ -1554,7 +1598,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("forgehammer", aOutput1, true)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sHammerRecipes.addRecipe(
+ RecipeMaps.hammerRecipes.addRecipe(
true,
new ItemStack[] { aInput1 },
new ItemStack[] { aOutput1 },
@@ -1572,7 +1616,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
public boolean addForgeHammerRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray,
ItemStack[] ItemOutputArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt) {
- GT_Recipe.GT_Recipe_Map.sHammerRecipes.addRecipe(
+ RecipeMaps.hammerRecipes.addRecipe(
true,
ItemInputArray,
ItemOutputArray,
@@ -1595,7 +1639,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("boxing", aFullBox, true)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.addRecipe(
+ RecipeMaps.packagerRecipes.addRecipe(
true,
new ItemStack[] { aContainedItem, aEmptyBox },
new ItemStack[] { aFullBox },
@@ -1618,7 +1662,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("unboxing", aFullBox, true)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes.addRecipe(
+ RecipeMaps.unpackagerRecipes.addRecipe(
true,
new ItemStack[] { aFullBox },
new ItemStack[] { aContainedItem, aEmptyBox },
@@ -1641,7 +1685,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("thermalcentrifuge", aInput, true)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes.addRecipe(
+ RecipeMaps.thermalCentrifugeRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -1664,7 +1708,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("thermalcentrifuge", aInput, true)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes.addRecipe(
+ RecipeMaps.thermalCentrifugeRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -1687,7 +1731,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("amplifier", aAmplifierItem, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sAmplifiers.addRecipe(
+ RecipeMaps.amplifierRecipes.addRecipe(
true,
new ItemStack[] { aAmplifierItem },
null,
@@ -1710,7 +1754,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("brewing", aOutput.getUnlocalizedName(), true)) {
return false;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sBrewingRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.brewingRecipes.addRecipe(
false,
new ItemStack[] { aIngredient },
null,
@@ -1742,7 +1786,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GregTech_API.sRecipeFile.get("brewing", aOutput.getUnlocalizedName(), true)) {
return false;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sBrewingRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.brewingRecipes.addRecipe(
false,
new ItemStack[] { aIngredient },
null,
@@ -1772,7 +1816,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0) {
return false;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sFermentingRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.fermentingRecipes.addRecipe(
false,
null,
null,
@@ -1841,7 +1885,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration = (aDuration + tScale - 1) / tScale;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sDistilleryRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.distilleryRecipes.addRecipe(
true,
new ItemStack[] { aCircuit },
new ItemStack[] { aSolidOutput },
@@ -1896,7 +1940,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
public boolean addFluidSolidifierRecipe(final ItemStack[] itemInputs, final FluidStack[] fluidInputs,
final ItemStack[] itemOutputs, final FluidStack[] fluidOutputs, final int EUPerTick,
final int aDurationInTicks) {
- GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes
+ RecipeMaps.fluidSolidifierRecipes
.addRecipe(true, itemInputs, itemOutputs, null, fluidInputs, fluidOutputs, aDurationInTicks, EUPerTick, 0);
return true;
}
@@ -1917,7 +1961,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("fluidsolidifier", aOutput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes.addRecipe(
+ RecipeMaps.fluidSolidifierRecipes.addRecipe(
true,
new ItemStack[] { aMold },
new ItemStack[] { aOutput },
@@ -1953,7 +1997,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("fluidsmelter", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.fluidExtractionRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aRemains },
@@ -1986,7 +2030,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("fluidextractor", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(
+ RecipeMaps.fluidExtractionRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aRemains },
@@ -2015,7 +2059,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("fluidcanner", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(
+ RecipeMaps.fluidCannerRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput },
@@ -2041,7 +2085,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("fluidcanner", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(
+ RecipeMaps.fluidCannerRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput },
@@ -2064,7 +2108,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("chemicalbath", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes.addRecipe(
+ RecipeMaps.chemicalBathRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -2088,7 +2132,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("chemicalbath", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes.addRecipe(
+ RecipeMaps.chemicalBathRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -2112,7 +2156,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("electromagneticseparator", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sElectroMagneticSeparatorRecipes.addRecipe(
+ RecipeMaps.electroMagneticSeparatorRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput1, aOutput2, aOutput3 },
@@ -2135,7 +2179,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("extractor", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sExtractorRecipes.addRecipe(
+ RecipeMaps.extractorRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput },
@@ -2158,7 +2202,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("printer", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPrinterRecipes.addRecipe(
+ RecipeMaps.printerRecipes.addRecipe(
true,
new ItemStack[] { aInput },
new ItemStack[] { aOutput },
@@ -2212,7 +2256,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes.addRecipe(
+ RecipeMaps.autoclaveRecipes.addRecipe(
true,
new ItemStack[] { aInput, aCircuit },
new ItemStack[] { aOutput },
@@ -2246,7 +2290,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes.addRecipe(
+ RecipeMaps.autoclaveRecipes.addRecipe(
true,
new ItemStack[] { aInput, aCircuit },
new ItemStack[] { aOutput },
@@ -2273,7 +2317,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sAutoclaveRecipes.addRecipe(
+ RecipeMaps.autoclaveRecipes.addRecipe(
true,
new ItemStack[] { aInput, aCircuit },
aOutputs,
@@ -2348,7 +2392,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sMixerRecipes.addRecipe(
+ RecipeMaps.mixerRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, aInput3, aInput4, aInput5, aInput6, aInput7, aInput8, aInput9 },
new ItemStack[] { aOutput },
@@ -2387,7 +2431,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
oNumber++;
}
- GT_Recipe.GT_Recipe_Map.sMultiblockMixerRecipes
+ RecipeMaps.mixerNonCellRecipes
.addRecipe(false, itemInputs, itemOutputs, null, null, fluidInputs, fluidOutputs, aDuration, aEUt, 0);
return true;
}
@@ -2396,7 +2440,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
@Override
public boolean addMixerRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] ItemOutputArray,
FluidStack[] FluidOutputArray, int aDuration, int aEUt) {
- GT_Recipe.GT_Recipe_Map.sMixerRecipes.addRecipe(
+ RecipeMaps.mixerRecipes.addRecipe(
false,
ItemInputArray,
ItemOutputArray,
@@ -2462,7 +2506,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
FluidStack[] tFluidOutputArray = new FluidStack[tFluidOutputList.size()];
for (int i = 0; i < tFluidOutputArray.length; i++) tFluidOutputArray[i] = tFluidOutputList.get(i);
- GT_Recipe.GT_Recipe_Map.sMultiblockMixerRecipes.addRecipe(
+ RecipeMaps.mixerNonCellRecipes.addRecipe(
false,
tItemInputArray,
tItemOutputArray,
@@ -2495,7 +2539,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sMixerRecipes.addRecipe(
+ RecipeMaps.mixerRecipes.addRecipe(
true,
new ItemStack[] { aInput1, aInput2, aInput3, aInput4, aInput5, aInput6, aInput7, aInput8, aInput9 },
new ItemStack[] { aOutput1, aOutput2, aOutput3, aOutput4 },
@@ -2534,7 +2578,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
oNumber++;
}
- GT_Recipe.GT_Recipe_Map.sMultiblockMixerRecipes
+ RecipeMaps.mixerNonCellRecipes
.addRecipe(false, itemInputs, itemOutputs, null, null, fluidInputs, fluidOutputs, aDuration, aEUt, 0);
return true;
}
@@ -2559,7 +2603,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes.addRecipe(
+ RecipeMaps.laserEngraverRecipes.addRecipe(
true,
new ItemStack[] { aItemToEngrave, aLens },
new ItemStack[] { aEngravedItem },
@@ -2576,7 +2620,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
@Override
public boolean addLaserEngraverRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray,
ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt, boolean aCleanroom) {
- GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes.addRecipe(
+ RecipeMaps.laserEngraverRecipes.addRecipe(
false,
ItemInputArray,
OutputItemArray,
@@ -2600,7 +2644,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("press", aImprintedItem, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPressRecipes.addRecipe(
+ RecipeMaps.formingPressRecipes.addRecipe(
true,
new ItemStack[] { aItemToImprint, aForm },
new ItemStack[] { aImprintedItem },
@@ -2620,7 +2664,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((ItemInputArray == null) || (OutputItemArray == null)) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPressRecipes
+ RecipeMaps.formingPressRecipes
.addRecipe(true, ItemInputArray, OutputItemArray, null, null, null, aDuration, aEUt, 0);
return true;
}
@@ -2638,7 +2682,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes.addRecipe(
+ RecipeMaps.fluidHeaterRecipes.addRecipe(
true,
new ItemStack[] { aItem },
null,
@@ -2665,7 +2709,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes.addRecipe(
+ RecipeMaps.fluidHeaterRecipes.addRecipe(
true,
new ItemStack[] { aCircuit },
null,
@@ -2690,7 +2734,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("sifter", aItemToSift, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe(
+ RecipeMaps.sifterRecipes.addRecipe(
true,
new ItemStack[] { aItemToSift },
aSiftedItems,
@@ -2712,7 +2756,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
public boolean addSifterRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray,
ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int[] aChances, int aDuration, int aEUt,
boolean aCleanroom) {
- GT_Recipe.GT_Recipe_Map.sSifterRecipes.addRecipe(
+ RecipeMaps.sifterRecipes.addRecipe(
false,
ItemInputArray,
OutputItemArray,
@@ -2745,7 +2789,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe sRecipe = GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes.addRecipe(
+ GT_Recipe sRecipe = RecipeMaps.arcFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput },
aOutputs,
@@ -2762,7 +2806,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
for (Materials tMaterial : new Materials[] { Materials.Argon, Materials.Nitrogen }) {
if (tMaterial.mPlasma != null) {
int tPlasmaAmount = (int) Math.max(1L, aDuration / (tMaterial.getMass() * 16L));
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.plasmaArcFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput },
aOutputs,
@@ -2796,7 +2840,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sArcFurnaceRecipes.addRecipe(
+ RecipeMaps.arcFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput },
aOutputs,
@@ -2825,7 +2869,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes.addRecipe(
+ RecipeMaps.plasmaArcFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput },
aOutputs,
@@ -2854,7 +2898,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("arcfurnace", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPlasmaArcFurnaceRecipes.addRecipe(
+ RecipeMaps.plasmaArcFurnaceRecipes.addRecipe(
true,
new ItemStack[] { aInput },
aOutputs,
@@ -2890,7 +2934,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("pulveriser", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.addRecipe(
+ GT_Recipe tRecipe = RecipeMaps.maceratorRecipes.addRecipe(
true,
new ItemStack[] { aInput },
aOutputs,
@@ -2920,7 +2964,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("pyrolyse", aInput, aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sPyrolyseRecipes.addRecipe(
+ RecipeMaps.pyrolyseRecipes.addRecipe(
false,
new ItemStack[] { aInput, ItemList.Circuit_Integrated.getWithDamage(0L, intCircuit) },
new ItemStack[] { aOutput },
@@ -2950,7 +2994,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if ((aDuration = GregTech_API.sRecipeFile.get("cracking", aInput.getUnlocalizedName(), aDuration)) <= 0) {
return false;
}
- GT_Recipe.GT_Recipe_Map.sCrackingRecipes.addRecipe(
+ RecipeMaps.crackingRecipes.addRecipe(
false,
new ItemStack[] { GT_Utility.getIntegratedCircuit(circuitConfig) },
null,
@@ -2987,7 +3031,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
+ " there is some null item in that recipe");
}
}
- GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(
+ RecipeMaps.scannerFakeRecipes.addFakeRecipe(
false,
new ItemStack[] { aResearchItem },
new ItemStack[] { aOutput },
@@ -2997,7 +3041,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aResearchTime,
30,
-201);
- GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.addFakeRecipe(
+ RecipeMaps.assemblylineVisualRecipes.addFakeRecipe(
false,
aInputs,
new ItemStack[] { aOutput },
@@ -3098,7 +3142,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
tPersistentHash = tPersistentHash * 31 + aResearchTime;
tPersistentHash = tPersistentHash * 31 + aDuration;
tPersistentHash = tPersistentHash * 31 + aEUt;
- GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(
+ RecipeMaps.scannerFakeRecipes.addFakeRecipe(
false,
new ItemStack[] { aResearchItem },
new ItemStack[] { aOutput },
@@ -3108,7 +3152,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
aResearchTime,
30,
-201);
- GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.addFakeRecipe(
+ RecipeMaps.assemblylineVisualRecipes.addFakeRecipe(
false,
tInputs,
new ItemStack[] { aOutput },
@@ -3171,7 +3215,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
}
}
- GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.addRecipe(
+ RecipeMaps.circuitAssemblerRecipes.addRecipe(
true,
aInputs,
new ItemStack[] { aOutput },
@@ -3196,7 +3240,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
if (!GT_Mod.gregtechproxy.mEnableCleanroom) {
aCleanroom = false;
}
- GT_Recipe.GT_Recipe_Map.sCircuitAssemblerRecipes.addRecipe(
+ RecipeMaps.circuitAssemblerRecipes.addRecipe(
true,
aInputs,
new ItemStack[] { aOutput },
@@ -3216,7 +3260,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
FluidStack[] aFluidOutputs, int[] aChances, int aDuration, int aEUt, int aSpecialValue) {
if (aInputs == null || aOutputs == null || aSpecialValue == 0) return false;
- GT_Recipe.GT_Recipe_Map.sNanoForge.addRecipe(
+ RecipeMaps.nanoForgeRecipes.addRecipe(
new GT_Recipe(
false,
aInputs,
@@ -3232,34 +3276,22 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
}
@Override
- @Deprecated
- public boolean addPCBFactoryRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, ItemStack[] aOutputs,
- int aDuration, int aEUt, int aSpecialValue) {
-
- if (aInputs == null || aFluidInputs == null || aOutputs == null) {
- return false;
- }
-
- if (aSpecialValue <= 0 || aEUt < 0 || aDuration < 0) {
- return false;
- }
-
- GT_Recipe.GT_Recipe_Map.sPCBFactory.addRecipe(
- new GT_Recipe(false, aInputs, aOutputs, null, null, aFluidInputs, null, aDuration, aEUt, aSpecialValue));
-
- return true;
- }
-
- @Override
public GT_Recipe addIC2ReactorBreederCell(ItemStack input, ItemStack output, boolean reflector, int heatStep,
int heatMultiplier, int requiredPulses) {
- return GT_Recipe.GT_Recipe_Map.sIC2NuclearFakeRecipe.addFakeRecipe(
- input,
- output,
- reflector ? "Neutron reflecting Breeder" : "Heat neutral Breeder",
- String.format("Every %d reactor hull heat", heatStep),
- String.format("increase speed by %d00%%", heatMultiplier),
- String.format("Required pulses: %d", requiredPulses));
+ return GT_Values.RA.stdBuilder()
+ .itemInputs(input)
+ .itemOutputs(output)
+ .setNEIDesc(
+ reflector ? "Neutron reflecting Breeder" : "Heat neutral Breeder",
+ String.format("Every %d reactor hull heat", heatStep),
+ String.format("increase speed by %d00%%", heatMultiplier),
+ String.format("Required pulses: %d", requiredPulses))
+ .duration(0)
+ .eut(0)
+ .addTo(RecipeMaps.ic2NuclearFakeRecipes)
+ .stream()
+ .findFirst()
+ .orElse(null);
}
@Override
@@ -3270,17 +3302,24 @@ public class GT_RecipeAdder implements IGT_RecipeAdder {
// don't ask, just accept
int pulses = aCells / 2 + 1;
float nukePowerMult = 5.0f * ConfigUtil.getFloat(MainConfig.get(), "balance/energy/generator/nuclear");
- return GT_Recipe.GT_Recipe_Map.sIC2NuclearFakeRecipe.addFakeRecipe(
- input,
- output,
- aMox ? "MOX Model" : "Uranium Model",
- "Neutron Pulse: " + aCells,
- aCells == 1 ? String.format("Heat: %.1f * n1 * (n1 + 1)", aHeat / 2f)
- : String.format("Heat: %.1f * (%d + n1) * (%d + n1)", aHeat * aCells / 2f, aCells, aCells + 1),
- String.format(
- "Energy: %.1f + n2 * %.1f EU/t",
- aEnergy * aCells * pulses * nukePowerMult,
- aEnergy * nukePowerMult));
+ return GT_Values.RA.stdBuilder()
+ .itemInputs(input)
+ .itemOutputs(output)
+ .setNEIDesc(
+ aMox ? "MOX Model" : "Uranium Model",
+ "Neutron Pulse: " + aCells,
+ aCells == 1 ? String.format("Heat: %.1f * n1 * (n1 + 1)", aHeat / 2f)
+ : String.format("Heat: %.1f * (%d + n1) * (%d + n1)", aHeat * aCells / 2f, aCells, aCells + 1),
+ String.format(
+ "Energy: %.1f + n2 * %.1f EU/t",
+ aEnergy * aCells * pulses * nukePowerMult,
+ aEnergy * nukePowerMult))
+ .duration(0)
+ .eut(0)
+ .addTo(RecipeMaps.ic2NuclearFakeRecipes)
+ .stream()
+ .findFirst()
+ .orElse(null);
}
private boolean areItemsAndFluidsBothNull(ItemStack[] items, FluidStack[] fluids) {
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Stones_Abstract.java b/src/main/java/gregtech/common/blocks/GT_Block_Stones_Abstract.java
index 335a03d0e3..4a5bb9456e 100644
--- a/src/main/java/gregtech/common/blocks/GT_Block_Stones_Abstract.java
+++ b/src/main/java/gregtech/common/blocks/GT_Block_Stones_Abstract.java
@@ -1,8 +1,8 @@
package gregtech.common.blocks;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes;
+import static gregtech.api.recipe.RecipeMaps.assemblerRecipes;
+import static gregtech.api.recipe.RecipeMaps.hammerRecipes;
+import static gregtech.api.recipe.RecipeMaps.laserEngraverRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
@@ -74,13 +74,13 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe
.itemOutputs(new ItemStack(this, 1, 3))
.duration(2 * SECONDS + 10 * TICKS)
.eut(4)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(this, 1, 8), GT_Utility.getIntegratedCircuit(4))
.itemOutputs(new ItemStack(this, 1, 11))
.duration(2 * SECONDS + 10 * TICKS)
.eut(4)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
}
private void registerCraftingRecipes() {
@@ -132,28 +132,28 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe
.itemOutputs(new ItemStack(this, 1, 4))
.duration(16 * TICKS)
.eut(10)
- .addTo(sHammerRecipes);
+ .addTo(hammerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(this, 1, 11))
.itemOutputs(new ItemStack(this, 1, 12))
.duration(16 * TICKS)
.eut(10)
- .addTo(sHammerRecipes);
+ .addTo(hammerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(this, 1, 0))
.itemOutputs(new ItemStack(this, 1, 1))
.duration(16 * TICKS)
.eut(10)
- .addTo(sHammerRecipes);
+ .addTo(hammerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(this, 1, 8))
.itemOutputs(new ItemStack(this, 1, 9))
.duration(16 * TICKS)
.eut(10)
- .addTo(sHammerRecipes);
+ .addTo(hammerRecipes);
}
@Override
@@ -166,14 +166,14 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe
.itemOutputs(new ItemStack(this, 1, 6))
.duration(2 * SECONDS + 10 * TICKS)
.eut(16)
- .addTo(sLaserEngraverRecipes);
+ .addTo(laserEngraverRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(this, 1, 15), GT_Utility.copyAmount(0, aStack))
.itemOutputs(new ItemStack(this, 1, 14))
.duration(2 * SECONDS + 10 * TICKS)
.eut(16)
- .addTo(sLaserEngraverRecipes);
+ .addTo(laserEngraverRecipes);
}
}
diff --git a/src/main/java/gregtech/common/fluid/GT_Fluid.java b/src/main/java/gregtech/common/fluid/GT_Fluid.java
index 3625acb1e8..6ba8d7d23a 100644
--- a/src/main/java/gregtech/common/fluid/GT_Fluid.java
+++ b/src/main/java/gregtech/common/fluid/GT_Fluid.java
@@ -1,6 +1,6 @@
package gregtech.common.fluid;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes;
+import static gregtech.api.recipe.RecipeMaps.fluidCannerRecipes;
import javax.annotation.Nonnull;
@@ -129,7 +129,7 @@ public class GT_Fluid extends Fluid implements IGT_Fluid, IGT_RegisteredFluid, R
.fluidOutputs(fluidStack)
.duration(fluidStack.amount / 62)
.eut(1)
- .addTo(sFluidCannerRecipes);
+ .addTo(fluidCannerRecipes);
}
}
return this;
@@ -201,4 +201,9 @@ public class GT_Fluid extends Fluid implements IGT_Fluid, IGT_RegisteredFluid, R
}
}
}
+
+ @Override
+ public String toString() {
+ return "GT_Fluid{" + "fluidName='" + fluidName + '\'' + '}';
+ }
}
diff --git a/src/main/java/gregtech/common/gui/modularui/UIHelper.java b/src/main/java/gregtech/common/gui/modularui/UIHelper.java
index 0893310342..dffeeff48f 100644
--- a/src/main/java/gregtech/common/gui/modularui/UIHelper.java
+++ b/src/main/java/gregtech/common/gui/modularui/UIHelper.java
@@ -6,74 +6,75 @@ import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Nullable;
+import javax.annotation.ParametersAreNonnullByDefault;
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
import com.gtnewhorizons.modularui.api.math.Pos2d;
import gregtech.api.enums.SteamVariant;
import gregtech.api.gui.modularui.SteamTexture;
-import gregtech.api.util.GT_Recipe;
+import gregtech.api.recipe.BasicUIProperties;
+import gregtech.api.util.MethodsReturnNonnullByDefault;
+@ParametersAreNonnullByDefault
+@MethodsReturnNonnullByDefault
public class UIHelper {
/**
* Iterates over candidates for slot placement.
*/
+ @SuppressWarnings("SimplifyStreamApiCallChains")
public static void forEachSlots(ForEachSlot forEachItemInputSlot, ForEachSlot forEachItemOutputSlot,
ForEachSlot forEachSpecialSlot, ForEachSlot forEachFluidInputSlot, ForEachSlot forEachFluidOutputSlot,
- IDrawable itemSlotBackground, IDrawable fluidSlotBackground, @Nullable GT_Recipe.GT_Recipe_Map recipeMap,
- int itemInputCount, int itemOutputCount, int fluidInputCount, int fluidOutputCount, SteamVariant steamVariant,
- Pos2d offset) {
- List<Pos2d> itemInputPositions = recipeMap != null ? recipeMap.getItemInputPositions(itemInputCount)
- : UIHelper.getItemInputPositions(itemInputCount);
- itemInputPositions = itemInputPositions.stream()
+ IDrawable itemSlotBackground, IDrawable fluidSlotBackground, BasicUIProperties uiProperties, int itemInputCount,
+ int itemOutputCount, int fluidInputCount, int fluidOutputCount, SteamVariant steamVariant, Pos2d offset) {
+ List<Pos2d> itemInputPositions = uiProperties.itemInputPositionsGetter.apply(itemInputCount)
+ .stream()
.map(p -> p.add(offset))
.collect(Collectors.toList());
for (int i = 0; i < itemInputPositions.size(); i++) {
forEachItemInputSlot.accept(
i,
- getBackgroundsForSlot(itemSlotBackground, recipeMap, false, false, i, false, steamVariant),
+ getBackgroundsForSlot(itemSlotBackground, uiProperties, false, false, i, false, steamVariant),
itemInputPositions.get(i));
}
- List<Pos2d> itemOutputPositions = recipeMap != null ? recipeMap.getItemOutputPositions(itemOutputCount)
- : UIHelper.getItemOutputPositions(itemOutputCount);
- itemOutputPositions = itemOutputPositions.stream()
+ List<Pos2d> itemOutputPositions = uiProperties.itemOutputPositionsGetter.apply(itemOutputCount)
+ .stream()
.map(p -> p.add(offset))
.collect(Collectors.toList());
for (int i = 0; i < itemOutputPositions.size(); i++) {
forEachItemOutputSlot.accept(
i,
- getBackgroundsForSlot(itemSlotBackground, recipeMap, false, true, i, false, steamVariant),
+ getBackgroundsForSlot(itemSlotBackground, uiProperties, false, true, i, false, steamVariant),
itemOutputPositions.get(i));
}
forEachSpecialSlot.accept(
0,
- getBackgroundsForSlot(itemSlotBackground, recipeMap, false, false, 0, true, steamVariant),
- (recipeMap != null ? recipeMap.getSpecialItemPosition() : UIHelper.getSpecialItemPosition()).add(offset));
+ getBackgroundsForSlot(itemSlotBackground, uiProperties, false, false, 0, true, steamVariant),
+ uiProperties.specialItemPositionGetter.get()
+ .add(offset));
- List<Pos2d> fluidInputPositions = recipeMap != null ? recipeMap.getFluidInputPositions(fluidInputCount)
- : UIHelper.getFluidInputPositions(fluidInputCount);
- fluidInputPositions = fluidInputPositions.stream()
+ List<Pos2d> fluidInputPositions = uiProperties.fluidInputPositionsGetter.apply(fluidInputCount)
+ .stream()
.map(p -> p.add(offset))
.collect(Collectors.toList());
for (int i = 0; i < fluidInputPositions.size(); i++) {
forEachFluidInputSlot.accept(
i,
- getBackgroundsForSlot(fluidSlotBackground, recipeMap, true, false, i, false, steamVariant),
+ getBackgroundsForSlot(fluidSlotBackground, uiProperties, true, false, i, false, steamVariant),
fluidInputPositions.get(i));
}
- List<Pos2d> fluidOutputPositions = recipeMap != null ? recipeMap.getFluidOutputPositions(fluidOutputCount)
- : UIHelper.getFluidOutputPositions(fluidOutputCount);
- fluidOutputPositions = fluidOutputPositions.stream()
+ List<Pos2d> fluidOutputPositions = uiProperties.fluidOutputPositionsGetter.apply(fluidOutputCount)
+ .stream()
.map(p -> p.add(offset))
.collect(Collectors.toList());
for (int i = 0; i < fluidOutputPositions.size(); i++) {
forEachFluidOutputSlot.accept(
i,
- getBackgroundsForSlot(fluidSlotBackground, recipeMap, true, true, i, false, steamVariant),
+ getBackgroundsForSlot(fluidSlotBackground, uiProperties, true, true, i, false, steamVariant),
fluidOutputPositions.get(i));
}
}
@@ -172,25 +173,32 @@ public class UIHelper {
return getGridPositions(itemCount, xOrigin, yOrigin, xDirMaxCount, yDirMaxCount);
}
- private static IDrawable[] getBackgroundsForSlot(IDrawable base, GT_Recipe.GT_Recipe_Map recipeMap, boolean isFluid,
+ private static IDrawable[] getBackgroundsForSlot(IDrawable base, BasicUIProperties uiProperties, boolean isFluid,
boolean isOutput, int index, boolean isSpecial, SteamVariant steamVariant) {
- if (recipeMap != null) {
- IDrawable overlay;
- if (steamVariant != SteamVariant.NONE) {
- SteamTexture steamTexture = recipeMap.getOverlayForSlotSteam(isFluid, isOutput, index, isSpecial);
- if (steamTexture != null) {
- overlay = steamTexture.get(steamVariant);
- } else {
- overlay = null;
- }
+ IDrawable overlay = getOverlay(uiProperties, isFluid, isOutput, index, isSpecial, steamVariant);
+ if (overlay != null) {
+ return new IDrawable[] { base, overlay };
+ } else {
+ return new IDrawable[] { base };
+ }
+ }
+
+ @Nullable
+ private static IDrawable getOverlay(BasicUIProperties uiProperties, boolean isFluid, boolean isOutput, int index,
+ boolean isSpecial, SteamVariant steamVariant) {
+ if (isSpecial && !uiProperties.useSpecialSlot) {
+ return null;
+ }
+ if (steamVariant != SteamVariant.NONE) {
+ SteamTexture steamTexture = uiProperties.getOverlayForSlotSteam(index, isFluid, isOutput, isSpecial);
+ if (steamTexture != null) {
+ return steamTexture.get(steamVariant);
} else {
- overlay = recipeMap.getOverlayForSlot(isFluid, isOutput, index, isSpecial);
- }
- if (overlay != null) {
- return new IDrawable[] { base, overlay };
+ return null;
}
+ } else {
+ return uiProperties.getOverlayForSlot(index, isFluid, isOutput, isSpecial);
}
- return new IDrawable[] { base };
}
@FunctionalInterface
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java
index e1163f84eb..653461f164 100644
--- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java
+++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java
@@ -32,10 +32,10 @@ import static gregtech.api.enums.Textures.BlockIcons.SOLARPANEL_LuV;
import static gregtech.api.enums.Textures.BlockIcons.SOLARPANEL_MV;
import static gregtech.api.enums.Textures.BlockIcons.SOLARPANEL_UV;
import static gregtech.api.enums.Textures.BlockIcons.SOLARPANEL_ZPM;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCannerRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
+import static gregtech.api.recipe.RecipeMaps.assemblerRecipes;
+import static gregtech.api.recipe.RecipeMaps.cannerRecipes;
+import static gregtech.api.recipe.RecipeMaps.compressorRecipes;
+import static gregtech.api.recipe.RecipeMaps.packagerRecipes;
import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
@@ -87,6 +87,7 @@ import gregtech.api.items.GT_MetaBase_Item;
import gregtech.api.items.GT_MetaGenerated_Item_X32;
import gregtech.api.objects.ItemData;
import gregtech.api.objects.MaterialStack;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_FoodStat;
import gregtech.api.util.GT_LanguageManager;
@@ -199,7 +200,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(new ItemStack(this, 1, 17000 + Materials.Wood.mMetaItemSubID))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
}
GregTech_API.registerCover(
@@ -922,7 +923,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Spray_Empty.get(1L))
.duration(40 * SECONDS)
.eut(1)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Crate_Empty.set(
addItem(
@@ -964,7 +965,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.ThermosCan_Empty.get(1L))
.duration(40 * SECONDS)
.eut(1)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Steel.set(
addItem(
@@ -987,7 +988,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Steel.get(1L))
.duration(10 * SECONDS)
.eut(TierEU.RECIPE_LV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_TungstenSteel.set(
addItem(
@@ -1010,7 +1011,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_TungstenSteel.get(1L))
.duration(10 * SECONDS)
.eut(TierEU.RECIPE_HV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Aluminium.set(
addItem(
@@ -1033,7 +1034,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Aluminium.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_StainlessSteel.set(
addItem(
@@ -1056,7 +1057,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_StainlessSteel.get(1L))
.duration(10 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Titanium.set(
addItem(
@@ -1079,7 +1080,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Titanium.get(1L))
.duration(10 * SECONDS)
.eut(256)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Chrome.set(
addItem(
@@ -1102,7 +1103,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Chrome.get(1L))
.duration(10 * SECONDS)
.eut(1024)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Iridium.set(
addItem(
@@ -1125,7 +1126,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Iridium.get(1L))
.duration(10 * SECONDS)
.eut(TierEU.RECIPE_EV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Osmium.set(
addItem(
@@ -1148,7 +1149,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Osmium.get(1L))
.duration(10 * SECONDS)
.eut(4096)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Large_Fluid_Cell_Neutronium.set(
addItem(
@@ -1171,7 +1172,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Large_Fluid_Cell_Neutronium.get(1L))
.duration(10 * SECONDS)
.eut(TierEU.RECIPE_IV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
for (byte i = 0; i < 16; i = (byte) (i + 1)) {
ItemList.SPRAY_CAN_DYES[i].set(
addItem(
@@ -1240,7 +1241,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Spray_Color_Remover_Empty.get(1L))
.duration(40 * SECONDS)
.eut(1)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Tool_Matches.set(
addItem(
@@ -1283,7 +1284,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_Matches.get(1L))
.duration(16 * TICKS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Wood, 1L),
@@ -1292,7 +1293,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_Matches.get(1L))
.duration(16 * TICKS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Wood, 4L),
@@ -1301,7 +1302,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_Matches.get(4L))
.duration(3 * SECONDS + 4 * TICKS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Wood, 4L),
@@ -1310,7 +1311,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_Matches.get(4L))
.duration(3 * SECONDS + 4 * TICKS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Tool_Matches.get(16L),
@@ -1318,13 +1319,13 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_MatchBox_Full.get(1L))
.duration(3 * SECONDS + 4 * TICKS)
.eut(16)
- .addTo(sBoxinatorRecipes);
+ .addTo(packagerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Tool_MatchBox_Full.get(1L))
.itemOutputs(ItemList.Tool_Matches.get(16L))
.duration(1 * SECONDS + 12 * TICKS)
.eut(16)
- .addTo(sBoxinatorRecipes);
+ .addTo(packagerRecipes);
ItemList.Tool_Lighter_Invar_Empty.set(
addItem(
@@ -1368,7 +1369,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_Lighter_Invar_Empty.get(1L))
.duration(12 * SECONDS + 16 * TICKS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Tool_Lighter_Platinum_Empty.set(
addItem(
@@ -1415,7 +1416,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Tool_Lighter_Platinum_Empty.get(1L))
.duration(12 * SECONDS + 16 * TICKS)
.eut(256)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
if (GalacticraftMars.isModLoaded()) {
ItemList.Ingot_Heavy1
@@ -1866,7 +1867,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_LV_Cadmium.get(1L))
.duration(5 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 2L),
@@ -1874,7 +1875,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_LV_Lithium.get(1L))
.duration(5 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 2L),
@@ -1882,7 +1883,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_LV_Sodium.get(1L))
.duration(5 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cadmium, 8L),
@@ -1890,7 +1891,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_MV_Cadmium.get(1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 8L),
@@ -1898,7 +1899,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_MV_Lithium.get(1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 8L),
@@ -1906,7 +1907,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_MV_Sodium.get(1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cadmium, 32L),
@@ -1914,7 +1915,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_HV_Cadmium.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 32L),
@@ -1922,7 +1923,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_HV_Lithium.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 32L),
@@ -1930,7 +1931,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Battery_RE_HV_Sodium.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sCannerRecipes);
+ .addTo(cannerRecipes);
// IV Battery
ItemList.Energy_LapotronicOrb.set(
@@ -3765,7 +3766,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Muffler.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L),
@@ -3774,7 +3775,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Muffler.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L),
@@ -3783,7 +3784,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Muffler.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L),
@@ -3792,7 +3793,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Muffler.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L),
@@ -3801,7 +3802,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Muffler.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L),
@@ -3810,7 +3811,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Muffler.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L),
@@ -3819,7 +3820,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Lock.get(1L))
.duration(5 * MINUTES + 20 * SECONDS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L),
@@ -3828,7 +3829,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Lock.get(1L))
.duration(5 * MINUTES + 20 * SECONDS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L),
@@ -3837,7 +3838,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Upgrade_Lock.get(1L))
.duration(5 * MINUTES + 20 * SECONDS)
.eut(16)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Component_Filter.set(
addItem(
@@ -3907,7 +3908,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_PlayerDetector.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GregTech_API.registerCover(
ItemList.Cover_Controller.get(1L),
@@ -3998,7 +3999,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Shutter.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L),
@@ -4007,7 +4008,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Shutter.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L),
@@ -4016,7 +4017,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Shutter.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 2L),
@@ -4025,7 +4026,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Drain.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 2L),
@@ -4034,7 +4035,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Drain.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 2L),
@@ -4043,7 +4044,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Drain.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L),
@@ -4052,7 +4053,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Crafting.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 1L),
@@ -4061,7 +4062,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Crafting.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 1L),
@@ -4070,7 +4071,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_Crafting.get(1L))
.duration(10 * SECONDS)
.eut(64)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Cover_Shutter.get(1L),
@@ -4079,7 +4080,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.FluidFilter.get(1L))
.duration(40 * SECONDS)
.eut(4)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Cover_Screen.get(1L),
@@ -4088,7 +4089,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_FluidStorageMonitor.get(1L))
.duration(40 * SECONDS)
.eut(4)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
final ITexture screenCoverTexture = TextureFactory.of(
TextureFactory.of(OVERLAY_SCREEN),
@@ -4296,7 +4297,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.NC_SensorKit.get(1L))
.duration(1 * MINUTES + 20 * SECONDS)
.eut(2)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
ItemList.Cover_RedstoneTransmitterExternal.set(
addItem(
@@ -4352,7 +4353,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_RedstoneTransmitterExternal.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Sensor_EV.get(1L),
@@ -4361,7 +4362,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_RedstoneReceiverExternal.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_ModHandler.addShapelessCraftingRecipe(
ItemList.Cover_RedstoneTransmitterInternal.get(1L),
@@ -4396,7 +4397,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_NeedsMaintainance.get(1L))
.duration(30 * SECONDS)
.eut(TierEU.RECIPE_LV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_ModHandler.addCraftingRecipe(
ItemList.ItemFilter_Export.get(1L),
@@ -4424,7 +4425,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.ItemFilter_Export.get(1L))
.duration(5 * SECONDS)
.eut(TierEU.RECIPE_LV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Tin, 2L),
@@ -4434,7 +4435,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.ItemFilter_Import.get(1L))
.duration(5 * SECONDS)
.eut(TierEU.RECIPE_LV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_ModHandler.addCraftingRecipe(
ItemList.Tool_Cover_Copy_Paste.get(1L),
@@ -4582,7 +4583,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
}
public boolean isPlasmaCellUsed(OrePrefixes aPrefix, Materials aMaterial) {
- Collection<GT_Recipe> fusionRecipes = GT_Recipe.GT_Recipe_Map.sFusionRecipes.mRecipeList;
+ Collection<GT_Recipe> fusionRecipes = RecipeMaps.fusionRecipes.getAllRecipes();
if (aPrefix == OrePrefixes.cellPlasma && aMaterial.getPlasma(1L) != null) { // Materials has a plasma fluid
for (GT_Recipe recipe : fusionRecipes) { // Loop through fusion recipes
if (recipe.getFluidOutput(0) != null) { // Make sure fluid output can't be null (not sure if possible)
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java
index 3ef70ae40e..1c4556b5a3 100644
--- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java
+++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java
@@ -7,9 +7,9 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_ADVANCED_REDSTONE_T
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_WIRELESS_FLUID_DETECTOR;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_WIRELESS_ITEM_DETECTOR;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_WIRELESS_MAINTENANCE_DETECTOR;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
+import static gregtech.api.recipe.RecipeMaps.assemblerRecipes;
+import static gregtech.api.recipe.RecipeMaps.compressorRecipes;
+import static gregtech.api.recipe.RecipeMaps.maceratorRecipes;
import static gregtech.api.util.GT_RecipeBuilder.MINUTES;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.WILDCARD;
@@ -2467,7 +2467,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_AdvancedRedstoneTransmitterExternal.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Cover_RedstoneReceiverExternal.get(1L),
@@ -2476,7 +2476,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_AdvancedRedstoneReceiverExternal.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Cover_FluidDetector.get(1L),
@@ -2485,7 +2485,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_WirelessFluidDetector.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Cover_ItemDetector.get(1L),
@@ -2494,7 +2494,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_WirelessItemDetector.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(
ItemList.Cover_NeedsMaintainance.get(1L),
@@ -2503,7 +2503,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(ItemList.Cover_WirelessNeedsMaintainance.get(1L))
.duration(2 * MINUTES + 40 * SECONDS)
.eut(TierEU.RECIPE_MV)
- .addTo(sAssemblerRecipes);
+ .addTo(assemblerRecipes);
GT_ModHandler.addShapelessCraftingRecipe(
ItemList.Cover_AdvancedRedstoneReceiverExternal.get(1L),
@@ -2556,84 +2556,84 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(new ItemStack(Blocks.wool, 1, 1))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Plumbilia.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Argentia.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Indigo.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Ferru.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Aurelia.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_OilBerry.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_BobsYerUncleRanks.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Tine.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Rape.get(4L))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Blocks.red_flower, 8, 32767))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Blocks.yellow_flower, 8, 32767))
.itemOutputs(ItemList.IC2_PlantballCompressed.get(1L))
.duration(15 * SECONDS)
.eut(2)
- .addTo(sCompressorRecipes);
+ .addTo(compressorRecipes);
}
GT_Values.RA.stdBuilder()
@@ -2641,21 +2641,21 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Cheese, 1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Dye_Cocoa.get(1L))
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cocoa, 1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Crop_Drop_Tine.get(1L))
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 2L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Blocks.melon_block, 1, 0))
@@ -2663,42 +2663,42 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.outputChances(10000, 8000)
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Blocks.pumpkin, 1, 0))
.itemOutputs(new ItemStack(Items.pumpkin_seeds, 4, 0))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Items.melon, 1, 0))
.itemOutputs(new ItemStack(Items.melon_seeds, 1, 0))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Items.wheat, 1, 0))
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(GT_ModHandler.getIC2Item("crop", 1L))
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Items.stick, 1))
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Wood, 2L))
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(new ItemStack(Blocks.wool, 1, WILDCARD))
@@ -2706,14 +2706,14 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 {
.outputChances(10000, 5000)
.duration(20 * SECONDS)
.eut(2)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
GT_Values.RA.stdBuilder()
.itemInputs(ItemList.Tesseract.get(1))
.itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, MaterialsUEVplus.TranscendentMetal, 8L))
.duration(5 * SECONDS)
.eut(32_000_000)
- .addTo(sMaceratorRecipes);
+ .addTo(maceratorRecipes);
try {
CropCard tCrop;
GT_Utility.getField(tCrop = Crops.instance.getCropList()[13], "mDrop")
diff --git a/src/main/java/gregtech/common/items/ItemComb.java b/src/main/java/gregtech/common/items/ItemComb.java
index 18e163592a..8fd37fd0d9 100644
--- a/src/main/java/gregtech/common/items/ItemComb.java
+++ b/src/main/java/gregtech/common/items/ItemComb.java
@@ -12,9 +12,9 @@ import static gregtech.api.enums.Mods.MagicBees;
import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
import static gregtech.api.enums.Mods.Thaumcraft;
import static gregtech.api.enums.Mods.ThaumicBases;
-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.sFluidExtractionRecipes;
+import static gregtech.api.recipe.RecipeMaps.autoclaveRecipes;
+import static gregtech.api.recipe.RecipeMaps.centrifugeRecipes;
+import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
import static gregtech.api.util.GT_RecipeConstants.CLEANROOM;
import static gregtech.api.util.GT_RecipeConstants.UniversalChemical;
@@ -1599,7 +1599,7 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer {
if (volt.compareTo(Voltage.HV) > 0) {
recipeBuilder.requiresCleanRoom();
}
- recipeBuilder.addTo(sAutoclaveRecipes);
+ recipeBuilder.addTo(autoclaveRecipes);
}
public void addFluidExtractorProcess(CombType comb, FluidStack fluid, Voltage volt) {
@@ -1619,7 +1619,7 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer {
.fluidOutputs(fluid)
.duration(duration)
.eut(eut)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
/**
@@ -1782,7 +1782,7 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer {
.outputChances(chance)
.duration(duration)
.eut(volt.getSimpleEnergy())
- .addTo(sCentrifugeRecipes);
+ .addTo(centrifugeRecipes);
}
public void registerOreDict() {
diff --git a/src/main/java/gregtech/common/items/ItemDrop.java b/src/main/java/gregtech/common/items/ItemDrop.java
index a3d786714a..5aab9dff48 100644
--- a/src/main/java/gregtech/common/items/ItemDrop.java
+++ b/src/main/java/gregtech/common/items/ItemDrop.java
@@ -6,7 +6,7 @@ import static gregtech.api.enums.Mods.GregTech;
import static gregtech.api.enums.Mods.HardcoreEnderExpansion;
import static gregtech.api.enums.Mods.MagicBees;
import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes;
+import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
@@ -200,7 +200,7 @@ public class ItemDrop extends Item {
.fluidOutputs(aOutput)
.duration(1 * SECONDS + 12 * TICKS)
.eut(aEUt)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
public void addProcessLV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance, int aDuration,
@@ -212,7 +212,7 @@ public class ItemDrop extends Item {
.fluidOutputs(aOutput)
.duration(aDuration)
.eut(aEUt)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
public void addProcessMV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance, int aEUt) {
@@ -223,7 +223,7 @@ public class ItemDrop extends Item {
.fluidOutputs(aOutput)
.duration(6 * SECONDS + 8 * TICKS)
.eut(aEUt)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
public void addProcessHV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance) {
@@ -236,6 +236,6 @@ public class ItemDrop extends Item {
recipeBuilder.fluidOutputs(aOutput)
.duration(24 * SECONDS)
.eut(TierEU.RECIPE_HV)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
}
diff --git a/src/main/java/gregtech/common/items/ItemPropolis.java b/src/main/java/gregtech/common/items/ItemPropolis.java
index 222635845a..1c0d727bda 100644
--- a/src/main/java/gregtech/common/items/ItemPropolis.java
+++ b/src/main/java/gregtech/common/items/ItemPropolis.java
@@ -3,7 +3,7 @@ package gregtech.common.items;
import static gregtech.api.enums.Mods.GregTech;
import static gregtech.api.enums.Mods.HardcoreEnderExpansion;
import static gregtech.api.enums.Mods.NewHorizonsCoreMod;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes;
+import static gregtech.api.recipe.RecipeMaps.fluidExtractionRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
@@ -114,7 +114,7 @@ public class ItemPropolis extends Item {
.fluidOutputs(FluidRegistry.getFluidStack("endergoo", 100))
.duration(2 * SECONDS + 10 * TICKS)
.eut(TierEU.RECIPE_HV)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
public void addProcessEV(ItemStack tPropolis, ItemStack aOutput2) {
@@ -125,7 +125,7 @@ public class ItemPropolis extends Item {
.fluidOutputs(FluidRegistry.getFluidStack("endergoo", 200))
.duration(5 * SECONDS)
.eut(TierEU.RECIPE_EV)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
public void addProcessIV(ItemStack tPropolis, ItemStack aOutput2) {
@@ -136,6 +136,6 @@ public class ItemPropolis extends Item {
.fluidOutputs(FluidRegistry.getFluidStack("endergoo", 300))
.duration(7 * SECONDS + 10 * TICKS)
.eut(TierEU.RECIPE_IV)
- .addTo(sFluidExtractionRecipes);
+ .addTo(fluidExtractionRecipes);
}
}
diff --git a/src/main/java/gregtech/common/misc/spaceprojects/SpaceProjectManager.java b/src/main/java/gregtech/common/misc/spaceprojects/SpaceProjectManager.java
index c34c486223..1859249ccd 100644
--- a/src/main/java/gregtech/common/misc/spaceprojects/SpaceProjectManager.java
+++ b/src/main/java/gregtech/common/misc/spaceprojects/SpaceProjectManager.java
@@ -5,10 +5,13 @@ import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
+import net.minecraft.item.ItemStack;
import net.minecraft.server.MinecraftServer;
+import net.minecraftforge.fluids.FluidStack;
import org.apache.commons.lang3.tuple.Pair;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_Recipe;
import gregtech.common.misc.spaceprojects.interfaces.ISpaceBody;
import gregtech.common.misc.spaceprojects.interfaces.ISpaceProject;
@@ -174,6 +177,17 @@ public class SpaceProjectManager {
// #region Project Helper methods
+ public static class FakeSpaceProjectRecipe extends GT_Recipe {
+
+ public final String projectName;
+
+ public FakeSpaceProjectRecipe(boolean aOptimize, ItemStack[] aInputs, FluidStack[] aFluidInputs, int aDuration,
+ int aEUt, int aSpecialValue, String projectName) {
+ super(aOptimize, aInputs, null, null, null, aFluidInputs, null, aDuration, aEUt, aSpecialValue);
+ this.projectName = projectName;
+ }
+ }
+
/**
* Used to add projects to the internal map.
*
@@ -181,8 +195,8 @@ public class SpaceProjectManager {
*/
public static void addProject(ISpaceProject project) {
spaceProjects.put(project.getProjectName(), project);
- GT_Recipe.GT_Recipe_Map.sFakeSpaceProjectRecipes.add(
- new GT_Recipe.GT_Recipe_Map.GT_FakeSpaceProjectRecipe(
+ RecipeMaps.spaceProjectFakeRecipes.add(
+ new FakeSpaceProjectRecipe(
false,
project.getTotalItemsCost(),
project.getTotalFluidsCost(),
diff --git a/src/main/java/gregtech/common/power/BasicMachineEUPower.java b/src/main/java/gregtech/common/power/BasicMachineEUPower.java
deleted file mode 100644
index 6fec7e7954..0000000000
--- a/src/main/java/gregtech/common/power/BasicMachineEUPower.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package gregtech.common.power;
-
-import static gregtech.api.enums.GT_Values.V;
-
-public class BasicMachineEUPower extends EUPower {
-
- protected static final String OC = " (OC)";
- protected boolean wasOverclocked;
-
- public BasicMachineEUPower(byte tier, int amperage) {
- super(tier, amperage);
- }
-
- public BasicMachineEUPower(byte tier, int amperage, int specialValue) {
- super(tier, amperage, specialValue);
- }
-
- @Override
- public void computePowerUsageAndDuration(int euPerTick, int duration) {
- super.computePowerUsageAndDuration(euPerTick, duration);
- if (tier == 0) {
- // Long time calculation
- long xMaxProgresstime = ((long) duration) << 1;
- if (xMaxProgresstime > Integer.MAX_VALUE - 1) {
- // make impossible if too long
- recipeEuPerTick = Integer.MAX_VALUE - 1;
- recipeDuration = Integer.MAX_VALUE - 1;
- } else {
- recipeEuPerTick = euPerTick >> 2;
- recipeDuration = (int) xMaxProgresstime;
- }
- } else {
- // Long EUt calculation
- long xEUt = euPerTick;
- // Isnt too low EUt check?
- long tempEUt = Math.max(xEUt, V[1]);
-
- recipeDuration = duration;
-
- while (tempEUt <= V[tier - 1] * (long) amperage) {
- tempEUt <<= 2; // this actually controls overclocking
- // xEUt *= 4;//this is effect of everclocking
- recipeDuration >>= 1; // this is effect of overclocking
- xEUt = recipeDuration == 0 ? xEUt >> 1 : xEUt << 2; // U know, if the time is less than 1 tick make the
- // machine use 2x less power
- }
- if (xEUt > Integer.MAX_VALUE - 1) {
- recipeEuPerTick = Integer.MAX_VALUE - 1;
- recipeDuration = Integer.MAX_VALUE - 1;
- } else {
- recipeEuPerTick = (int) xEUt;
- if (recipeEuPerTick == 0) recipeEuPerTick = 1;
- if (recipeDuration == 0) recipeDuration = 1; // set time to 1 tick
- }
- }
- wasOverclocked = checkIfOverclocked();
- }
-
- @Override
- public String getPowerUsageString() {
- return decorateWithOverclockLabel(super.getPowerUsageString());
- }
-
- protected String decorateWithOverclockLabel(String s) {
- if (wasOverclocked) {
- s += OC;
- }
- return s;
- }
-
- protected boolean checkIfOverclocked() {
- return originalVoltage != computeVoltageForEuRate(recipeEuPerTick);
- }
-}
diff --git a/src/main/java/gregtech/common/power/EUPower.java b/src/main/java/gregtech/common/power/EUPower.java
deleted file mode 100644
index a01e827f38..0000000000
--- a/src/main/java/gregtech/common/power/EUPower.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package gregtech.common.power;
-
-import gregtech.api.util.GT_Utility;
-
-public class EUPower extends Power {
-
- protected final int amperage;
- protected int originalVoltage;
-
- public EUPower(byte tier, int amperage) {
- super(tier);
- this.amperage = amperage;
- }
-
- public EUPower(byte tier, int amperage, int specialValue) {
- super(tier, specialValue);
- this.amperage = amperage;
- }
-
- @Override
- // This generic EU Power class has no overclock defined and does no special calculations.
- public void computePowerUsageAndDuration(int euPerTick, int duration) {
- originalVoltage = computeVoltageForEuRate(euPerTick);
- recipeEuPerTick = euPerTick;
- recipeDuration = duration;
- }
-
- @Override
- public String getTierString() {
- return GT_Utility.getColoredTierNameFromTier(tier);
- }
-
- @Override
- public String getTotalPowerString() {
- return GT_Utility.formatNumbers((long) recipeDuration * recipeEuPerTick) + " EU";
- }
-
- @Override
- public String getPowerUsageString() {
- return GT_Utility.formatNumbers(recipeEuPerTick) + " EU/t";
- }
-
- @Override
- public String getVoltageString() {
- String voltageDescription = GT_Utility.formatNumbers(originalVoltage) + " EU/t";
- voltageDescription += GT_Utility.getTierNameWithParentheses(originalVoltage);
- return voltageDescription;
- }
-
- @Override
- public String getAmperageString() {
- return GT_Utility.formatNumbers(amperage);
- }
-
- protected int computeVoltageForEuRate(int euPerTick) {
- return amperage != 0 ? euPerTick / amperage : euPerTick;
- }
-}
diff --git a/src/main/java/gregtech/common/power/FusionPower.java b/src/main/java/gregtech/common/power/FusionPower.java
deleted file mode 100644
index d3bcdd41b4..0000000000
--- a/src/main/java/gregtech/common/power/FusionPower.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package gregtech.common.power;
-
-import static gregtech.api.enums.GT_Values.V;
-
-import net.minecraft.util.EnumChatFormatting;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.nei.FusionSpecialValueFormatter;
-
-public class FusionPower extends BasicMachineEUPower {
-
- public FusionPower(byte tier, int startupPower) {
- super(tier, 1, startupPower);
- }
-
- @Override
- public void computePowerUsageAndDuration(int euPerTick, int duration, int specialValue) {
- originalVoltage = computeVoltageForEuRate(euPerTick);
- recipeEuPerTick = euPerTick;
- recipeDuration = duration;
- // It's safe to assume fusion is above ULV. We put this as safety check here anyway
- if (tier > 0) {
- int maxPossibleOverclocks = FusionSpecialValueFormatter.getFusionTier(this.specialValue, V[tier - 1])
- - FusionSpecialValueFormatter.getFusionTier(specialValue, euPerTick);
- // Isn't too low EUt check?
- long tempEUt = Math.max(euPerTick, V[1]);
-
- recipeDuration = duration;
-
- while (tempEUt <= V[tier - 1] * (long) amperage && maxPossibleOverclocks-- > 0) {
- tempEUt <<= 1; // this actually controls overclocking
- recipeDuration >>= 1; // this is effect of overclocking
- }
- if (tempEUt > Integer.MAX_VALUE - 1) {
- recipeEuPerTick = Integer.MAX_VALUE - 1;
- recipeDuration = Integer.MAX_VALUE - 1;
- } else {
- recipeEuPerTick = (int) tempEUt;
- if (recipeEuPerTick == 0) recipeEuPerTick = 1;
- if (recipeDuration == 0) recipeDuration = 1; // set time to 1 tick
- }
- }
- wasOverclocked = checkIfOverclocked();
- }
-
- @Override
- public String getTierString() {
- return GT_Values.TIER_COLORS[tier] + "MK "
- + (tier - 5) // Mk1 <-> LuV
- + EnumChatFormatting.RESET;
- }
-}
diff --git a/src/main/java/gregtech/common/power/Power.java b/src/main/java/gregtech/common/power/Power.java
deleted file mode 100644
index 28cdfa3559..0000000000
--- a/src/main/java/gregtech/common/power/Power.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package gregtech.common.power;
-
-import gregtech.api.util.GT_Utility;
-
-public abstract class Power {
-
- protected final byte tier;
- protected int recipeEuPerTick;
- protected int recipeDuration;
- protected final int specialValue;
-
- public Power(byte tier) {
- this(tier, 0);
- }
-
- public Power(byte tier, int specialValue) {
- this.tier = tier;
- this.specialValue = specialValue;
- }
-
- public byte getTier() {
- return tier;
- }
-
- public abstract String getTierString();
-
- /**
- * This method should be called prior to usage of any value except the power tier.
- */
- public abstract void computePowerUsageAndDuration(int euPerTick, int duration);
-
- public void computePowerUsageAndDuration(int euPerTick, int duration, int specialValue) {
- computePowerUsageAndDuration(euPerTick, duration);
- }
-
- public int getEuPerTick() {
- return recipeEuPerTick;
- }
-
- public int getDurationTicks() {
- return recipeDuration;
- }
-
- public double getDurationSeconds() {
- return 0.05d * getDurationTicks();
- }
-
- public String getDurationStringSeconds() {
- return GT_Utility.formatNumbers(getDurationSeconds()) + GT_Utility.trans("161", " secs");
- }
-
- public String getDurationStringTicks() {
- if (getDurationTicks() == 1) {
- return GT_Utility.formatNumbers(getDurationTicks()) + GT_Utility.trans("209.1", " tick");
- }
- return GT_Utility.formatNumbers(getDurationTicks()) + GT_Utility.trans("209", " ticks");
- }
-
- public abstract String getTotalPowerString();
-
- public abstract String getPowerUsageString();
-
- public abstract String getVoltageString();
-
- public abstract String getAmperageString();
-
- public int compareTo(byte tier, int specialValue) {
- if (this.tier < tier) {
- return this.tier - tier;
- }
- return this.specialValue - specialValue;
- }
-}
diff --git a/src/main/java/gregtech/common/power/SteamPower.java b/src/main/java/gregtech/common/power/SteamPower.java
deleted file mode 100644
index 6394b6a5ef..0000000000
--- a/src/main/java/gregtech/common/power/SteamPower.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package gregtech.common.power;
-
-import gregtech.api.util.GT_Utility;
-
-public class SteamPower extends Power {
-
- private final double euPerTickOverride;
- private final double durationOverride;
- private final String[] STEAM_TIER_NAMES = { "Bronze", "Steel" };
-
- public SteamPower(byte tier, double euPerTickMultiplier, double durationMultiplier) {
- super(tier);
- this.euPerTickOverride = euPerTickMultiplier;
- this.durationOverride = durationMultiplier;
- }
-
- @Override
- public byte getTier() {
- return 1;
- }
-
- @Override
- public String getTierString() {
- return STEAM_TIER_NAMES[tier - 1];
- }
-
- @Override
- public void computePowerUsageAndDuration(int euPerTick, int duration) {
- recipeEuPerTick = (int) (euPerTick * euPerTickOverride);
- recipeDuration = (int) (duration * durationOverride);
- }
-
- @Override
- public String getTotalPowerString() {
- // 2L normal steam == 1EU
- return GT_Utility.formatNumbers(2L * recipeDuration * recipeEuPerTick) + " Steam";
- }
-
- @Override
- public String getPowerUsageString() {
- // 2L normal steam == 1EU
- return GT_Utility.formatNumbers(20L * 2L * recipeEuPerTick) + " L/s Steam";
- }
-
- @Override
- public String getVoltageString() {
- return null;
- }
-
- @Override
- public String getAmperageString() {
- return null;
- }
-}
diff --git a/src/main/java/gregtech/common/power/UnspecifiedEUPower.java b/src/main/java/gregtech/common/power/UnspecifiedEUPower.java
deleted file mode 100644
index e411f03613..0000000000
--- a/src/main/java/gregtech/common/power/UnspecifiedEUPower.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package gregtech.common.power;
-
-import gregtech.api.util.GT_Utility;
-
-public class UnspecifiedEUPower extends EUPower {
-
- private final String VOLTAGE = GT_Utility.trans("271", "unspecified");
- private final String AMPERAGE = GT_Utility.trans("271", "unspecified");
-
- public UnspecifiedEUPower(byte tier, int amperage) {
- super(tier, amperage);
- }
-
- @Override
- public String getPowerUsageString() {
- return super.getVoltageString();
- }
-
- @Override
- public String getVoltageString() {
- return VOLTAGE;
- }
-
- @Override
- public String getAmperageString() {
- return AMPERAGE;
- }
-}
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_RecipeFilter.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_RecipeFilter.java
index 6f023e025b..05128ee255 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_RecipeFilter.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_RecipeFilter.java
@@ -32,14 +32,12 @@ import codechicken.nei.recipe.RecipeCatalysts;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.interfaces.tileentity.IRecipeLockable;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.interfaces.tileentity.RecipeMapWorkable;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_SpecialFilter;
import gregtech.api.multitileentity.MultiTileEntityContainer;
import gregtech.api.multitileentity.MultiTileEntityItemInternal;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.common.blocks.GT_Item_Machines;
import gregtech.loaders.preload.GT_Loader_MultiTileEntities;
@@ -49,7 +47,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
private static final String TT_machineType = "GT5U.MBTT.MachineType";
private static final String REPRESENTATION_SLOT_TOOLTIP = "GT5U.recipe_filter.representation_slot.tooltip";
private static final String EMPTY_REPRESENTATION_SLOT_TOOLTIP = "GT5U.recipe_filter.empty_representation_slot.tooltip";
- public GT_Recipe.GT_Recipe_Map mRecipeMap;
+ public RecipeMap<?> mRecipeMap;
private List<ItemStack> filteredMachines = new ArrayList<>();
public int mRotationIndex = 0;
@@ -72,7 +70,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
}
- private static GT_Recipe.GT_Recipe_Map getItemStackMachineRecipeMap(ItemStack stack) {
+ private static RecipeMap<?> getItemStackMachineRecipeMap(ItemStack stack) {
if (stack != null) {
IMetaTileEntity metaTileEntity = GT_Item_Machines.getMetaTileEntity(stack);
if (metaTileEntity != null) {
@@ -84,28 +82,27 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
return null;
}
- private static GT_Recipe.GT_Recipe_Map getMetaTileEntityRecipeMap(IMetaTileEntity metaTileEntity) {
- if (metaTileEntity instanceof GT_MetaTileEntity_BasicMachine machine) {
- return machine.getRecipeList();
- } else if (metaTileEntity instanceof IRecipeLockable recipeLockable) {
- return recipeLockable.getRecipeMap();
- } else if (metaTileEntity instanceof GT_MetaTileEntity_BasicGenerator generator) {
- return generator.getRecipes();
+ private static RecipeMap<?> getMetaTileEntityRecipeMap(IMetaTileEntity metaTileEntity) {
+ if (metaTileEntity instanceof RecipeMapWorkable recipeMapWorkable) {
+ return recipeMapWorkable.getRecipeMap();
}
return null;
}
- private static GT_Recipe.GT_Recipe_Map getMuTeRecipeMap(@NotNull ItemStack stack) {
+ private static RecipeMap<?> getMuTeRecipeMap(@NotNull ItemStack stack) {
MultiTileEntityContainer muTeEntityContainer = GT_Loader_MultiTileEntities.MACHINE_REGISTRY
.getNewTileEntityContainer(stack);
- if (muTeEntityContainer != null && muTeEntityContainer.mTileEntity instanceof IRecipeLockable recipeLockable) {
- return recipeLockable.getRecipeMap();
+ if (muTeEntityContainer != null
+ && muTeEntityContainer.mTileEntity instanceof RecipeMapWorkable recipeMapWorkable) {
+ return recipeMapWorkable.getRecipeMap();
}
return null;
}
- private static List<ItemStack> getFilteredMachines(GT_Recipe.GT_Recipe_Map recipeMap) {
- return RecipeCatalysts.getRecipeCatalysts(recipeMap.mNEIName)
+ private static List<ItemStack> getFilteredMachines(RecipeMap<?> recipeMap) {
+ return RecipeCatalysts.getRecipeCatalysts(
+ recipeMap.getFrontend()
+ .getUIProperties().neiTransferRectId)
.stream()
.map(positionedStack -> positionedStack.item)
.collect(Collectors.toList());
@@ -147,7 +144,9 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
@Override
public void saveNBTData(NBTTagCompound aNBT) {
super.saveNBTData(aNBT);
- if (mRecipeMap != null) aNBT.setString("mRecipeMap", this.mRecipeMap.mUniqueIdentifier);
+ if (mRecipeMap != null) {
+ aNBT.setString("mRecipeMap", this.mRecipeMap.unlocalizedName);
+ }
NBTTagList tagList = new NBTTagList();
for (ItemStack filteredMachine : filteredMachines) {
tagList.appendTag(filteredMachine.writeToNBT(new NBTTagCompound()));
@@ -158,7 +157,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
@Override
public void loadNBTData(NBTTagCompound aNBT) {
super.loadNBTData(aNBT);
- this.mRecipeMap = GT_Recipe.GT_Recipe_Map.sIndexedMappings.getOrDefault(aNBT.getString("mRecipeMap"), null);
+ this.mRecipeMap = RecipeMap.getFromOldIdentifier(aNBT.getString("mRecipeMap"));
filteredMachines.clear();
NBTTagList tagList = aNBT.getTagList("filteredMachines", Constants.NBT.TAG_COMPOUND);
for (int i = 0; i < tagList.tagCount(); i++) {
@@ -179,8 +178,8 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
super.addUIWidgets(builder, buildContext);
builder.widget(
new FakeSyncWidget.StringSyncer(
- () -> this.mRecipeMap == null ? "" : this.mRecipeMap.mUniqueIdentifier,
- (id) -> this.mRecipeMap = GT_Recipe.GT_Recipe_Map.sIndexedMappings.getOrDefault(id, null)));
+ () -> this.mRecipeMap == null ? "" : this.mRecipeMap.unlocalizedName,
+ id -> this.mRecipeMap = RecipeMap.ALL_RECIPE_MAPS.get(id)));
}
@Override
@@ -198,15 +197,17 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
}
@NotNull
- private List<String> assembleItemStackReplacementTooltip(GT_Recipe.GT_Recipe_Map recipeMap) {
+ private List<String> assembleItemStackReplacementTooltip(RecipeMap<?> recipeMap) {
List<String> tooltip = new ArrayList<>();
tooltip.add(
StatCollector.translateToLocal(TT_machineType) + ": "
+ EnumChatFormatting.YELLOW
- + StatCollector.translateToLocal(recipeMap.mUnlocalizedName)
+ + StatCollector.translateToLocal(recipeMap.unlocalizedName)
+ EnumChatFormatting.RESET);
- if (recipeMap.mRecipeItemMap.size() > 0) {
- tooltip.add("Filter size: §e" + recipeMap.mRecipeItemMap.size() + "§r");
+ int recipeSize = recipeMap.getAllRecipes()
+ .size();
+ if (recipeSize > 0) {
+ tooltip.add("Filter size: §e" + recipeSize + "§r");
}
tooltip.addAll(mTooltipCache.getData(REPRESENTATION_SLOT_TOOLTIP).text);
return tooltip;
@@ -251,7 +252,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
updateAndSendRecipeMapToServer(mRecipeMap);
}
- private void updateAndSendRecipeMapToServer(GT_Recipe.GT_Recipe_Map recipeMap) {
+ private void updateAndSendRecipeMapToServer(RecipeMap<?> recipeMap) {
if (recipeMap != null) {
filteredMachines = getFilteredMachines(recipeMap);
} else {
@@ -260,7 +261,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
}
mRotationIndex = -1;
syncToServer(SYNC_RECIPEMAP_C2S, buffer -> {
- NetworkUtils.writeStringSafe(buffer, recipeMap != null ? recipeMap.mUniqueIdentifier : null);
+ NetworkUtils.writeStringSafe(buffer, recipeMap != null ? recipeMap.unlocalizedName : null);
buffer.writeVarIntToBuffer(filteredMachines.size());
for (ItemStack filteredMachine : filteredMachines) {
NetworkUtils.writeItemStack(buffer, filteredMachine);
@@ -276,9 +277,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
}
String recipeMapName = NetworkUtils.readStringSafe(buf);
- mRecipeMap = recipeMapName != null
- ? GT_Recipe.GT_Recipe_Map.sIndexedMappings.getOrDefault(recipeMapName, null)
- : null;
+ mRecipeMap = recipeMapName != null ? RecipeMap.ALL_RECIPE_MAPS.get(recipeMapName) : null;
if (mRecipeMap != null) {
updateAndSendRecipeMapToServer(mRecipeMap);
}
@@ -296,9 +295,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
}
String recipeMapName = NetworkUtils.readStringSafe(buf);
- mRecipeMap = recipeMapName != null
- ? GT_Recipe.GT_Recipe_Map.sIndexedMappings.getOrDefault(recipeMapName, null)
- : null;
+ mRecipeMap = recipeMapName != null ? RecipeMap.getFromOldIdentifier(recipeMapName) : null;
mRotationIndex = -1;
mInventory[FILTER_SLOT_INDEX] = null;
filteredMachines.clear();
@@ -322,7 +319,7 @@ public class GT_MetaTileEntity_RecipeFilter extends GT_MetaTileEntity_SpecialFil
// backward compatibility: This machine used to store only mRecipeMap, not filteredMachines
syncToClient(
REQUEST_FILTERED_MACHINES_S2C,
- buffer -> NetworkUtils.writeStringSafe(buffer, mRecipeMap.mUniqueIdentifier));
+ buffer -> NetworkUtils.writeStringSafe(buffer, mRecipeMap.unlocalizedName));
}
}
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java
index 1132a0d53e..5047cb7624 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_DieselGenerator.java
@@ -39,9 +39,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder.ParticleEventBuilder;
@@ -84,8 +85,8 @@ public class GT_MetaTileEntity_DieselGenerator extends GT_MetaTileEntity_BasicGe
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sDieselFuels;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.dieselFuels;
}
@Override
@@ -107,7 +108,7 @@ public class GT_MetaTileEntity_DieselGenerator extends GT_MetaTileEntity_BasicGe
@Override
public int getFuelValue(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return 0;
+ if (GT_Utility.isStackInvalid(aStack) || getRecipeMap() == null) return 0;
long rValue = super.getFuelValue(aStack);
if (ItemList.Fuel_Can_Plastic_Filled.isStackEqual(aStack, false, true)) {
rValue = Math.max(rValue, GameRegistry.getFuelValue(aStack) * 3L);
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java
index 771dc36788..163f9fa319 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_GasTurbine.java
@@ -31,8 +31,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
public class GT_MetaTileEntity_GasTurbine extends GT_MetaTileEntity_BasicGenerator {
@@ -106,8 +107,8 @@ public class GT_MetaTileEntity_GasTurbine extends GT_MetaTileEntity_BasicGenerat
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sTurbineFuels;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.gasTurbineFuels;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java
index 07990213be..7317180b5d 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicEnergyConverter.java
@@ -18,8 +18,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
public class GT_MetaTileEntity_MagicEnergyConverter extends GT_MetaTileEntity_BasicGenerator {
@@ -57,8 +58,8 @@ public class GT_MetaTileEntity_MagicEnergyConverter extends GT_MetaTileEntity_Ba
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sMagicFuels;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.magicFuels;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java
index 1be4d521a1..8dc3417a84 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_MagicalEnergyAbsorber.java
@@ -59,11 +59,12 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Config;
import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder.ParticleEventBuilder;
import thaumcraft.api.aspects.Aspect;
@@ -440,8 +441,8 @@ public class GT_MetaTileEntity_MagicalEnergyAbsorber extends GT_MetaTileEntity_B
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sMagicFuels;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.magicFuels;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_NaquadahReactor.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_NaquadahReactor.java
index babb4925bb..ba5aaf4c64 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_NaquadahReactor.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_NaquadahReactor.java
@@ -29,8 +29,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
public class GT_MetaTileEntity_NaquadahReactor extends GT_MetaTileEntity_BasicGenerator {
@@ -67,14 +68,14 @@ public class GT_MetaTileEntity_NaquadahReactor extends GT_MetaTileEntity_BasicGe
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- GT_Recipe.GT_Recipe_Map ret;
+ public RecipeMap<?> getRecipeMap() {
+ RecipeMap<?> ret;
switch (mTier) {
- case 4 -> ret = GT_Recipe.GT_Recipe_Map.sSmallNaquadahReactorFuels;
- case 5 -> ret = GT_Recipe.GT_Recipe_Map.sLargeNaquadahReactorFuels;
- case 6 -> ret = GT_Recipe.GT_Recipe_Map.sHugeNaquadahReactorFuels;
- case 7 -> ret = GT_Recipe.GT_Recipe_Map.sExtremeNaquadahReactorFuels;
- case 8 -> ret = GT_Recipe.GT_Recipe_Map.sUltraHugeNaquadahReactorFuels;
+ case 4 -> ret = RecipeMaps.smallNaquadahReactorFuels;
+ case 5 -> ret = RecipeMaps.largeNaquadahReactorFuels;
+ case 6 -> ret = RecipeMaps.hugeNaquadahReactorFuels;
+ case 7 -> ret = RecipeMaps.extremeNaquadahReactorFuels;
+ case 8 -> ret = RecipeMaps.ultraHugeNaquadahReactorFuels;
default -> ret = null;
}
return ret;
@@ -82,7 +83,8 @@ public class GT_MetaTileEntity_NaquadahReactor extends GT_MetaTileEntity_BasicGe
@Override
public int getCapacity() {
- return getRecipes() != null ? getRecipes().mMinimalInputFluids > 0 ? 8000 * (mTier + 1) : 0 : 0;
+ return getRecipeMap() != null ? getRecipeMap().getBackend()
+ .getProperties().minFluidInputs > 0 ? 8000 * (mTier + 1) : 0 : 0;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java
index 00c7f93128..603c1439ba 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_PlasmaGenerator.java
@@ -13,8 +13,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
public class GT_MetaTileEntity_PlasmaGenerator extends GT_MetaTileEntity_BasicGenerator {
@@ -113,8 +114,8 @@ public class GT_MetaTileEntity_PlasmaGenerator extends GT_MetaTileEntity_BasicGe
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sPlasmaFuels;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.plasmaFuels;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java
index bfc4529ffe..7a3d50f213 100644
--- a/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java
+++ b/src/main/java/gregtech/common/tileentities/generators/GT_MetaTileEntity_SteamTurbine.java
@@ -31,9 +31,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicGenerator;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Recipe;
public class GT_MetaTileEntity_SteamTurbine extends GT_MetaTileEntity_BasicGenerator {
@@ -70,7 +70,7 @@ public class GT_MetaTileEntity_SteamTurbine extends GT_MetaTileEntity_BasicGener
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
+ public RecipeMap<?> getRecipeMap() {
return null;
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_InputBus_ME.java b/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_InputBus_ME.java
index 2449719079..59746800b1 100644
--- a/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_InputBus_ME.java
+++ b/src/main/java/gregtech/common/tileentities/machines/GT_MetaTileEntity_Hatch_InputBus_ME.java
@@ -74,8 +74,8 @@ import gregtech.common.gui.modularui.widget.AESlotWidget;
import mcp.mobius.waila.api.IWailaConfigHandler;
import mcp.mobius.waila.api.IWailaDataAccessor;
-public class GT_MetaTileEntity_Hatch_InputBus_ME extends GT_MetaTileEntity_Hatch_InputBus
- implements IConfigurationCircuitSupport, IAddGregtechLogo, IAddUIWidgets, IPowerChannelState {
+public class GT_MetaTileEntity_Hatch_InputBus_ME extends GT_MetaTileEntity_Hatch_InputBus implements
+ IConfigurationCircuitSupport, IRecipeProcessingAwareHatch, IAddGregtechLogo, IAddUIWidgets, IPowerChannelState {
private static final int SLOT_COUNT = 16;
private BaseActionSource requestSource = null;
diff --git a/src/main/java/gregtech/common/tileentities/machines/IRecipeProcessingAwareHatch.java b/src/main/java/gregtech/common/tileentities/machines/IRecipeProcessingAwareHatch.java
index d78400b30e..c7a97ce969 100644
--- a/src/main/java/gregtech/common/tileentities/machines/IRecipeProcessingAwareHatch.java
+++ b/src/main/java/gregtech/common/tileentities/machines/IRecipeProcessingAwareHatch.java
@@ -2,30 +2,25 @@ package gregtech.common.tileentities.machines;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
import gregtech.api.recipe.check.CheckRecipeResult;
-import gregtech.api.recipe.check.CheckRecipeResultRegistry;
+/**
+ * Implement this interface for {@link gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch}
+ * if it does special stuff while multiblock controller is processing recipe.
+ */
public interface IRecipeProcessingAwareHatch {
/**
* Called when multiblock controller starts processing.
- * {@link #endRecipeProcessing(GT_MetaTileEntity_MultiBlockBase)} is called on the same tick.
+ * {@link #endRecipeProcessing} is called on the same tick.
*/
- default void startRecipeProcessing() {}
+ void startRecipeProcessing();
/**
- * Called when multiblock controller ends processing. {@link #startRecipeProcessing()} is called on the same tick.
+ * Called when multiblock controller ends processing. {@link #startRecipeProcessing} is called on the same tick.
*
* @param controller Caller of this method.
* @return Result of the process of this method. {@code !wasSuccessful()} means the returned result should
* overwrite the result calculated on multiblock whatever the reason is.
*/
- default CheckRecipeResult endRecipeProcessing(GT_MetaTileEntity_MultiBlockBase controller) {
- endRecipeProcessing();
- return CheckRecipeResultRegistry.SUCCESSFUL;
- }
-
- /**
- * Simple version of {@link #endRecipeProcessing(GT_MetaTileEntity_MultiBlockBase)}. Maybe use it instead.
- */
- default void endRecipeProcessing() {}
+ CheckRecipeResult endRecipeProcessing(GT_MetaTileEntity_MultiBlockBase controller);
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java
index 34bb0b782c..6c908aadac 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Boxinator.java
@@ -26,9 +26,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Boxinator extends GT_MetaTileEntity_BasicMachine {
@@ -107,8 +108,8 @@ public class GT_MetaTileEntity_Boxinator extends GT_MetaTileEntity_BasicMachine
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.packagerRecipes;
}
private boolean hasValidCache(ItemStack mItem, int mType, boolean mClearOnFailure) {
@@ -206,7 +207,7 @@ public class GT_MetaTileEntity_Boxinator extends GT_MetaTileEntity_BasicMachine
if ((ItemList.Schematic_1by1.isStackEqual(tInput1)) || (ItemList.Schematic_2by2.isStackEqual(tInput1))
|| (ItemList.Schematic_3by3.isStackEqual(tInput1))) {
if (hasValidCache(aStack, aTypeCache, false)) return true;
- if (GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.findRecipe(
+ if (RecipeMaps.packagerRecipes.findRecipe(
getBaseMetaTileEntity(),
true,
gregtech.api.enums.GT_Values.V[mTier],
@@ -224,7 +225,7 @@ public class GT_MetaTileEntity_Boxinator extends GT_MetaTileEntity_BasicMachine
return ItemList.Schematic_3by3.isStackEqual(getInputAt(1)) && (GT_ModHandler
.getRecipeOutput(aStack, aStack, aStack, aStack, aStack, aStack, aStack, aStack, aStack) != null);
} else {
- return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.containsInput(aStack);
+ return RecipeMaps.packagerRecipes.containsInput(aStack);
}
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_IndustrialApiary.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_IndustrialApiary.java
index ad7b15ed60..3753fb8cd8 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_IndustrialApiary.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_IndustrialApiary.java
@@ -50,6 +50,7 @@ import net.minecraft.world.biome.BiomeGenBase;
import net.minecraftforge.common.util.ForgeDirection;
import com.google.common.collect.ImmutableSet;
+import com.gtnewhorizons.modularui.api.drawable.FallbackableUITexture;
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
import com.gtnewhorizons.modularui.api.forge.IItemHandlerModifiable;
import com.gtnewhorizons.modularui.api.math.Pos2d;
@@ -63,7 +64,6 @@ import com.gtnewhorizons.modularui.common.widget.ButtonWidget;
import com.gtnewhorizons.modularui.common.widget.CycleButtonWidget;
import com.gtnewhorizons.modularui.common.widget.DrawableWidget;
import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget;
-import com.gtnewhorizons.modularui.common.widget.ProgressBar;
import com.gtnewhorizons.modularui.common.widget.SlotGroup;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
import com.gtnewhorizons.modularui.common.widget.TextWidget;
@@ -110,6 +110,7 @@ import gregtech.api.interfaces.modularui.IAddUIWidgets;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.recipe.BasicUIProperties;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ApiaryModifier;
import gregtech.api.util.GT_ApiaryUpgrade;
@@ -1178,17 +1179,12 @@ public class GT_MetaTileEntity_IndustrialApiary extends GT_MetaTileEntity_BasicM
super.addUIWidgets(builder, buildContext);
builder.widget(
- new ProgressBar().setProgress(() -> (float) getProgresstime() / Math.max(maxProgresstime(), 1))
- .setTexture(GT_UITextures.PROGRESSBAR_ARROW, 20)
- .setPos(70, 3)
- .setSize(20, 18))
- .widget(
- new ButtonWidget().setOnClick((clickData, widget) -> cancelProcess())
- .setBackground(GT_UITextures.BUTTON_STANDARD, GT_UITextures.OVERLAY_BUTTON_CROSS)
- .setGTTooltip(() -> mTooltipCache.getData(CANCEL_PROCESS_TOOLTIP))
- .setTooltipShowUpDelay(TOOLTIP_DELAY)
- .setPos(7, 26)
- .setSize(18, 18))
+ new ButtonWidget().setOnClick((clickData, widget) -> cancelProcess())
+ .setBackground(GT_UITextures.BUTTON_STANDARD, GT_UITextures.OVERLAY_BUTTON_CROSS)
+ .setGTTooltip(() -> mTooltipCache.getData(CANCEL_PROCESS_TOOLTIP))
+ .setTooltipShowUpDelay(TOOLTIP_DELAY)
+ .setPos(7, 26)
+ .setSize(18, 18))
.widget(
new CycleButtonWidget().setToggle(() -> mAutoQueen, x -> mAutoQueen = x)
.setTextureGetter(
@@ -1286,6 +1282,17 @@ public class GT_MetaTileEntity_IndustrialApiary extends GT_MetaTileEntity_BasicM
.setPos(26, 72));
}
+ private static final FallbackableUITexture progressBarTexture = GT_UITextures
+ .fallbackableProgressbar("iapiary", GT_UITextures.PROGRESSBAR_ARROW);
+
+ @Override
+ protected BasicUIProperties getUIProperties() {
+ return super.getUIProperties().toBuilder()
+ .progressBarTexture(progressBarTexture)
+ .progressBarPos(new Pos2d(70, 3))
+ .build();
+ }
+
@Override
protected SlotWidget createItemInputSlot(int index, IDrawable[] backgrounds, Pos2d pos) {
// we have custom input slots
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java
index ca3707abc9..3e00bd1b1b 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Massfabricator.java
@@ -20,8 +20,12 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_MASSFAB_GLOW;
import java.util.Arrays;
+import javax.annotation.ParametersAreNonnullByDefault;
+
import net.minecraftforge.fluids.FluidStack;
+import com.google.common.primitives.Ints;
+
import gregtech.api.enums.ConfigCategories;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.MachineType;
@@ -30,12 +34,16 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.objects.overclockdescriber.EUOverclockDescriber;
+import gregtech.api.objects.overclockdescriber.OverclockDescriber;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Config;
+import gregtech.api.util.GT_OverclockCalculator;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
-import gregtech.common.power.BasicMachineEUPower;
-import gregtech.common.power.Power;
+import gregtech.api.util.MethodsReturnNonnullByDefault;
public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMachine {
@@ -43,7 +51,9 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
public static int sUUASpeedBonus = 4;
public static int sDurationMultiplier = 3215;
public static boolean sRequiresUUA = false;
- protected final long EUt;
+ public static int BASE_EUT = 256;
+ public static GT_Recipe nonUUARecipe;
+ public static GT_Recipe uuaRecipe;
public GT_MetaTileEntity_Massfabricator(int aID, String aName, String aNameRegional, int aTier) {
super(
@@ -51,7 +61,7 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
aName,
aNameRegional,
aTier,
- 1,
+ 8,
MachineType.MATTER_FABRICATOR.tooltipDescription(),
1,
1,
@@ -103,12 +113,10 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
.addIcon(OVERLAY_BOTTOM_MASSFAB_GLOW)
.glow()
.build()));
- EUt = V[1] * (long) Math.pow(2, mTier + 2);
}
public GT_MetaTileEntity_Massfabricator(String aName, int aTier, String[] aDescription, ITexture[][][] aTextures) {
super(aName, aTier, 1, aDescription, aTextures, 1, 1);
- EUt = V[1] * (long) Math.pow(2, mTier + 2);
}
@Override
@@ -122,8 +130,8 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
}
@Override
- protected Power buildPower() {
- return new MassfabricatorPower(mTier, mAmperage);
+ protected OverclockDescriber createOverclockDescriber() {
+ return new MassfabricatorOverclockDescriber(mTier, mAmperage);
}
@Override
@@ -152,9 +160,7 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
FluidStack tFluid = getDrainableStack();
if ((tFluid == null) || (tFluid.amount < getCapacity())) {
this.mOutputFluid = Materials.UUMatter.getFluid(1L);
- calculateOverclockedNess(
- (int) EUt,
- containsUUA(getFillableStack()) ? sDurationMultiplier / sUUASpeedBonus : sDurationMultiplier);
+ calculateCustomOverclock(containsUUA(getFillableStack()) ? uuaRecipe : nonUUARecipe);
// In case recipe is too OP for that machine
if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1)
return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS;
@@ -171,8 +177,8 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sMassFabFakeRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.massFabFakeRecipes;
}
@Override
@@ -189,64 +195,37 @@ public class GT_MetaTileEntity_Massfabricator extends GT_MetaTileEntity_BasicMac
return aFluid != null && aFluid.amount >= sUUAperUUM && aFluid.isFluidEqual(Materials.UUAmplifier.getFluid(1L));
}
- protected class MassfabricatorPower extends BasicMachineEUPower {
+ @ParametersAreNonnullByDefault
+ @MethodsReturnNonnullByDefault
+ protected class MassfabricatorOverclockDescriber extends EUOverclockDescriber {
- protected MassfabricatorPower(byte tier, int amperage) {
+ protected MassfabricatorOverclockDescriber(byte tier, int amperage) {
super(tier, amperage);
}
@Override
- public void computePowerUsageAndDuration(int euPerTick, int duration) {
- originalVoltage = computeVoltageForEuRate(euPerTick);
-
- if (mTier == 0) {
- // Long time calculation
- long xMaxProgresstime = ((long) duration) << 1;
- if (xMaxProgresstime > Integer.MAX_VALUE - 1) {
- // make impossible if too long
- recipeEuPerTick = Integer.MAX_VALUE - 1;
- recipeDuration = Integer.MAX_VALUE - 1;
- } else {
- recipeEuPerTick = (int) (V[1] << 2); // 2^2=4 so shift <<2
- recipeDuration = (int) xMaxProgresstime;
- }
- } else {
- // Long EUt calculation
- long xEUt = EUt;
-
- long tempEUt = V[1];
-
- recipeDuration = duration;
+ public GT_OverclockCalculator createCalculator(GT_OverclockCalculator template, GT_Recipe recipe) {
+ return super.createCalculator(template, recipe).setEUt(Ints.saturatedCast(V[tier] * amperage))
+ .setEUtIncreasePerOC(1)
+ .limitOverclockCount(tier - 1)
+ .setOneTickDiscount(false);
+ }
- while (tempEUt <= V[mTier - 1]) {
- tempEUt <<= 2; // this actually controls overclocking
- recipeDuration >>= 1; // this is effect of overclocking
- if (recipeDuration == 0) xEUt = (long) (xEUt / 1.1D); // U know, if the time is less than 1 tick
- // make the machine use less power
- }
- if (xEUt > Integer.MAX_VALUE - 1) {
- recipeEuPerTick = Integer.MAX_VALUE - 1;
- recipeDuration = Integer.MAX_VALUE - 1;
- } else {
- recipeEuPerTick = (int) xEUt;
- if (recipeEuPerTick == 0) recipeEuPerTick = 1;
- if (recipeDuration == 0) recipeDuration = 1; // set time to 1 tick
- }
- }
- wasOverclocked = checkIfOverclocked();
+ @Override
+ protected boolean shouldShowAmperage(GT_OverclockCalculator calculator) {
+ return true;
}
@Override
- public String getVoltageString() {
- long voltage = V[1];
- String voltageDescription = GT_Utility.formatNumbers(voltage) + " EU";
- voltageDescription += GT_Utility.getTierNameWithParentheses(voltage);
- return voltageDescription;
+ protected String getVoltageString(GT_OverclockCalculator calculator) {
+ // standard amperage calculation doesn't work here
+ return decorateWithOverclockLabel(GT_Utility.formatNumbers(V[mTier]) + " EU/t", calculator)
+ + GT_Utility.getTierNameWithParentheses(V[mTier]);
}
@Override
- public String getAmperageString() {
- long amperage = originalVoltage / V[1];
+ protected String getAmperageString(GT_OverclockCalculator calculator) {
+ int amperage = this.amperage;
int denominator = 1;
for (int i = 1; i < mTier; i++) {
amperage >>= 1;
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java
index 3e5445a659..39581c6d93 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java
@@ -2,7 +2,6 @@ package gregtech.common.tileentities.machines.basic;
import static gregtech.api.enums.GT_Values.V;
import static gregtech.api.enums.GT_Values.debugBlockMiner;
-import static gregtech.api.enums.Mods.GregTech;
import java.util.ArrayList;
@@ -19,12 +18,6 @@ import net.minecraftforge.common.util.FakePlayer;
import net.minecraftforge.common.util.ForgeDirection;
import com.gtnewhorizons.modularui.api.drawable.FallbackableUITexture;
-import com.gtnewhorizons.modularui.api.drawable.UITexture;
-import com.gtnewhorizons.modularui.api.math.Pos2d;
-import com.gtnewhorizons.modularui.api.math.Size;
-import com.gtnewhorizons.modularui.api.screen.ModularWindow;
-import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
-import com.gtnewhorizons.modularui.common.widget.ProgressBar;
import gregtech.api.enums.Textures;
import gregtech.api.gui.modularui.GT_UITextures;
@@ -33,6 +26,7 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.modularui.IAddUIWidgets;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.recipe.BasicUIProperties;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_Utility;
@@ -429,19 +423,13 @@ public class GT_MetaTileEntity_Miner extends GT_MetaTileEntity_BasicMachine
return true;
}
- private static final FallbackableUITexture progressBarTexture = new FallbackableUITexture(
- UITexture.fullImage(GregTech.ID, "gui/progressbar/miner"),
- GT_UITextures.PROGRESSBAR_CANNER);
+ private static final FallbackableUITexture progressBarTexture = GT_UITextures
+ .fallbackableProgressbar("miner", GT_UITextures.PROGRESSBAR_CANNER);
@Override
- public void addUIWidgets(ModularWindow.Builder builder, UIBuildContext buildContext) {
- super.addUIWidgets(builder, buildContext);
- builder.widget(
- createProgressBar(
- progressBarTexture.get(),
- 20,
- ProgressBar.Direction.RIGHT,
- new Pos2d(78, 24),
- new Size(20, 18)));
+ protected BasicUIProperties getUIProperties() {
+ return super.getUIProperties().toBuilder()
+ .progressBarTexture(progressBarTexture)
+ .build();
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java
index 7b333208e0..15150abf67 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_PotionBrewer.java
@@ -30,9 +30,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_PotionBrewer extends GT_MetaTileEntity_BasicMachine {
@@ -107,8 +108,8 @@ public class GT_MetaTileEntity_PotionBrewer extends GT_MetaTileEntity_BasicMachi
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sBrewingRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.brewingRecipes;
}
@Override
@@ -217,7 +218,7 @@ public class GT_MetaTileEntity_PotionBrewer extends GT_MetaTileEntity_BasicMachi
public boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack)
- && getRecipeList().containsInput(aStack);
+ && getRecipeMap().containsInput(aStack);
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java
index 92327984e7..a15d5b7f6d 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Replicator.java
@@ -17,45 +17,23 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_REPLICATOR_ACTI
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_REPLICATOR_ACTIVE_GLOW;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_REPLICATOR_GLOW;
-import java.util.HashMap;
-import java.util.NoSuchElementException;
-
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Element;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.MachineType;
import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
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;
public class GT_MetaTileEntity_Replicator extends GT_MetaTileEntity_BasicMachine {
- public static final HashMap<Materials, Long> MASS_OVERRIDES = new HashMap<>();
- public static final double EXPONENT = GregTech_API.sOPStuff.get("Replicator", "Nerf Exponent", 1.2D);
- private static int sHeaviestElementMass = 0;
-
- static {
- /*
- * Put overrides here. For instance:
- * MASS_OVERRIDES.put(Materials.get("cake"),Materials.get("cake").getMass());
- * MASS_OVERRIDES.put(Materials.get("otherCake"),1235234L);
- * MASS_OVERRIDES.put(Materials.Kalendrite,1235234L);
- * MASS_OVERRIDES.put(Materials.Kalendrite,Materials.Kalendrite.getMass()*2);
- */
- }
-
public GT_MetaTileEntity_Replicator(int aID, String aName, String aNameRegional, int aTier) {
super(
aID,
@@ -125,61 +103,9 @@ public class GT_MetaTileEntity_Replicator extends GT_MetaTileEntity_BasicMachine
return new GT_MetaTileEntity_Replicator(this.mName, this.mTier, this.mDescriptionArray, this.mTextures);
}
- public static long cubicFluidMultiplier(long amount) {
- return (long) Math.pow(amount, EXPONENT);
- }
-
- @Override
- public int checkRecipe() {
- FluidStack tFluid = getFillableStack();
- if ((tFluid != null) && (tFluid.isFluidEqual(Materials.UUMatter.getFluid(1L)))) {
- ItemStack tDataOrb = getSpecialSlot();
- if ((ItemList.Tool_DataOrb.isStackEqual(tDataOrb, false, true)) && (Behaviour_DataOrb.getDataTitle(tDataOrb)
- .equals("Elemental-Scan"))) {
- Materials tMaterial = Element.get(Behaviour_DataOrb.getDataName(tDataOrb)).mLinkedMaterials.get(0);
- long tMass = cubicFluidMultiplier(MASS_OVERRIDES.getOrDefault(tMaterial, tMaterial.getMass()));
- if ((tFluid.amount >= tMass) && (tMass > 0L)) {
-
- this.mEUt = GT_Utility.safeInt(gregtech.api.enums.GT_Values.VP[this.mTier], 1);
- this.mMaxProgresstime = GT_Utility.safeInt(tMass * 1024L / (1L << this.mTier), 1);
- if (mMaxProgresstime == Integer.MAX_VALUE - 1 || mEUt == Integer.MAX_VALUE - 1)
- return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS;
-
- if ((this.mOutputItems[0] = GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial, 1L)) == null) {
- if ((this.mOutputItems[0] = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L))
- != null) {
- if ((this.mOutputFluid = GT_Utility.getFluidForFilledItem(this.mOutputItems[0], true))
- == null) {
- if (ItemList.Cell_Empty.isStackEqual(getInputAt(0))) {
- if (canOutput(this.mOutputItems[0])) {
- getInputAt(0).stackSize -= 1;
- tFluid.amount = ((int) (tFluid.amount - tMass));
- return 2;
- }
- }
- } else {
- this.mOutputItems[0] = null;
- if ((getDrainableStack() == null)
- || ((getDrainableStack().isFluidEqual(this.mOutputFluid))
- && (getDrainableStack().amount < 16000))) {
- tFluid.amount = ((int) (tFluid.amount - tMass));
- return 2;
- }
- }
- }
- } else if (canOutput(this.mOutputItems[0])) {
- tFluid.amount = ((int) (tFluid.amount - tMass));
- return 2;
- }
- }
- }
- }
- return 0;
- }
-
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sReplicatorFakeRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.replicatorRecipes;
}
@Override
@@ -196,16 +122,6 @@ public class GT_MetaTileEntity_Replicator extends GT_MetaTileEntity_BasicMachine
@Override
public int getCapacity() {
- if ((sHeaviestElementMass == 0) && (GregTech_API.sPostloadFinished)) {
- sHeaviestElementMass = Materials.getMaterialsMap()
- .values()
- .stream()
- .mapToInt(material -> (int) cubicFluidMultiplier((int) material.getMass()))
- .max()
- .orElseThrow(NoSuchElementException::new);
- // Make the Number nicer =)
- sHeaviestElementMass = 1000 * (sHeaviestElementMass / 1000 + 1);
- }
- return sHeaviestElementMass;
+ return 3000;
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java
index c6d554b2eb..e632f4eeda 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_RockBreaker.java
@@ -28,9 +28,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_RockBreaker extends GT_MetaTileEntity_BasicMachine {
@@ -105,15 +106,15 @@ public class GT_MetaTileEntity_RockBreaker extends GT_MetaTileEntity_BasicMachin
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.rockBreakerFakeRecipes;
}
@Override
protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack)
- && getRecipeList().containsInput(aStack);
+ && getRecipeMap().containsInput(aStack);
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java
index 3bbd9f67ab..ba00be67f8 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java
@@ -19,7 +19,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_SCANNER;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_SCANNER_ACTIVE;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_SCANNER_ACTIVE_GLOW;
import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_SCANNER_GLOW;
-import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes;
+import static gregtech.api.recipe.RecipeMaps.scannerFakeRecipes;
import java.util.Objects;
@@ -42,6 +42,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
import gregtech.api.objects.ItemData;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_AssemblyLineUtils;
import gregtech.api.util.GT_Log;
@@ -117,15 +118,6 @@ public class GT_MetaTileEntity_Scanner extends GT_MetaTileEntity_BasicMachine {
super(aName, aTier, 1, aDescription, aTextures, 1, 1);
}
- /**
- * @deprecated Use {@link #GT_MetaTileEntity_Scanner(String, int, String[], ITexture[][][])}
- */
- @Deprecated
- public GT_MetaTileEntity_Scanner(String aName, int aTier, String[] aDescription, ITexture[][][] aTextures,
- String aGUIName, String aNEIName) {
- super(aName, aTier, 1, aDescription, aTextures, 1, 1);
- }
-
@Override
public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_Scanner(this.mName, this.mTier, this.mDescriptionArray, this.mTextures);
@@ -358,7 +350,7 @@ public class GT_MetaTileEntity_Scanner extends GT_MetaTileEntity_BasicMachine {
for (GT_Recipe.GT_Recipe_AssemblyLine tRecipe : GT_Recipe.GT_Recipe_AssemblyLine.sAssemblylineRecipes) {
if (GT_Utility.areStacksEqual(tRecipe.mResearchItem, aStack, true)) {
boolean failScanner = true;
- for (GT_Recipe scannerRecipe : sScannerFakeRecipes.mRecipeList) {
+ for (GT_Recipe scannerRecipe : scannerFakeRecipes.getAllRecipes()) {
if (GT_Utility.areStacksEqual(scannerRecipe.mInputs[0], aStack, true)) {
failScanner = false;
break;
@@ -402,8 +394,8 @@ public class GT_MetaTileEntity_Scanner extends GT_MetaTileEntity_BasicMachine {
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return sScannerFakeRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return scannerFakeRecipes;
}
@Override
@@ -415,7 +407,7 @@ public class GT_MetaTileEntity_Scanner extends GT_MetaTileEntity_BasicMachine {
protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack)
- && getRecipeList().containsInput(aStack);
+ && getRecipeMap().containsInput(aStack);
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java
index e9f80b6824..80812d2cb2 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java
@@ -49,12 +49,13 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_DataA
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_MultiInput;
import gregtech.api.multitileentity.multiblock.casing.Glasses;
+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;
import gregtech.api.util.GT_AssemblyLineUtils;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Recipe.GT_Recipe_AssemblyLine;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.IGT_HatchAdder;
@@ -182,8 +183,8 @@ public class GT_MetaTileEntity_AssemblyLine
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return null;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.assemblylineVisualRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java
deleted file mode 100644
index 83e8cc1817..0000000000
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package gregtech.common.tileentities.machines.multi;
-
-import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEBLASTFURNACE;
-import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEBLASTFURNACE_ACTIVE;
-import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEBLASTFURNACE_ACTIVE_GLOW;
-import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEPLATEDBRICKS;
-
-import net.minecraft.block.Block;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.common.util.ForgeDirection;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.SteamVariant;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.render.TextureFactory;
-
-public class GT_MetaTileEntity_BronzeBlastFurnace extends GT_MetaTileEntity_PrimitiveBlastFurnace {
-
- private static final ITexture[] FACING_SIDE = { TextureFactory.of(MACHINE_BRONZEPLATEDBRICKS) };
- private static final ITexture[] FACING_FRONT = { TextureFactory.of(MACHINE_BRONZEBLASTFURNACE) };
- private static final ITexture[] FACING_ACTIVE = { TextureFactory.of(MACHINE_BRONZEBLASTFURNACE_ACTIVE),
- TextureFactory.builder()
- .addIcon(MACHINE_BRONZEBLASTFURNACE_ACTIVE_GLOW)
- .glow()
- .build() };
-
- public GT_MetaTileEntity_BronzeBlastFurnace(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GT_MetaTileEntity_BronzeBlastFurnace(String aName) {
- super(aName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[] { "Disabled" };
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, ForgeDirection side, ForgeDirection aFacing,
- int colorIndex, boolean aActive, boolean redstoneLevel) {
- if (side == aFacing) {
- return aActive ? FACING_ACTIVE : FACING_FRONT;
- }
- return FACING_SIDE;
- }
-
- @Override
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GT_MetaTileEntity_BronzeBlastFurnace(this.mName);
- }
-
- @Override
- protected Block getCasingBlock() {
- return GregTech_API.sBlockCasings1;
- }
-
- @Override
- protected int getCasingMetaID() {
- return 10;
- }
-
- @Override
- public String getName() {
- return "Bronze Blast Furnace";
- }
-
- @Override
- public SteamVariant getSteamVariant() {
- return SteamVariant.BRONZE;
- }
-
- @Override
- public String[] getStructureDescription(ItemStack stackSize) {
- return new String[0];
- }
-}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java
index 392b77eb74..25daa06bcf 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java
@@ -29,11 +29,11 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TooltipMultiBlockBase;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.WorldSpawnedEventBuilder;
import gregtech.common.GT_Pollution;
@@ -240,7 +240,7 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_TooltipMul
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
+ public RecipeMap<?> getRecipeMap() {
return null;
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java
index 94334d9ade..cc4c4f7a84 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java
@@ -40,10 +40,14 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.recipe.check.SimpleCheckRecipeResult;
+import gregtech.api.recipe.maps.FuelBackend;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Recipe;
@@ -150,9 +154,14 @@ public class GT_MetaTileEntity_DieselEngine
return getMaxEfficiency(aStack) > 0;
}
- // can't use getRecipeMap() or else the fluid hatch will reject oxygen
- protected GT_Recipe.GT_Recipe_Map_Fuel getFuelMap() {
- return GT_Recipe.GT_Recipe_Map.sDieselFuels;
+ @Override
+ public RecipeMap<FuelBackend> getRecipeMap() {
+ return RecipeMaps.dieselFuels;
+ }
+
+ @Override
+ protected void setHatchRecipeMap(GT_MetaTileEntity_Hatch_Input hatch) {
+ // Prevent fluid hatch rejecting oxygen
}
/**
@@ -199,7 +208,8 @@ public class GT_MetaTileEntity_DieselEngine
double boostedOutput = 0;
double extraFuelFraction = 0;
for (FluidStack tFluid : tFluids) {
- GT_Recipe tRecipe = getFuelMap().findFuel(tFluid);
+ GT_Recipe tRecipe = getRecipeMap().getBackend()
+ .findFuel(tFluid);
if (tRecipe == null) continue;
fuelValue = tRecipe.mSpecialValue;
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java
index 349614ea1e..6dd47f0bf7 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java
@@ -43,9 +43,10 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.logic.ProcessingLogic;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
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;
public class GT_MetaTileEntity_DistillationTower extends
GT_MetaTileEntity_EnhancedMultiBlockBase<GT_MetaTileEntity_DistillationTower> implements ISurvivalConstructable {
@@ -181,8 +182,8 @@ public class GT_MetaTileEntity_DistillationTower extends
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sDistillationRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.distillationTowerRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java
index e2bd0b089b..f1bdc3dc23 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java
@@ -51,6 +51,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy;
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;
@@ -175,8 +177,8 @@ public class GT_MetaTileEntity_ElectricBlastFurnace extends
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sBlastRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.blastFurnaceRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java
index fcb301d7c6..dace58a492 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java
@@ -21,9 +21,11 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
+import gregtech.api.recipe.maps.FuelBackend;
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_MetaTileEntity_ExtremeDieselEngine extends GT_MetaTileEntity_DieselEngine {
@@ -65,8 +67,8 @@ public class GT_MetaTileEntity_ExtremeDieselEngine extends GT_MetaTileEntity_Die
}
@Override
- protected GT_Recipe.GT_Recipe_Map_Fuel getFuelMap() {
- return GT_Recipe.GT_Recipe_Map.sExtremeDieselFuels;
+ public RecipeMap<FuelBackend> getRecipeMap() {
+ return RecipeMaps.extremeDieselFuels;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java
index 477419bbd0..5fcb033109 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java
@@ -15,6 +15,8 @@ import static gregtech.api.util.GT_Utility.filterValidMTEs;
import java.util.Set;
+import javax.annotation.Nonnull;
+
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
@@ -50,6 +52,7 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.modularui.IAddUIWidgets;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.interfaces.tileentity.IOverclockDescriptionProvider;
import gregtech.api.logic.ProcessingLogic;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
@@ -57,6 +60,10 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energ
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output;
import gregtech.api.objects.GT_ItemStack;
+import gregtech.api.objects.overclockdescriber.FusionOverclockDescriber;
+import gregtech.api.objects.overclockdescriber.OverclockDescriber;
+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;
@@ -65,14 +72,12 @@ import gregtech.api.util.GT_OverclockCalculator;
import gregtech.api.util.GT_ParallelHelper;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
-import gregtech.common.power.FusionPower;
-import gregtech.common.power.Power;
public abstract class GT_MetaTileEntity_FusionComputer
extends GT_MetaTileEntity_EnhancedMultiBlockBase<GT_MetaTileEntity_FusionComputer>
- implements ISurvivalConstructable, IAddUIWidgets {
+ implements ISurvivalConstructable, IAddUIWidgets, IOverclockDescriptionProvider {
- protected FusionPower power;
+ private final OverclockDescriber overclockDescriber;
public static final String STRUCTURE_PIECE_MAIN = "main";
private static final ClassValue<IStructureDefinition<GT_MetaTileEntity_FusionComputer>> STRUCTURE_DEFINITION = new ClassValue<>() {
@@ -147,17 +152,24 @@ public abstract class GT_MetaTileEntity_FusionComputer
.build()));
}
- public GT_MetaTileEntity_FusionComputer(int aID, String aName, String aNameRegional, int tier) {
+ public GT_MetaTileEntity_FusionComputer(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
+ this.overclockDescriber = createOverclockDescriber();
}
public GT_MetaTileEntity_FusionComputer(String aName) {
super(aName);
+ this.overclockDescriber = createOverclockDescriber();
+ }
+
+ protected OverclockDescriber createOverclockDescriber() {
+ return new FusionOverclockDescriber((byte) tier(), capableStartupCanonical());
}
+ @Nonnull
@Override
- public Power getPower() {
- return power;
+ public OverclockDescriber getOverclockDescriber() {
+ return overclockDescriber;
}
public abstract int tier();
@@ -165,6 +177,12 @@ public abstract class GT_MetaTileEntity_FusionComputer
@Override
public abstract long maxEUStore();
+ /**
+ * Unlike {@link #maxEUStore()}, this provides theoretical limit of startup EU, without considering the amount of
+ * hatches nor the room for extra energy. Intended for simulation.
+ */
+ public abstract long capableStartupCanonical();
+
@Override
public abstract MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity);
@@ -277,23 +295,9 @@ public abstract class GT_MetaTileEntity_FusionComputer
return true;
}
- public int overclock(int mStartEnergy) {
- if (tierOverclock() == 1) {
- return 0;
- }
- if (tierOverclock() == 2) {
- return mStartEnergy <= 160000000 ? 1 : 0;
- }
- if (this.tierOverclock() == 4) {
- return (mStartEnergy <= 160000000 ? 2 : (mStartEnergy <= 320000000 ? 1 : 0));
- }
- return (mStartEnergy <= 160000000) ? 3
- : ((mStartEnergy <= 320000000) ? 2 : (mStartEnergy <= 640000000) ? 1 : 0);
- }
-
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sFusionRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.fusionRecipes;
}
@Override
@@ -310,7 +314,7 @@ public abstract class GT_MetaTileEntity_FusionComputer
@NotNull
@Override
protected GT_OverclockCalculator createOverclockCalculator(@NotNull GT_Recipe recipe) {
- return super.createOverclockCalculator(recipe).limitOverclockCount(overclock(recipe.mSpecialValue));
+ return overclockDescriber.createCalculator(super.createOverclockCalculator(recipe), recipe);
}
@NotNull
@@ -345,8 +349,6 @@ public abstract class GT_MetaTileEntity_FusionComputer
logic.setAmperageOC(false);
}
- public abstract int tierOverclock();
-
public boolean turnCasingActive(boolean status) {
if (this.mEnergyHatches != null) {
for (GT_MetaTileEntity_Hatch_Energy hatch : this.mEnergyHatches) {
@@ -625,7 +627,9 @@ public abstract class GT_MetaTileEntity_FusionComputer
.setDefaultColor(COLOR_TEXT_RED.get())
.setPos(50, 155))
.widget(
- new ButtonWidget().setNEITransferRect(GT_Recipe.GT_Recipe_Map.sFusionRecipes.mNEIName)
+ new ButtonWidget().setNEITransferRect(
+ RecipeMaps.fusionRecipes.getFrontend()
+ .getUIProperties().neiTransferRectId)
.setBackground(GT_UITextures.BUTTON_STANDARD, GT_UITextures.OVERLAY_BUTTON_NEI)
.setPos(154, 4)
.setSize(18, 18));
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java
index cd44756d62..e3a2432bf9 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer1.java
@@ -11,7 +11,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.common.power.FusionPower;
public class GT_MetaTileEntity_FusionComputer1 extends GT_MetaTileEntity_FusionComputer {
@@ -27,13 +26,11 @@ public class GT_MetaTileEntity_FusionComputer1 extends GT_MetaTileEntity_FusionC
.build());
public GT_MetaTileEntity_FusionComputer1(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, 6);
- power = new FusionPower((byte) 6, 160_000_000);
+ super(aID, aName, aNameRegional);
}
public GT_MetaTileEntity_FusionComputer1(String aName) {
super(aName);
- power = new FusionPower((byte) 6, 160_000_000);
}
@Override
@@ -47,6 +44,11 @@ public class GT_MetaTileEntity_FusionComputer1 extends GT_MetaTileEntity_FusionC
}
@Override
+ public long capableStartupCanonical() {
+ return 160_000_000;
+ }
+
+ @Override
public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_FusionComputer1(mName);
}
@@ -98,9 +100,4 @@ public class GT_MetaTileEntity_FusionComputer1 extends GT_MetaTileEntity_FusionC
public ITexture getTextureOverlay() {
return textureOverlay;
}
-
- @Override
- public int tierOverclock() {
- return 1;
- }
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java
index 7b77ddcf66..0b1f10158b 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer2.java
@@ -11,7 +11,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.common.power.FusionPower;
public class GT_MetaTileEntity_FusionComputer2 extends GT_MetaTileEntity_FusionComputer {
@@ -27,13 +26,11 @@ public class GT_MetaTileEntity_FusionComputer2 extends GT_MetaTileEntity_FusionC
.build());
public GT_MetaTileEntity_FusionComputer2(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, 7);
- power = new FusionPower((byte) 7, 320_000_000);
+ super(aID, aName, aNameRegional);
}
public GT_MetaTileEntity_FusionComputer2(String aName) {
super(aName);
- power = new FusionPower((byte) 7, 320_000_000);
}
@Override
@@ -47,6 +44,11 @@ public class GT_MetaTileEntity_FusionComputer2 extends GT_MetaTileEntity_FusionC
}
@Override
+ public long capableStartupCanonical() {
+ return 320_000_000;
+ }
+
+ @Override
public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_FusionComputer2(mName);
}
@@ -98,9 +100,4 @@ public class GT_MetaTileEntity_FusionComputer2 extends GT_MetaTileEntity_FusionC
public ITexture getTextureOverlay() {
return textureOverlay;
}
-
- @Override
- public int tierOverclock() {
- return 2;
- }
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java
index 271e28713d..64d92ccc99 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer3.java
@@ -11,7 +11,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.common.power.FusionPower;
public class GT_MetaTileEntity_FusionComputer3 extends GT_MetaTileEntity_FusionComputer {
@@ -27,13 +26,11 @@ public class GT_MetaTileEntity_FusionComputer3 extends GT_MetaTileEntity_FusionC
.build());
public GT_MetaTileEntity_FusionComputer3(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, 8);
- power = new FusionPower((byte) 8, 640_000_000);
+ super(aID, aName, aNameRegional);
}
public GT_MetaTileEntity_FusionComputer3(String aName) {
super(aName);
- power = new FusionPower((byte) 8, 640_000_000);
}
@Override
@@ -47,6 +44,11 @@ public class GT_MetaTileEntity_FusionComputer3 extends GT_MetaTileEntity_FusionC
}
@Override
+ public long capableStartupCanonical() {
+ return 640_000_000;
+ }
+
+ @Override
public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_FusionComputer3(mName);
}
@@ -98,9 +100,4 @@ public class GT_MetaTileEntity_FusionComputer3 extends GT_MetaTileEntity_FusionC
public ITexture getTextureOverlay() {
return textureOverlay;
}
-
- @Override
- public int tierOverclock() {
- return 4;
- }
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java
index 4fe75734c3..a1968b05d4 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java
@@ -22,9 +22,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_CubicMultiBlockBase;
+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;
public class GT_MetaTileEntity_ImplosionCompressor
extends GT_MetaTileEntity_CubicMultiBlockBase<GT_MetaTileEntity_ImplosionCompressor> {
@@ -96,8 +97,8 @@ public class GT_MetaTileEntity_ImplosionCompressor
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sImplosionRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.implosionRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IntegratedOreFactory.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IntegratedOreFactory.java
index ea61c5b7de..9ea42c6a00 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IntegratedOreFactory.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IntegratedOreFactory.java
@@ -56,6 +56,7 @@ 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_Muffler;
import gregtech.api.multitileentity.multiblock.casing.Glasses;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.render.TextureFactory;
@@ -417,7 +418,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends
for (ItemStack aStack : sMidProduct) {
int tID = GT_Utility.stackToInt(aStack);
if (checkTypes(tID, aTables)) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes
+ GT_Recipe tRecipe = RecipeMaps.maceratorRecipes
.findRecipe(getBaseMetaTileEntity(), false, GT_Values.V[15], null, aStack);
if (tRecipe != null) {
tProduct.addAll(getOutputStack(tRecipe, aStack.stackSize));
@@ -439,7 +440,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends
for (ItemStack aStack : sMidProduct) {
int tID = GT_Utility.stackToInt(aStack);
if (checkTypes(tID, aTables)) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sOreWasherRecipes.findRecipe(
+ GT_Recipe tRecipe = RecipeMaps.oreWasherRecipes.findRecipe(
getBaseMetaTileEntity(),
false,
GT_Values.V[15],
@@ -465,7 +466,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends
for (ItemStack aStack : sMidProduct) {
int tID = GT_Utility.stackToInt(aStack);
if (checkTypes(tID, aTables)) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes
+ GT_Recipe tRecipe = RecipeMaps.thermalCentrifugeRecipes
.findRecipe(getBaseMetaTileEntity(), false, GT_Values.V[15], null, aStack);
if (tRecipe != null) {
tProduct.addAll(getOutputStack(tRecipe, aStack.stackSize));
@@ -487,7 +488,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends
for (ItemStack aStack : sMidProduct) {
int tID = GT_Utility.stackToInt(aStack);
if (checkTypes(tID, aTables)) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes
+ GT_Recipe tRecipe = RecipeMaps.centrifugeRecipes
.findRecipe(getBaseMetaTileEntity(), false, GT_Values.V[15], null, aStack);
if (tRecipe != null) {
tProduct.addAll(getOutputStack(tRecipe, aStack.stackSize));
@@ -509,7 +510,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends
for (ItemStack aStack : sMidProduct) {
int tID = GT_Utility.stackToInt(aStack);
if (checkTypes(tID, aTables)) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sSifterRecipes
+ GT_Recipe tRecipe = RecipeMaps.sifterRecipes
.findRecipe(getBaseMetaTileEntity(), false, GT_Values.V[15], null, aStack);
if (tRecipe != null) {
tProduct.addAll(getOutputStack(tRecipe, aStack.stackSize));
@@ -531,7 +532,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends
for (ItemStack aStack : sMidProduct) {
int tID = GT_Utility.stackToInt(aStack);
if (checkTypes(tID, aTables)) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes.findRecipe(
+ GT_Recipe tRecipe = RecipeMaps.chemicalBathRecipes.findRecipe(
getBaseMetaTileEntity(),
false,
GT_Values.V[15],
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java
index 60b6137fd8..ea10795744 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java
@@ -42,8 +42,11 @@ import gregtech.api.enums.Textures.BlockIcons;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
+import gregtech.api.recipe.maps.LargeBoilerFuelBackend;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_ModHandler;
@@ -230,7 +233,7 @@ public abstract class GT_MetaTileEntity_LargeBoiler
boolean isFuelValid() {
if (!isSuperheated()) return true;
for (ItemStack input : getStoredInputs()) {
- if (!GT_Recipe.GT_Recipe_Map_LargeBoilerFakeFuels.isAllowedSolidFuel(input)
+ if (!LargeBoilerFuelBackend.isAllowedSolidFuel(input)
&& !Circuit_Integrated.isStackEqual(input, true, true)) {
// if any item is not in ALLOWED_SOLID_FUELS, operation cannot be allowed because it might still be
// consumed
@@ -243,6 +246,12 @@ public abstract class GT_MetaTileEntity_LargeBoiler
}
@Override
+ public RecipeMap<?> getRecipeMap() {
+ // Only for visual
+ return RecipeMaps.largeBoilerFakeFuels;
+ }
+
+ @Override
@NotNull
public CheckRecipeResult checkProcessing() {
if (!isFuelValid()) return CheckRecipeResultRegistry.NO_FUEL_FOUND;
@@ -260,7 +269,7 @@ public abstract class GT_MetaTileEntity_LargeBoiler
this.mSuperEfficencyIncrease = 0;
if (!isSuperheated()) {
- for (GT_Recipe tRecipe : GT_Recipe.GT_Recipe_Map.sDieselFuels.mRecipeList) {
+ for (GT_Recipe tRecipe : RecipeMaps.dieselFuels.getAllRecipes()) {
FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0), true);
if (tFluid != null && tRecipe.mSpecialValue > 1) {
tFluid.amount = 1000;
@@ -272,7 +281,7 @@ public abstract class GT_MetaTileEntity_LargeBoiler
}
}
}
- for (GT_Recipe tRecipe : GT_Recipe.GT_Recipe_Map.sDenseLiquidFuels.mRecipeList) {
+ for (GT_Recipe tRecipe : RecipeMaps.denseLiquidFuels.getAllRecipes()) {
FluidStack tFluid = GT_Utility.getFluidForFilledItem(tRecipe.getRepresentativeInput(0), true);
if (tFluid != null) {
tFluid.amount = 1000;
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java
index ded2621fec..8e4b5ec650 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java
@@ -46,9 +46,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_EnhancedMultiBlockBase;
+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;
public class GT_MetaTileEntity_LargeChemicalReactor extends
GT_MetaTileEntity_EnhancedMultiBlockBase<GT_MetaTileEntity_LargeChemicalReactor> implements ISurvivalConstructable {
@@ -161,8 +162,8 @@ public class GT_MetaTileEntity_LargeChemicalReactor extends
}
@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/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java
index 1f5bdf31d2..572a609458 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java
@@ -18,10 +18,11 @@ import gregtech.api.GregTech_API;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.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_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeTurbine {
@@ -74,7 +75,8 @@ public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeT
public int getFuelValue(FluidStack aLiquid) {
if (aLiquid == null) return 0;
- GT_Recipe tFuel = GT_Recipe_Map.sTurbineFuels.findFuel(aLiquid);
+ GT_Recipe tFuel = RecipeMaps.gasTurbineFuels.getBackend()
+ .findFuel(aLiquid);
if (tFuel != null) return tFuel.mSpecialValue;
return 0;
}
@@ -85,6 +87,16 @@ public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeT
}
@Override
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.gasTurbineFuels;
+ }
+
+ @Override
+ public int getRecipeCatalystPriority() {
+ return -1;
+ }
+
+ @Override
public Block getCasingBlock() {
return GregTech_API.sBlockCasings4;
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_GasAdvanced.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_GasAdvanced.java
index 09c6d344b6..b12c1ca93d 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_GasAdvanced.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_GasAdvanced.java
@@ -18,10 +18,11 @@ import gregtech.api.GregTech_API;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.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_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_LargeTurbine_GasAdvanced extends GT_MetaTileEntity_LargeTurbine {
@@ -74,7 +75,8 @@ public class GT_MetaTileEntity_LargeTurbine_GasAdvanced extends GT_MetaTileEntit
public int getFuelValue(FluidStack aLiquid) {
if (aLiquid == null) return 0;
- GT_Recipe tFuel = GT_Recipe_Map.sTurbineFuels.findFuel(aLiquid);
+ GT_Recipe tFuel = RecipeMaps.gasTurbineFuels.getBackend()
+ .findFuel(aLiquid);
if (tFuel != null) return tFuel.mSpecialValue;
return 0;
}
@@ -85,6 +87,16 @@ public class GT_MetaTileEntity_LargeTurbine_GasAdvanced extends GT_MetaTileEntit
}
@Override
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.gasTurbineFuels;
+ }
+
+ @Override
+ public int getRecipeCatalystPriority() {
+ return -2;
+ }
+
+ @Override
public Block getCasingBlock() {
return GregTech_API.sBlockCasings8;
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java
index 839e52ffc1..cbaf0e34ad 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java
@@ -26,12 +26,12 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
import gregtech.common.items.GT_MetaGenerated_Tool_01;
@@ -82,7 +82,8 @@ public class GT_MetaTileEntity_LargeTurbine_Plasma extends GT_MetaTileEntity_Lar
public int getFuelValue(FluidStack aLiquid) {
if (aLiquid == null) return 0;
- GT_Recipe tFuel = GT_Recipe_Map.sPlasmaFuels.findFuel(aLiquid);
+ GT_Recipe tFuel = RecipeMaps.plasmaFuels.getBackend()
+ .findFuel(aLiquid);
if (tFuel != null) return tFuel.mSpecialValue;
return 0;
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java
index d210e6bd55..14b9fa9edf 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java
@@ -38,12 +38,13 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler;
+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;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_StructureUtility;
import gregtech.api.util.GT_Utility;
@@ -137,8 +138,8 @@ public class GT_MetaTileEntity_MultiFurnace
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.furnaceRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_NanoForge.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_NanoForge.java
index 8da9f2f0ce..c251147587 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_NanoForge.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_NanoForge.java
@@ -43,6 +43,8 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.logic.ProcessingLogic;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_ExtendedPowerMultiBlockBase;
+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;
@@ -170,8 +172,8 @@ public class GT_MetaTileEntity_NanoForge extends
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sNanoForge;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.nanoForgeRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java
index 1e4e83b114..9ddd888cf6 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java
@@ -37,10 +37,12 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMul
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.recipe.maps.OilCrackerBackend;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.api.util.GT_Recipe;
public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_EnhancedMultiBlockBase<GT_MetaTileEntity_OilCracker>
implements ISurvivalConstructable {
@@ -167,8 +169,8 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_EnhancedMult
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sCrackingRecipes;
+ public RecipeMap<OilCrackerBackend> getRecipeMap() {
+ return RecipeMaps.crackingRecipes;
}
@Override
@@ -324,14 +326,15 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_EnhancedMult
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 && !getRecipeMap().getBackend()
+ .isValidCatalystFluid(tFluid)) {
rList.add(tFluid);
}
}
} else {
if (tHatch.getFillableStack() != null) {
- if (!GT_Recipe.GT_Recipe_Map.sCrackingRecipes.isValidCatalystFluid(tHatch.getFillableStack()))
- rList.add(tHatch.getFillableStack());
+ if (!getRecipeMap().getBackend()
+ .isValidCatalystFluid(tHatch.getFillableStack())) rList.add(tHatch.getFillableStack());
}
}
}
@@ -339,14 +342,16 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_EnhancedMult
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 && getRecipeMap().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 (getRecipeMap().getBackend()
+ .isValidCatalystFluid(tStack)) {
rList.add(tStack);
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java
index 935c8c0032..68828e55c4 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java
@@ -50,6 +50,7 @@ import gregtech.api.interfaces.IHatchElement;
import gregtech.api.interfaces.metatileentity.IMetricsExporter;
import gregtech.api.objects.GT_ChunkManager;
import gregtech.api.objects.ItemData;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_OreDictUnificator;
@@ -464,7 +465,7 @@ public abstract class GT_MetaTileEntity_OreDrillingPlantBase extends GT_MetaTile
outputItems.add(multiplyStackSize(currentItem));
return;
}
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes
+ GT_Recipe tRecipe = RecipeMaps.maceratorRecipes
.findRecipe(getBaseMetaTileEntity(), false, voltage, null, currentItem);
if (tRecipe == null) {
outputItems.add(currentItem);
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java
index 60d0d5b5a3..535f1ee239 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java
@@ -75,9 +75,14 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler;
import gregtech.api.multitileentity.multiblock.casing.Glasses;
import gregtech.api.objects.ItemData;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.recipe.check.SimpleCheckRecipeResult;
+import gregtech.api.recipe.metadata.PCBFactoryTierKey;
+import gregtech.api.recipe.metadata.PCBFactoryUpgrade;
+import gregtech.api.recipe.metadata.PCBFactoryUpgradeKey;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
@@ -518,8 +523,8 @@ public class GT_MetaTileEntity_PCBFactory extends
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sPCBFactory;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.pcbFactoryRecipes;
}
@Override
@@ -543,16 +548,11 @@ public class GT_MetaTileEntity_PCBFactory extends
maxParallel = (int) Math.max(Math.ceil(Math.log(numberOfNanites) / Math.log(2) + 0.00001), 1);
mMaxParallel = maxParallel;
- int recipeBitMap = recipe.mSpecialValue;
-
- if (((recipeBitMap & mBioBitMap) == mBioBitMap && !mBioUpgrade))
+ PCBFactoryUpgrade requiredUpgrade = recipe.getMetadata(PCBFactoryUpgradeKey.INSTANCE);
+ if (requiredUpgrade == PCBFactoryUpgrade.BIO && !mBioUpgrade)
return SimpleCheckRecipeResult.ofFailure("bio_upgrade_missing");
- int requiredPCBTier = 0;
- if ((recipeBitMap & mTier3BitMap) == mTier3BitMap) requiredPCBTier = 3;
- if ((recipeBitMap & mTier2BitMap) == mTier2BitMap) requiredPCBTier = 2;
- if ((recipeBitMap & mTier1BitMap) == mTier1BitMap) requiredPCBTier = 1;
-
+ int requiredPCBTier = recipe.getMetadataOrDefault(PCBFactoryTierKey.INSTANCE, 1);
if (requiredPCBTier > mTier) return CheckRecipeResultRegistry.insufficientMachineTier(requiredPCBTier);
return CheckRecipeResultRegistry.SUCCESSFUL;
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PlasmaForge.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PlasmaForge.java
index f6c54f6b70..eb57b55696 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PlasmaForge.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PlasmaForge.java
@@ -51,6 +51,8 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_ExtendedPow
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy;
import gregtech.api.objects.GT_ChunkManager;
+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;
@@ -652,8 +654,8 @@ public class GT_MetaTileEntity_PlasmaForge extends
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sPlasmaForgeRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.plasmaForgeRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java
index 8a2adc6e26..670d2a3aba 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java
@@ -40,8 +40,11 @@ import gregtech.api.gui.modularui.GUITextureSet;
import gregtech.api.interfaces.modularui.IAddUIWidgets;
import gregtech.api.interfaces.modularui.IGetTitleColor;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.interfaces.tileentity.RecipeMapWorkable;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.objects.GT_ItemStack;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder;
@@ -49,7 +52,7 @@ import gregtech.api.util.WorldSpawnedEventBuilder.ParticleEventBuilder;
import gregtech.common.GT_Pollution;
public abstract class GT_MetaTileEntity_PrimitiveBlastFurnace extends MetaTileEntity
- implements IAlignment, ISurvivalConstructable, IAddUIWidgets, IGetTitleColor {
+ implements IAlignment, ISurvivalConstructable, RecipeMapWorkable, IAddUIWidgets, IGetTitleColor {
public static final int INPUT_SLOTS = 3, OUTPUT_SLOTS = 3;
private static final ClassValue<IStructureDefinition<GT_MetaTileEntity_PrimitiveBlastFurnace>> STRUCTURE_DEFINITION = new ClassValue<>() {
@@ -335,8 +338,9 @@ public abstract class GT_MetaTileEntity_PrimitiveBlastFurnace extends MetaTileEn
}
}
- protected GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes;
+ @Override
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.primitiveBlastRecipes;
}
private void addOutputProducts() {
@@ -509,7 +513,9 @@ public abstract class GT_MetaTileEntity_PrimitiveBlastFurnace extends MetaTileEn
.widget(
new ProgressBar().setTexture(GT_UITextures.PROGRESSBAR_ARROW_2_STEAM.get(getSteamVariant()), 20)
.setProgress(() -> (float) mProgresstime / mMaxProgresstime)
- .setNEITransferRect(getRecipeMap().mNEIName)
+ .setNEITransferRect(
+ getRecipeMap().getFrontend()
+ .getUIProperties().neiTransferRectId)
.setPos(58, 24)
.setSize(20, 18));
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
index 46d682d6c0..81af2247c5 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java
@@ -65,6 +65,7 @@ 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.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock;
+import gregtech.api.recipe.RecipeMap;
import gregtech.api.recipe.check.CheckRecipeResult;
import gregtech.api.recipe.check.CheckRecipeResultRegistry;
import gregtech.api.recipe.check.SimpleCheckRecipeResult;
@@ -73,7 +74,6 @@ import gregtech.api.util.GT_ExoticEnergyInputHelper;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_ProcessingArray_Manager;
import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_StructureUtility;
import gregtech.api.util.GT_Utility;
import gregtech.common.blocks.GT_Item_Machines;
@@ -104,7 +104,7 @@ public class GT_MetaTileEntity_ProcessingArray extends
private int mCasingAmount = 0;
- private GT_Recipe_Map mLastRecipeMap;
+ private RecipeMap<?> mLastRecipeMap;
private ItemStack lastControllerStack;
private int tTier = 0;
private int mMult = 0;
@@ -181,7 +181,7 @@ public class GT_MetaTileEntity_ProcessingArray extends
return new ITexture[] { Textures.BlockIcons.casingTexturePages[0][48] };
}
- private GT_Recipe_Map fetchRecipeMap() {
+ private RecipeMap<?> fetchRecipeMap() {
if (isCorrectMachinePart(getControllerSlot())) {
// Gets the recipe map for the given machine through its unlocalized name
return GT_ProcessingArray_Manager
@@ -191,7 +191,7 @@ public class GT_MetaTileEntity_ProcessingArray extends
}
@Override
- public GT_Recipe_Map getRecipeMap() {
+ public RecipeMap<?> getRecipeMap() {
return mLastRecipeMap;
}
@@ -261,7 +261,7 @@ public class GT_MetaTileEntity_ProcessingArray extends
@Override
protected void setProcessingLogicPower(ProcessingLogic logic) {
- logic.setAvailableVoltage(GT_Values.V[tTier] * (mLastRecipeMap != null ? mLastRecipeMap.mAmperage : 1));
+ logic.setAvailableVoltage(GT_Values.V[tTier] * (mLastRecipeMap != null ? mLastRecipeMap.getAmperage() : 1));
logic.setAvailableAmperage(getMaxParallel());
logic.setAmperageOC(false);
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java
index 2d601b9055..ff84a69b44 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java
@@ -40,10 +40,11 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.logic.ProcessingLogic;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
+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;
public class GT_MetaTileEntity_PyrolyseOven
extends GT_MetaTileEntity_EnhancedMultiBlockBase<GT_MetaTileEntity_PyrolyseOven> implements ISurvivalConstructable {
@@ -153,8 +154,8 @@ public class GT_MetaTileEntity_PyrolyseOven
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sPyrolyseRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.pyrolyseRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_TranscendentPlasmaMixer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_TranscendentPlasmaMixer.java
index dedcc1ac6a..e4873f6d9d 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_TranscendentPlasmaMixer.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_TranscendentPlasmaMixer.java
@@ -40,6 +40,8 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.logic.ProcessingLogic;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_EnhancedMultiBlockBase;
+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;
@@ -145,8 +147,8 @@ public class GT_MetaTileEntity_TranscendentPlasmaMixer
long mWirelessEUt = 0;
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sTranscendentPlasmaMixerRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.transcendentPlasmaMixerRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java
index 4c11850bb3..c9cfe7949f 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_VacuumFreezer.java
@@ -18,9 +18,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_CubicMultiBlockBase;
+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;
public class GT_MetaTileEntity_VacuumFreezer
extends GT_MetaTileEntity_CubicMultiBlockBase<GT_MetaTileEntity_VacuumFreezer> {
@@ -91,8 +92,8 @@ public class GT_MetaTileEntity_VacuumFreezer
}
@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/gregtech/common/tileentities/machines/multiblock/AdvChemicalReactor.java b/src/main/java/gregtech/common/tileentities/machines/multiblock/AdvChemicalReactor.java
index 38152869e4..38ed9b6603 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multiblock/AdvChemicalReactor.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multiblock/AdvChemicalReactor.java
@@ -46,8 +46,9 @@ import gregtech.api.logic.ComplexParallelProcessingLogic;
import gregtech.api.multitileentity.enums.GT_MultiTileCasing;
import gregtech.api.multitileentity.multiblock.base.ComplexParallelController;
import gregtech.api.multitileentity.multiblock.casing.Glasses;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_StructureUtility;
import gregtech.common.tileentities.casings.upgrade.Inventory;
@@ -82,8 +83,8 @@ public class AdvChemicalReactor extends ComplexParallelController<AdvChemicalRea
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map_LargeChemicalReactor.sChemicalRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.chemicalReactorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multiblock/Macerator.java b/src/main/java/gregtech/common/tileentities/machines/multiblock/Macerator.java
index 5d837f1150..dda7eb9420 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multiblock/Macerator.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multiblock/Macerator.java
@@ -23,9 +23,10 @@ import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.enums.SoundResource;
import gregtech.api.enums.TierEU;
import gregtech.api.multitileentity.multiblock.base.StackableController;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
public class Macerator extends StackableController<Macerator> {
@@ -150,7 +151,7 @@ public class Macerator extends StackableController<Macerator> {
}
private boolean processRecipe(ItemStack[] aItemInputs, String aInventory) {
- GT_Recipe_Map tRecipeMap = GT_Recipe_Map.sMaceratorRecipes;
+ RecipeMap<?> tRecipeMap = RecipeMaps.maceratorRecipes;
GT_Recipe tRecipe = tRecipeMap.findRecipe(this, false, TierEU.IV, null, aItemInputs);
if (tRecipe == null) {
return false;
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java
index 4aae38530d..9b2c6b3ada 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java
@@ -22,8 +22,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_AlloySmelter_Bronze extends GT_MetaTileEntity_BasicMachine_Bronze {
@@ -47,8 +48,8 @@ public class GT_MetaTileEntity_AlloySmelter_Bronze extends GT_MetaTileEntity_Bas
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.alloySmelterRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java
index cc4f8d66b0..8b96906da1 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java
@@ -22,8 +22,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_AlloySmelter_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
@@ -47,8 +48,8 @@ public class GT_MetaTileEntity_AlloySmelter_Steel extends GT_MetaTileEntity_Basi
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.alloySmelterRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java
index cc5fad4db5..ef91ed5baf 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java
@@ -22,8 +22,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Compressor_Bronze extends GT_MetaTileEntity_BasicMachine_Bronze {
@@ -42,8 +43,8 @@ public class GT_MetaTileEntity_Compressor_Bronze extends GT_MetaTileEntity_Basic
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.compressorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java
index e1485d1a07..c213cf04f5 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java
@@ -22,8 +22,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Compressor_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
@@ -42,8 +43,8 @@ public class GT_MetaTileEntity_Compressor_Steel extends GT_MetaTileEntity_BasicM
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.compressorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java
index fd40b61201..6e986992f3 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java
@@ -22,8 +22,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Extractor_Bronze extends GT_MetaTileEntity_BasicMachine_Bronze {
@@ -42,8 +43,8 @@ public class GT_MetaTileEntity_Extractor_Bronze extends GT_MetaTileEntity_BasicM
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sExtractorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.extractorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java
index e40086515c..6a3d024e25 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java
@@ -22,8 +22,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Extractor_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
@@ -42,8 +43,8 @@ public class GT_MetaTileEntity_Extractor_Steel extends GT_MetaTileEntity_BasicMa
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sExtractorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.extractorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java
index e4eeb0533f..b7d25ac172 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java
@@ -29,8 +29,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder.ParticleEventBuilder;
@@ -50,8 +51,8 @@ public class GT_MetaTileEntity_ForgeHammer_Bronze extends GT_MetaTileEntity_Basi
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sHammerRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.hammerRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java
index 704d5e26a7..25785f3fa3 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java
@@ -29,8 +29,9 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder.ParticleEventBuilder;
@@ -50,8 +51,8 @@ public class GT_MetaTileEntity_ForgeHammer_Steel extends GT_MetaTileEntity_Basic
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sHammerRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.hammerRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java
index d950663edc..51a91874a0 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java
@@ -24,9 +24,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Furnace_Bronze extends GT_MetaTileEntity_BasicMachine_Bronze {
@@ -50,8 +51,8 @@ public class GT_MetaTileEntity_Furnace_Bronze extends GT_MetaTileEntity_BasicMac
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.furnaceRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java
index 9249590cdc..a151c724f3 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java
@@ -24,9 +24,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
public class GT_MetaTileEntity_Furnace_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
@@ -50,8 +51,8 @@ public class GT_MetaTileEntity_Furnace_Steel extends GT_MetaTileEntity_BasicMach
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.furnaceRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java
index af025293c7..cdbf9f2123 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java
@@ -29,9 +29,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder.ParticleEventBuilder;
@@ -72,13 +73,13 @@ public class GT_MetaTileEntity_Macerator_Bronze extends GT_MetaTileEntity_BasicM
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.maceratorRecipes;
}
@Override
public int checkRecipe() {
- GT_Recipe tRecipe = getRecipeList()
+ GT_Recipe tRecipe = getRecipeMap()
.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, TierEU.LV, null, null, getAllInputs());
if (tRecipe == null) return DID_NOT_FIND_RECIPE;
if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe;
@@ -90,7 +91,7 @@ public class GT_MetaTileEntity_Macerator_Bronze extends GT_MetaTileEntity_BasicM
if (!tRecipe.isRecipeInputEqual(true, new FluidStack[] { getFillableStack() }, getAllInputs()))
return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS;
if (tRecipe.getOutput(0) != null) mOutputItems[0] = tRecipe.getOutput(0);
- calculateOverclockedNess(tRecipe);
+ calculateCustomOverclock(tRecipe);
return FOUND_AND_SUCCESSFULLY_USED_RECIPE;
}
@@ -98,7 +99,7 @@ public class GT_MetaTileEntity_Macerator_Bronze extends GT_MetaTileEntity_BasicM
protected boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack)
- && GT_Recipe_Map.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64, aStack));
+ && RecipeMaps.maceratorRecipes.containsInput(GT_Utility.copyAmount(64, aStack));
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java
index 6901fcce98..95d510ffa3 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java
@@ -29,9 +29,10 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
+import gregtech.api.recipe.RecipeMap;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder;
@@ -71,13 +72,13 @@ public class GT_MetaTileEntity_Macerator_Steel extends GT_MetaTileEntity_BasicMa
}
@Override
- public GT_Recipe.GT_Recipe_Map getRecipeList() {
- return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
+ public RecipeMap<?> getRecipeMap() {
+ return RecipeMaps.maceratorRecipes;
}
@Override
public int checkRecipe() {
- GT_Recipe tRecipe = getRecipeList()
+ GT_Recipe tRecipe = getRecipeMap()
.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, TierEU.LV, null, null, getAllInputs());
if (tRecipe == null) return DID_NOT_FIND_RECIPE;
if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe;
@@ -89,7 +90,7 @@ public class GT_MetaTileEntity_Macerator_Steel extends GT_MetaTileEntity_BasicMa
if (!tRecipe.isRecipeInputEqual(true, new FluidStack[] { getFillableStack() }, getAllInputs()))
return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS;
if (tRecipe.getOutput(0) != null) mOutputItems[0] = tRecipe.getOutput(0);
- calculateOverclockedNess(tRecipe);
+ calculateCustomOverclock(tRecipe);
return FOUND_AND_SUCCESSFULLY_USED_RECIPE;
}
@@ -97,7 +98,7 @@ public class GT_MetaTileEntity_Macerator_Steel extends GT_MetaTileEntity_BasicMa
public boolean allowPutStackValidated(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side,
ItemStack aStack) {
return super.allowPutStackValidated(aBaseMetaTileEntity, aIndex, side, aStack)
- && GT_Recipe_Map.sMaceratorRecipes.containsInput(GT_Utility.copyAmount(64, aStack));
+ && RecipeMaps.maceratorRecipes.containsInput(GT_Utility.copyAmount(64, aStack));
}
@Override
diff --git a/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java b/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java
index ab9cfde6af..066abd48b8 100644
--- a/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java
+++ b/src/main/java/gregtech/common/tools/GT_Tool_HardHammer.java
@@ -21,6 +21,7 @@ import gregtech.GT_Mod;
import gregtech.api.enums.SoundResource;
import gregtech.api.interfaces.IIconContainer;
import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_ToolHarvestHelper;
import gregtech.api.util.GT_Utility;
@@ -125,18 +126,18 @@ public class GT_Tool_HardHammer extends GT_Tool {
return GT_ToolHarvestHelper.isAppropriateTool(aBlock, aMetaData, "hammer", "pickaxe")
|| GT_ToolHarvestHelper
.isAppropriateMaterial(aBlock, Material.rock, Material.glass, Material.ice, Material.packedIce)
- || GT_Recipe.GT_Recipe_Map.sHammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData));
+ || RecipeMaps.hammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData));
}
@Override
public int convertBlockDrops(List<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX,
int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) {
int rConversions = 0;
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes
+ GT_Recipe tRecipe = RecipeMaps.hammerRecipes
.findRecipe(null, true, MAX_IC2, null, new ItemStack(aBlock, 1, aMetaData));
if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) {
for (ItemStack tDrop : aDrops) {
- tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes
+ tRecipe = RecipeMaps.hammerRecipes
.findRecipe(null, true, MAX_IC2, null, GT_Utility.copyAmount(1, tDrop));
if (tRecipe != null) {
ItemStack tHammeringOutput = tRecipe.getOutput(0);
diff --git a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java
index 7fc4956cbb..2621ff8ef7 100644
--- a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java
+++ b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java
@@ -15,6 +15,7 @@ import net.minecraftforge.event.world.BlockEvent;
import gregtech.GT_Mod;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.recipe.RecipeMaps;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_ToolHarvestHelper;
import gregtech.api.util.GT_Utility;
@@ -77,11 +78,11 @@ public class GT_Tool_JackHammer extends GT_Tool_Drill_LV {
public int convertBlockDrops(List<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX,
int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) {
int rConversions = 0;
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes
+ GT_Recipe tRecipe = RecipeMaps.hammerRecipes
.findRecipe(null, true, 2147483647L, null, new ItemStack(aBlock, 1, aMetaData));
if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) {
for (ItemStack tDrop : aDrops) {
- tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes
+ tRecipe = RecipeMaps.hammerRecipes
.findRecipe(null, true, 2147483647L, null, GT_Utility.copyAmount(1, tDrop));
if (tRecipe != null) {
ItemStack tHammeringOutput = tRecipe.getOutput(0);