aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
authorboubou19 <miisterunknown@gmail.com>2023-04-21 20:29:38 +0200
committerGitHub <noreply@github.com>2023-04-21 20:29:38 +0200
commitde864236f83dc31c53ca77a6939357a0959bca75 (patch)
treeef739fd9426e7c2525b1560386faaa5bb893e30d /src/main/java/gregtech/api
parent285a75535d07f2037967b1208a5840fb81719514 (diff)
downloadGT5-Unofficial-de864236f83dc31c53ca77a6939357a0959bca75.tar.gz
GT5-Unofficial-de864236f83dc31c53ca77a6939357a0959bca75.tar.bz2
GT5-Unofficial-de864236f83dc31c53ca77a6939357a0959bca75.zip
Recipes ra2 (#1872)
* Recipes RA2 fixes * Use \uXXXX for non-ASCII characters * Misc cleanup (#1888) * migrate away from addThermalCentrifugeRecipe * split recipes of GT_Block_Stones_Abstract * migrate away from addForgeHammerRecipe * migrate away from addChemicalBathRecipe * remove "DisableOldChemicalRecipes" and its usage, as it's disabled by default in NH and it increases recipe complexity for nothing * Remove underground biomes ore classes, as it's not present in NH * migrate away from addFluidCannerRecipe * migrate away from addFluidExtractionRecipe * migrate away from addChemicalRecipe * migrate away from addMultiblockChemicalRecipe * deprecate addChemicalRecipeForBasicMachineOnly * migrate away from addCentrifugeRecipe * spotlessApply * fixing wrong merge conflict solving * Add Tengam materials (#1891) * Add Tengam materials * Change new recipes to consume 15/16 Amp * Remove now redundant `break` statements * fix comb chances? * fix centrifuge code not working --------- Co-authored-by: glowredman <35727266+glowredman@users.noreply.github.com> Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/enums/MaterialBuilder.java1
-rw-r--r--src/main/java/gregtech/api/enums/Materials.java40
-rw-r--r--src/main/java/gregtech/api/enums/Tier.java4
-rw-r--r--src/main/java/gregtech/api/enums/TierEU.java2
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java578
-rw-r--r--src/main/java/gregtech/api/util/GT_ModHandler.java13
-rw-r--r--src/main/java/gregtech/api/util/GT_RecipeBuilder.java11
-rw-r--r--src/main/java/gregtech/api/util/GT_RecipeRegistrator.java70
-rw-r--r--src/main/java/gregtech/api/util/GT_Utility.java3
9 files changed, 341 insertions, 381 deletions
diff --git a/src/main/java/gregtech/api/enums/MaterialBuilder.java b/src/main/java/gregtech/api/enums/MaterialBuilder.java
index 92ae7c07c3..175081e0ce 100644
--- a/src/main/java/gregtech/api/enums/MaterialBuilder.java
+++ b/src/main/java/gregtech/api/enums/MaterialBuilder.java
@@ -35,7 +35,6 @@ public class MaterialBuilder {
private boolean hasCorrespondingFluid = false;
private boolean hasCorrespondingGas = false;
private boolean canBeCracked = false;
- private boolean canBeSteamCracked = false;
private int liquidTemperature = 300;
private int gasTemperature = 300;
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java
index 60bcb7a867..f2fcc9aebd 100644
--- a/src/main/java/gregtech/api/enums/Materials.java
+++ b/src/main/java/gregtech/api/enums/Materials.java
@@ -891,6 +891,10 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public static Materials EnrichedHolmium = new Materials(582, TextureSet.SET_METALLIC, 1.0F, 0, 2, 18, 100, 1|2|4|16, 255, 255, "EnrichedHolmium", "Enriched Holmium", -1, -1, 0, 3000, true, false, 200, 1, 1, Dyes.dyePurple);
+ public static Materials TengamPurified = new MaterialBuilder(111, TextureSet.SET_METALLIC, "Purified Tengam").addDustItems().addGearItems().addMetalItems().addToolHeadItems().setAspects(Arrays.asList(new TC_AspectStack(TC_Aspects.MAGNETO, 2), new TC_AspectStack(TC_Aspects.ELECTRUM, 2))).setColor(Dyes.dyeLime).setName("TengamPurified").setRGB(186, 223, 112).constructMaterial().setProcessingMaterialTierEU(TierEU.RECIPE_UEV);
+ public static Materials TengamAttuned = new MaterialBuilder(112, TextureSet.SET_MAGNETIC, "Attuned Tengam") .addDustItems().addGearItems().addMetalItems().addToolHeadItems().setAspects(Arrays.asList(new TC_AspectStack(TC_Aspects.MAGNETO, 4), new TC_AspectStack(TC_Aspects.ELECTRUM, 1))).setColor(Dyes.dyeLime).setName("TengamAttuned") .setRGB(213, 255, 128).constructMaterial().setProcessingMaterialTierEU(TierEU.RECIPE_UEV);
+ public static Materials TengamRaw = new MaterialBuilder(110, TextureSet.SET_ROUGH, "Raw Tengam") .addOreItems() .setAspects(Arrays.asList(new TC_AspectStack(TC_Aspects.MAGNETO, 1), new TC_AspectStack(TC_Aspects.ELECTRUM, 4))).setColor(Dyes.dyeLime).setName("TengamRaw") .setRGB(160, 191, 96).constructMaterial().setProcessingMaterialTierEU(TierEU.RECIPE_UEV);
+
// spotless:on
static {
@@ -1372,6 +1376,9 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
Sand.setSmeltingInto(Glass);
Ice.setSmeltingInto(Water);
Snow.setSmeltingInto(Water);
+ TengamAttuned.setSmeltingInto(TengamPurified)
+ .setMaceratingInto(TengamPurified)
+ .setArcSmeltingInto(TengamPurified);
}
private static void setOthers() {
@@ -1799,6 +1806,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
Cryolite.addOreByProducts(Aluminiumoxide, Sodium);
Naquadria.addOreByProduct(Naquadria);
RoastedNickel.addOreByProduct(Nickel);
+ TengamRaw.addOreByProducts(NeodymiumMagnetic, SamariumMagnetic);
}
private static void setColors() {
@@ -1871,19 +1879,22 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
MaterialsUEVplus.Universium.mChemicalFormula = "A tear into the space beyond space";
Longasssuperconductornameforuvwire.mChemicalFormula = "Nq*\u2084(Ir\u2083Os)\u2083EuSm";
Longasssuperconductornameforuhvwire.mChemicalFormula = "D\u2086(SpNt)\u2087Tn\u2085Am\u2086";
- SuperconductorUEVBase.mChemicalFormula = "D*\u2085If*\u2085(✦◆✦)(⚷⚙⚷ Ni4Ti6)";
- SuperconductorUIVBase.mChemicalFormula = "(C\u2081\u2084Os\u2081\u2081O\u2087Ag\u2083SpH\u2082O)\u2084?\u2081\u2080(Fs⚶)\u2086(⌘☯☯⌘)\u2085";
- SuperconductorUMVBase.mChemicalFormula = "?\u2086Or\u2083(Hy⚶)\u2081\u2081(((CW)\u2087Ti\u2083)\u2083???)\u2085۞\u2082";
+ SuperconductorUEVBase.mChemicalFormula = "D*\u2085If*\u2085(\u2726\u25C6\u2726)(\u26B7\u2699\u26B7 Ni4Ti6)";
+ SuperconductorUIVBase.mChemicalFormula = "(C\u2081\u2084Os\u2081\u2081O\u2087Ag\u2083SpH\u2082O)\u2084?\u2081\u2080(Fs\u26B6)\u2086(\u2318\u262F\u262F\u2318)\u2085";
+ SuperconductorUMVBase.mChemicalFormula = "?\u2086Or\u2083(Hy\u26B6)\u2081\u2081(((CW)\u2087Ti\u2083)\u2083???)\u2085\u06DE\u2082";
Diatomite.mChemicalFormula = "(SiO\u2082)\u2088Fe\u2082O\u2083(Al\u2082O\u2083)";
EnrichedHolmium.mChemicalFormula = "Nq+\u2088Ho\u2082";
- Grade1PurifiedWater.mChemicalFormula = "H₂O";
- Grade2PurifiedWater.mChemicalFormula = "H₂O";
- Grade3PurifiedWater.mChemicalFormula = "H₂O";
- Grade4PurifiedWater.mChemicalFormula = "H₂O";
- Grade5PurifiedWater.mChemicalFormula = "H₂O";
- Grade6PurifiedWater.mChemicalFormula = "H₂O";
- Grade7PurifiedWater.mChemicalFormula = "H₂O";
- Grade8PurifiedWater.mChemicalFormula = "H₂O";
+ Grade1PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade2PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade3PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade4PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade5PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade6PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade7PurifiedWater.mChemicalFormula = "H\u2082O";
+ Grade8PurifiedWater.mChemicalFormula = "H\u2082O";
+ TengamRaw.mChemicalFormula = "";
+ TengamPurified.mChemicalFormula = "M";
+ TengamAttuned.mChemicalFormula = "M";
}
private static void initSubTags() {
@@ -2142,7 +2153,9 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
Quantium,
RedstoneAlloy,
Bedrockium,
- EnrichedHolmium);
+ EnrichedHolmium,
+ TengamPurified,
+ TengamAttuned);
SubTag.FOOD.addTo(
MeatRaw,
@@ -2333,7 +2346,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
Elite.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
Master.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
Ultimate.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Superconductor.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
+ Superconductor.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING); // Todo: remove this once it will be fully
+ // deprecated
Infinite.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
Bio.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
SuperconductorMV.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
diff --git a/src/main/java/gregtech/api/enums/Tier.java b/src/main/java/gregtech/api/enums/Tier.java
index 870e8dafbb..84e8344334 100644
--- a/src/main/java/gregtech/api/enums/Tier.java
+++ b/src/main/java/gregtech/api/enums/Tier.java
@@ -111,7 +111,7 @@ public class Tier {
OrePrefixes.cableGt01.get(Materials.Naquadah),
OrePrefixes.cableGt04.get(Materials.Naquadah),
OrePrefixes.circuit.get(Materials.Ultimate),
- OrePrefixes.circuit.get(Materials.Superconductor)),
+ OrePrefixes.circuit.get(Materials.SuperconductorUHV)),
new Tier(
SubTag.ENERGY_ELECTRICITY,
8,
@@ -123,7 +123,7 @@ public class Tier {
ItemList.Hull_UV,
OrePrefixes.cableGt04.get(Materials.NaquadahAlloy),
OrePrefixes.wireGt01.get(Materials.SuperconductorUHV),
- OrePrefixes.circuit.get(Materials.Superconductor),
+ OrePrefixes.circuit.get(Materials.SuperconductorUHV),
OrePrefixes.circuit.get(Materials.Infinite)),
new Tier(
SubTag.ENERGY_ELECTRICITY,
diff --git a/src/main/java/gregtech/api/enums/TierEU.java b/src/main/java/gregtech/api/enums/TierEU.java
index 419580f92d..7325d2a789 100644
--- a/src/main/java/gregtech/api/enums/TierEU.java
+++ b/src/main/java/gregtech/api/enums/TierEU.java
@@ -4,8 +4,6 @@ import static gregtech.api.enums.GT_Values.V;
public class TierEU {
- private static final double RECIPE_DISCOUNT = 0.95;
-
// Do NOT use these for crafting recipes as they are exactly 1A! Use RECIPE_ULV etc.
public static final long ULV = V[0];
public static final long LV = V[1];
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java
index 0dc019ae5c..a80e235a65 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java
@@ -161,341 +161,249 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_
// TODO: CHECK
if (aRecipe != null) {
for (int i = 3; i < aRecipe.length; i++) {
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT) {
- aRecipe[i] = Tier.ELECTRIC[this.mTier].mManagingObject;
- continue;
- }
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.BETTER_CIRCUIT) {
- aRecipe[i] = Tier.ELECTRIC[this.mTier].mBetterManagingObject;
- continue;
- }
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL) {
- aRecipe[i] = Tier.ELECTRIC[this.mTier].mHullObject;
- continue;
- }
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE) {
- aRecipe[i] = Tier.ELECTRIC[this.mTier].mConductingObject;
- continue;
- }
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE4) {
- aRecipe[i] = Tier.ELECTRIC[this.mTier].mLargerConductingObject;
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS) {
- switch (this.mTier) {
- case 0:
- case 1:
- case 2:
- case 3:
- aRecipe[i] = new ItemStack(Blocks.glass, 1, W);
- break;
- case 4:
- case 5:
- case 6:
- case 7:
- case 8:
- if (BartWorks.isModLoaded()) { // todo remove via provider pattern on all enums?
- aRecipe[i] = "blockGlass" + VN[aTier];
- break;
- }
- default:
- if (BartWorks.isModLoaded()) { // todo remove via provider pattern on all enums?
- aRecipe[i] = "blockGlass" + VN[8];
- } else {
- aRecipe[i] = Ic2Items.reinforcedGlass;
- }
- break;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PLATE) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.plate.get(Materials.Steel);
- case 2 -> aRecipe[i] = OrePrefixes.plate.get(Materials.Aluminium);
- case 3 -> aRecipe[i] = OrePrefixes.plate.get(Materials.StainlessSteel);
- case 4 -> aRecipe[i] = OrePrefixes.plate.get(Materials.Titanium);
- case 5 -> aRecipe[i] = OrePrefixes.plate.get(Materials.TungstenSteel);
- case 6 -> aRecipe[i] = OrePrefixes.plate.get(Materials.HSSG);
- case 7 -> aRecipe[i] = OrePrefixes.plate.get(Materials.HSSE);
- default -> aRecipe[i] = OrePrefixes.plate.get(Materials.Neutronium);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PIPE) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.pipeMedium.get(Materials.Bronze);
- case 2 -> aRecipe[i] = OrePrefixes.pipeMedium.get(Materials.Steel);
- case 3 -> aRecipe[i] = OrePrefixes.pipeMedium.get(Materials.StainlessSteel);
- case 4 -> aRecipe[i] = OrePrefixes.pipeMedium.get(Materials.Titanium);
- case 5 -> aRecipe[i] = OrePrefixes.pipeMedium.get(Materials.TungstenSteel);
- case 6 -> aRecipe[i] = OrePrefixes.pipeSmall.get(Materials.Ultimate);
- case 7 -> aRecipe[i] = OrePrefixes.pipeMedium.get(Materials.Ultimate);
- case 8 -> aRecipe[i] = OrePrefixes.pipeLarge.get(Materials.Ultimate);
- default -> aRecipe[i] = OrePrefixes.pipeHuge.get(Materials.Ultimate);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.AnyCopper);
- case 2 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.Cupronickel);
- case 3 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.Kanthal);
- case 4 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.Nichrome);
- case 5 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.TPV);
- case 6 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.HSSG);
- case 7 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.Naquadah);
- case 8 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.NaquadahAlloy);
- case 9 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.NaquadahAlloy);
- default -> aRecipe[i] = OrePrefixes.wireGt08.get(Materials.NaquadahAlloy);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.AnyCopper);
- case 2 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.Cupronickel);
- case 3 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.Kanthal);
- case 4 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.Nichrome);
- case 5 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.TPV);
- case 6 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.HSSG);
- case 7 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.Naquadah);
- case 8 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.NaquadahAlloy);
- case 9 -> aRecipe[i] = OrePrefixes.wireGt08.get(Materials.NaquadahAlloy);
- default -> aRecipe[i] = OrePrefixes.wireGt16.get(Materials.NaquadahAlloy);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION) {
- aRecipe[i] = OrePrefixes.stick.get(Materials.Blaze);
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_MAGNETIC) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.stick.get(Materials.IronMagnetic);
- case 2, 3 -> aRecipe[i] = OrePrefixes.stick.get(Materials.SteelMagnetic);
- case 4, 5 -> aRecipe[i] = OrePrefixes.stick.get(Materials.NeodymiumMagnetic);
- case 6, 7 -> aRecipe[i] = OrePrefixes.stick.get(Materials.SamariumMagnetic);
- default -> aRecipe[i] = OrePrefixes.stickLong.get(Materials.SamariumMagnetic);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_ELECTROMAGNETIC) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.stick.get(Materials.AnyIron);
- case 2, 3 -> aRecipe[i] = OrePrefixes.stick.get(Materials.Steel);
- case 4 -> aRecipe[i] = OrePrefixes.stick.get(Materials.Neodymium);
- default -> aRecipe[i] = OrePrefixes.stick.get(Materials.VanadiumGallium);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_ELECTRIC) {
- switch (this.mTier) {
- case 0 -> aRecipe[i] = OrePrefixes.wireGt01.get(Materials.Lead);
- case 1 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.Tin);
- case 2 -> aRecipe[i] = OrePrefixes.wireGt02.get(Materials.AnyCopper);
- case 3 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.AnyCopper);
- case 4 -> aRecipe[i] = OrePrefixes.wireGt08.get(Materials.AnnealedCopper);
- case 5 -> aRecipe[i] = OrePrefixes.wireGt16.get(Materials.AnnealedCopper);
- case 6 -> aRecipe[i] = OrePrefixes.wireGt04.get(Materials.YttriumBariumCuprate);
- case 7 -> aRecipe[i] = OrePrefixes.wireGt08.get(Materials.Iridium);
- default -> aRecipe[i] = OrePrefixes.wireGt16.get(Materials.Osmium);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Robot_Arm_LV;
- case 2 -> aRecipe[i] = ItemList.Robot_Arm_MV;
- case 3 -> aRecipe[i] = ItemList.Robot_Arm_HV;
- case 4 -> aRecipe[i] = ItemList.Robot_Arm_EV;
- case 5 -> aRecipe[i] = ItemList.Robot_Arm_IV;
- case 6 -> aRecipe[i] = ItemList.Robot_Arm_LuV;
- case 7 -> aRecipe[i] = ItemList.Robot_Arm_ZPM;
- case 8 -> aRecipe[i] = ItemList.Robot_Arm_UV;
- case 9 -> aRecipe[i] = ItemList.Robot_Arm_UHV;
- case 10 -> aRecipe[i] = ItemList.Robot_Arm_UEV;
- case 11 -> aRecipe[i] = ItemList.Robot_Arm_UIV;
- case 12 -> aRecipe[i] = ItemList.Robot_Arm_UMV;
- case 13 -> aRecipe[i] = ItemList.Robot_Arm_UXV;
- case 14 -> aRecipe[i] = ItemList.Robot_Arm_MAX;
- default -> aRecipe[i] = ItemList.Robot_Arm_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Electric_Pump_LV;
- case 2 -> aRecipe[i] = ItemList.Electric_Pump_MV;
- case 3 -> aRecipe[i] = ItemList.Electric_Pump_HV;
- case 4 -> aRecipe[i] = ItemList.Electric_Pump_EV;
- case 5 -> aRecipe[i] = ItemList.Electric_Pump_IV;
- case 6 -> aRecipe[i] = ItemList.Electric_Pump_LuV;
- case 7 -> aRecipe[i] = ItemList.Electric_Pump_ZPM;
- case 8 -> aRecipe[i] = ItemList.Electric_Pump_UV;
- case 9 -> aRecipe[i] = ItemList.Electric_Pump_UHV;
- case 10 -> aRecipe[i] = ItemList.Electric_Pump_UEV;
- case 11 -> aRecipe[i] = ItemList.Electric_Pump_UIV;
- case 12 -> aRecipe[i] = ItemList.Electric_Pump_UMV;
- case 13 -> aRecipe[i] = ItemList.Electric_Pump_UXV;
- case 14 -> aRecipe[i] = ItemList.Electric_Pump_MAX;
- default -> aRecipe[i] = ItemList.Electric_Pump_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.Tin);
- case 2 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.Bronze);
- case 3 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.Steel);
- case 4 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.StainlessSteel);
- case 5 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.TungstenSteel);
- case 6 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.Chrome);
- case 7 -> aRecipe[i] = OrePrefixes.rotor.get(Materials.Iridium);
- default -> aRecipe[i] = OrePrefixes.rotor.get(Materials.Osmium);
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Electric_Motor_LV;
- case 2 -> aRecipe[i] = ItemList.Electric_Motor_MV;
- case 3 -> aRecipe[i] = ItemList.Electric_Motor_HV;
- case 4 -> aRecipe[i] = ItemList.Electric_Motor_EV;
- case 5 -> aRecipe[i] = ItemList.Electric_Motor_IV;
- case 6 -> aRecipe[i] = ItemList.Electric_Motor_LuV;
- case 7 -> aRecipe[i] = ItemList.Electric_Motor_ZPM;
- case 8 -> aRecipe[i] = ItemList.Electric_Motor_UV;
- case 9 -> aRecipe[i] = ItemList.Electric_Motor_UHV;
- case 10 -> aRecipe[i] = ItemList.Electric_Motor_UEV;
- case 11 -> aRecipe[i] = ItemList.Electric_Motor_UIV;
- case 12 -> aRecipe[i] = ItemList.Electric_Motor_UMV;
- case 13 -> aRecipe[i] = ItemList.Electric_Motor_UXV;
- case 14 -> aRecipe[i] = ItemList.Electric_Motor_MAX;
- default -> aRecipe[i] = ItemList.Electric_Motor_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Electric_Piston_LV;
- case 2 -> aRecipe[i] = ItemList.Electric_Piston_MV;
- case 3 -> aRecipe[i] = ItemList.Electric_Piston_HV;
- case 4 -> aRecipe[i] = ItemList.Electric_Piston_EV;
- case 5 -> aRecipe[i] = ItemList.Electric_Piston_IV;
- case 6 -> aRecipe[i] = ItemList.Electric_Piston_LuV;
- case 7 -> aRecipe[i] = ItemList.Electric_Piston_ZPM;
- case 8 -> aRecipe[i] = ItemList.Electric_Piston_UV;
- case 9 -> aRecipe[i] = ItemList.Electric_Piston_UHV;
- case 10 -> aRecipe[i] = ItemList.Electric_Piston_UEV;
- case 11 -> aRecipe[i] = ItemList.Electric_Piston_UIV;
- case 12 -> aRecipe[i] = ItemList.Electric_Piston_UMV;
- case 13 -> aRecipe[i] = ItemList.Electric_Piston_UXV;
- case 14 -> aRecipe[i] = ItemList.Electric_Piston_MAX;
- default -> aRecipe[i] = ItemList.Electric_Piston_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Conveyor_Module_LV;
- case 2 -> aRecipe[i] = ItemList.Conveyor_Module_MV;
- case 3 -> aRecipe[i] = ItemList.Conveyor_Module_HV;
- case 4 -> aRecipe[i] = ItemList.Conveyor_Module_EV;
- case 5 -> aRecipe[i] = ItemList.Conveyor_Module_IV;
- case 6 -> aRecipe[i] = ItemList.Conveyor_Module_LuV;
- case 7 -> aRecipe[i] = ItemList.Conveyor_Module_ZPM;
- case 8 -> aRecipe[i] = ItemList.Conveyor_Module_UV;
- case 9 -> aRecipe[i] = ItemList.Conveyor_Module_UHV;
- case 10 -> aRecipe[i] = ItemList.Conveyor_Module_UEV;
- case 11 -> aRecipe[i] = ItemList.Conveyor_Module_UIV;
- case 12 -> aRecipe[i] = ItemList.Conveyor_Module_UMV;
- case 13 -> aRecipe[i] = ItemList.Conveyor_Module_UXV;
- case 14 -> aRecipe[i] = ItemList.Conveyor_Module_MAX;
- default -> aRecipe[i] = ItemList.Conveyor_Module_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.EMITTER) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Emitter_LV;
- case 2 -> aRecipe[i] = ItemList.Emitter_MV;
- case 3 -> aRecipe[i] = ItemList.Emitter_HV;
- case 4 -> aRecipe[i] = ItemList.Emitter_EV;
- case 5 -> aRecipe[i] = ItemList.Emitter_IV;
- case 6 -> aRecipe[i] = ItemList.Emitter_LuV;
- case 7 -> aRecipe[i] = ItemList.Emitter_ZPM;
- case 8 -> aRecipe[i] = ItemList.Emitter_UV;
- case 9 -> aRecipe[i] = ItemList.Emitter_UHV;
- case 10 -> aRecipe[i] = ItemList.Emitter_UEV;
- case 11 -> aRecipe[i] = ItemList.Emitter_UIV;
- case 12 -> aRecipe[i] = ItemList.Emitter_UMV;
- case 13 -> aRecipe[i] = ItemList.Emitter_UXV;
- case 14 -> aRecipe[i] = ItemList.Emitter_MAX;
- default -> aRecipe[i] = ItemList.Emitter_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.SENSOR) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Sensor_LV;
- case 2 -> aRecipe[i] = ItemList.Sensor_MV;
- case 3 -> aRecipe[i] = ItemList.Sensor_HV;
- case 4 -> aRecipe[i] = ItemList.Sensor_EV;
- case 5 -> aRecipe[i] = ItemList.Sensor_IV;
- case 6 -> aRecipe[i] = ItemList.Sensor_LuV;
- case 7 -> aRecipe[i] = ItemList.Sensor_ZPM;
- case 8 -> aRecipe[i] = ItemList.Sensor_UV;
- case 9 -> aRecipe[i] = ItemList.Sensor_UHV;
- case 10 -> aRecipe[i] = ItemList.Sensor_UEV;
- case 11 -> aRecipe[i] = ItemList.Sensor_UIV;
- case 12 -> aRecipe[i] = ItemList.Sensor_UMV;
- case 13 -> aRecipe[i] = ItemList.Sensor_UXV;
- case 14 -> aRecipe[i] = ItemList.Sensor_MAX;
- default -> aRecipe[i] = ItemList.Sensor_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] == GT_MetaTileEntity_BasicMachine_GT_Recipe.X.FIELD_GENERATOR) {
- switch (this.mTier) {
- case 0, 1 -> aRecipe[i] = ItemList.Field_Generator_LV;
- case 2 -> aRecipe[i] = ItemList.Field_Generator_MV;
- case 3 -> aRecipe[i] = ItemList.Field_Generator_HV;
- case 4 -> aRecipe[i] = ItemList.Field_Generator_EV;
- case 5 -> aRecipe[i] = ItemList.Field_Generator_IV;
- case 6 -> aRecipe[i] = ItemList.Field_Generator_LuV;
- case 7 -> aRecipe[i] = ItemList.Field_Generator_ZPM;
- case 8 -> aRecipe[i] = ItemList.Field_Generator_UV;
- case 9 -> aRecipe[i] = ItemList.Field_Generator_UHV;
- case 10 -> aRecipe[i] = ItemList.Field_Generator_UEV;
- case 11 -> aRecipe[i] = ItemList.Field_Generator_UIV;
- case 12 -> aRecipe[i] = ItemList.Field_Generator_UMV;
- case 13 -> aRecipe[i] = ItemList.Field_Generator_UXV;
- case 14 -> aRecipe[i] = ItemList.Field_Generator_MAX;
- default -> aRecipe[i] = ItemList.Field_Generator_MAX;
- }
- continue;
- }
-
- if (aRecipe[i] instanceof GT_MetaTileEntity_BasicMachine_GT_Recipe.X)
- throw new IllegalArgumentException("MISSING TIER MAPPING FOR: " + aRecipe[i] + " AT TIER " + mTier);
+ if (!(aRecipe[i] instanceof X)) continue;
+
+ // spotless:off
+ aRecipe[i] = switch ((X) aRecipe[i]) {
+ case CIRCUIT -> Tier.ELECTRIC[this.mTier].mManagingObject;
+ case BETTER_CIRCUIT -> Tier.ELECTRIC[this.mTier].mBetterManagingObject;
+ case HULL -> Tier.ELECTRIC[this.mTier].mHullObject;
+ case WIRE -> Tier.ELECTRIC[this.mTier].mConductingObject;
+ case WIRE4 -> Tier.ELECTRIC[this.mTier].mLargerConductingObject;
+ case STICK_DISTILLATION -> OrePrefixes.stick.get(Materials.Blaze);
+
+ case GLASS -> switch (this.mTier) {
+ case 0, 1, 2, 3 -> new ItemStack(Blocks.glass, 1, W);
+ case 4, 5, 6, 7, 8 -> BartWorks.isModLoaded() ? "blockGlass" + VN[aTier] : Ic2Items.reinforcedGlass;
+ default -> BartWorks.isModLoaded() ? "blockGlass" + VN[8] : Ic2Items.reinforcedGlass;
+ };
+
+ case PLATE -> switch (this.mTier) {
+ case 0, 1 -> OrePrefixes.plate.get(Materials.Steel);
+ case 2 -> OrePrefixes.plate.get(Materials.Aluminium);
+ case 3 -> OrePrefixes.plate.get(Materials.StainlessSteel);
+ case 4 -> OrePrefixes.plate.get(Materials.Titanium);
+ case 5 -> OrePrefixes.plate.get(Materials.TungstenSteel);
+ case 6 -> OrePrefixes.plate.get(Materials.HSSG);
+ case 7 -> OrePrefixes.plate.get(Materials.HSSE);
+ default -> OrePrefixes.plate.get(Materials.Neutronium);
+ };
+
+ case PIPE -> switch (this.mTier) {
+ case 0, 1 -> OrePrefixes.pipeMedium.get(Materials.Bronze);
+ case 2 -> OrePrefixes.pipeMedium.get(Materials.Steel);
+ case 3 -> OrePrefixes.pipeMedium.get(Materials.StainlessSteel);
+ case 4 -> OrePrefixes.pipeMedium.get(Materials.Titanium);
+ case 5 -> OrePrefixes.pipeMedium.get(Materials.TungstenSteel);
+ case 6 -> OrePrefixes.pipeSmall.get(Materials.Ultimate);
+ case 7 -> OrePrefixes.pipeMedium.get(Materials.Ultimate);
+ case 8 -> OrePrefixes.pipeLarge.get(Materials.Ultimate);
+ default -> OrePrefixes.pipeHuge.get(Materials.Ultimate);
+ };
+
+ case COIL_HEATING -> switch (this.mTier) {
+ case 0, 1 -> OrePrefixes.wireGt02.get(Materials.AnyCopper);
+ case 2 -> OrePrefixes.wireGt02.get(Materials.Cupronickel);
+ case 3 -> OrePrefixes.wireGt02.get(Materials.Kanthal);
+ case 4 -> OrePrefixes.wireGt02.get(Materials.Nichrome);
+ case 5 -> OrePrefixes.wireGt02.get(Materials.TPV);
+ case 6 -> OrePrefixes.wireGt02.get(Materials.HSSG);
+ case 7 -> OrePrefixes.wireGt02.get(Materials.Naquadah);
+ case 8 -> OrePrefixes.wireGt02.get(Materials.NaquadahAlloy);
+ case 9 -> OrePrefixes.wireGt04.get(Materials.NaquadahAlloy);
+ default -> OrePrefixes.wireGt08.get(Materials.NaquadahAlloy);
+ };
+
+ case COIL_HEATING_DOUBLE -> switch (this.mTier) {
+ case 0, 1 -> OrePrefixes.wireGt04.get(Materials.AnyCopper);
+ case 2 -> OrePrefixes.wireGt04.get(Materials.Cupronickel);
+ case 3 -> OrePrefixes.wireGt04.get(Materials.Kanthal);
+ case 4 -> OrePrefixes.wireGt04.get(Materials.Nichrome);
+ case 5 -> OrePrefixes.wireGt04.get(Materials.TPV);
+ case 6 -> OrePrefixes.wireGt04.get(Materials.HSSG);
+ case 7 -> OrePrefixes.wireGt04.get(Materials.Naquadah);
+ case 8 -> OrePrefixes.wireGt04.get(Materials.NaquadahAlloy);
+ case 9 -> OrePrefixes.wireGt08.get(Materials.NaquadahAlloy);
+ default -> OrePrefixes.wireGt16.get(Materials.NaquadahAlloy);
+ };
+
+ case STICK_MAGNETIC -> switch (this.mTier) {
+ case 0, 1 -> OrePrefixes.stick.get(Materials.IronMagnetic);
+ case 2, 3 -> OrePrefixes.stick.get(Materials.SteelMagnetic);
+ case 4, 5 -> OrePrefixes.stick.get(Materials.NeodymiumMagnetic);
+ case 6, 7, 8, 9 -> OrePrefixes.stick.get(Materials.SamariumMagnetic);
+ default -> OrePrefixes.stick.get(Materials.TengamAttuned);
+ };
+
+ case STICK_ELECTROMAGNETIC -> switch (this.mTier) {
+ case 0, 1 -> OrePrefixes.stick.get(Materials.AnyIron);
+ case 2, 3 -> OrePrefixes.stick.get(Materials.Steel);
+ case 4 -> OrePrefixes.stick.get(Materials.Neodymium);
+ default -> OrePrefixes.stick.get(Materials.VanadiumGallium);
+ };
+
+ case COIL_ELECTRIC -> switch (this.mTier) {
+ case 0 -> OrePrefixes.wireGt01.get(Materials.Lead);
+ case 1 -> OrePrefixes.wireGt02.get(Materials.Tin);
+ case 2 -> OrePrefixes.wireGt02.get(Materials.AnyCopper);
+ case 3 -> OrePrefixes.wireGt04.get(Materials.AnyCopper);
+ case 4 -> OrePrefixes.wireGt08.get(Materials.AnnealedCopper);
+ case 5 -> OrePrefixes.wireGt16.get(Materials.AnnealedCopper);
+ case 6 -> OrePrefixes.wireGt04.get(Materials.YttriumBariumCuprate);
+ case 7 -> OrePrefixes.wireGt08.get(Materials.Iridium);
+ default -> OrePrefixes.wireGt16.get(Materials.Osmium);
+ };
+
+ case ROBOT_ARM -> switch (this.mTier) {
+ case 0, 1 -> ItemList.Robot_Arm_LV;
+ case 2 -> ItemList.Robot_Arm_MV;
+ case 3 -> ItemList.Robot_Arm_HV;
+ case 4 -> ItemList.Robot_Arm_EV;
+ case 5 -> ItemList.Robot_Arm_IV;
+ case 6 -> ItemList.Robot_Arm_LuV;
+ case 7 -> ItemList.Robot_Arm_ZPM;
+ case 8 -> ItemList.Robot_Arm_UV;
+ case 9 -> ItemList.Robot_Arm_UHV;
+ case 10 -> ItemList.Robot_Arm_UEV;
+ case 11 -> ItemList.Robot_Arm_UIV;
+ case 12 -> ItemList.Robot_Arm_UMV;
+ case 13 -> ItemList.Robot_Arm_UXV;