diff options
author | boubou19 <miisterunknown@gmail.com> | 2023-04-21 20:29:38 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-21 20:29:38 +0200 |
commit | de864236f83dc31c53ca77a6939357a0959bca75 (patch) | |
tree | ef739fd9426e7c2525b1560386faaa5bb893e30d /src/main/java/gregtech | |
parent | 285a75535d07f2037967b1208a5840fb81719514 (diff) | |
download | GT5-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')
102 files changed, 3951 insertions, 3185 deletions
diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index cda731540b..7b88920d8a 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -178,6 +178,7 @@ public class GT_Mod implements IGT_Mod { } } + @SuppressWarnings("deprecation") public GT_Mod() { GT_Values.GT = this; GT_Values.DW = new GT_DummyWorld(); 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; + default -> ItemList.Robot_Arm_MAX; + }; + + case PUMP -> switch (this.mTier) { + case 0, 1 -> ItemList.Electric_Pump_LV; + case 2 -> ItemList.Electric_Pump_MV; + case 3 -> ItemList.Electric_Pump_HV; + case 4 -> ItemList.Electric_Pump_EV; + case 5 -> ItemList.Electric_Pump_IV; + case 6 -> ItemList.Electric_Pump_LuV; + case 7 -> ItemList.Electric_Pump_ZPM; + case 8 -> ItemList.Electric_Pump_UV; + case 9 -> ItemList.Electric_Pump_UHV; + case 10 -> ItemList.Electric_Pump_UEV; + case 11 -> ItemList.Electric_Pump_UIV; + case 12 -> ItemList.Electric_Pump_UMV; + case 13 -> ItemList.Electric_Pump_UXV; + default -> ItemList.Electric_Pump_MAX; + }; + + case MOTOR -> switch (this.mTier) { + case 0, 1 -> ItemList.Electric_Motor_LV; + case 2 -> ItemList.Electric_Motor_MV; + case 3 -> ItemList.Electric_Motor_HV; + case 4 -> ItemList.Electric_Motor_EV; + case 5 -> ItemList.Electric_Motor_IV; + case 6 -> ItemList.Electric_Motor_LuV; + case 7 -> ItemList.Electric_Motor_ZPM; + case 8 -> ItemList.Electric_Motor_UV; + case 9 -> ItemList.Electric_Motor_UHV; + case 10 -> ItemList.Electric_Motor_UEV; + case 11 -> ItemList.Electric_Motor_UIV; + case 12 -> ItemList.Electric_Motor_UMV; + case 13 -> ItemList.Electric_Motor_UXV; + default -> ItemList.Electric_Motor_MAX; + }; + + case PISTON -> switch (this.mTier) { + case 0, 1 -> ItemList.Electric_Piston_LV; + case 2 -> ItemList.Electric_Piston_MV; + case 3 -> ItemList.Electric_Piston_HV; + case 4 -> ItemList.Electric_Piston_EV; + case 5 -> ItemList.Electric_Piston_IV; + case 6 -> ItemList.Electric_Piston_LuV; + case 7 -> ItemList.Electric_Piston_ZPM; + case 8 -> ItemList.Electric_Piston_UV; + case 9 -> ItemList.Electric_Piston_UHV; + case 10 -> ItemList.Electric_Piston_UEV; + case 11 -> ItemList.Electric_Piston_UIV; + case 12 -> ItemList.Electric_Piston_UMV; + case 13 -> ItemList.Electric_Piston_UXV; + default -> ItemList.Electric_Piston_MAX; + }; + + case CONVEYOR -> switch (this.mTier) { + case 0, 1 -> ItemList.Conveyor_Module_LV; + case 2 -> ItemList.Conveyor_Module_MV; + case 3 -> ItemList.Conveyor_Module_HV; + case 4 -> ItemList.Conveyor_Module_EV; + case 5 -> ItemList.Conveyor_Module_IV; + case 6 -> ItemList.Conveyor_Module_LuV; + case 7 -> ItemList.Conveyor_Module_ZPM; + case 8 -> ItemList.Conveyor_Module_UV; + case 9 -> ItemList.Conveyor_Module_UHV; + case 10 -> ItemList.Conveyor_Module_UEV; + case 11 -> ItemList.Conveyor_Module_UIV; + case 12 -> ItemList.Conveyor_Module_UMV; + case 13 -> ItemList.Conveyor_Module_UXV; + default -> ItemList.Conveyor_Module_MAX; + }; + + case EMITTER -> switch (this.mTier) { + case 0, 1 -> ItemList.Emitter_LV; + case 2 -> ItemList.Emitter_MV; + case 3 -> ItemList.Emitter_HV; + case 4 -> ItemList.Emitter_EV; + case 5 -> ItemList.Emitter_IV; + case 6 -> ItemList.Emitter_LuV; + case 7 -> ItemList.Emitter_ZPM; + case 8 -> ItemList.Emitter_UV; + case 9 -> ItemList.Emitter_UHV; + case 10 -> ItemList.Emitter_UEV; + case 11 -> ItemList.Emitter_UIV; + case 12 -> ItemList.Emitter_UMV; + case 13 -> ItemList.Emitter_UXV; + default -> ItemList.Emitter_MAX; + }; + + case SENSOR -> switch (this.mTier) { + case 0, 1 -> ItemList.Sensor_LV; + case 2 -> ItemList.Sensor_MV; + case 3 -> ItemList.Sensor_HV; + case 4 -> ItemList.Sensor_EV; + case 5 -> ItemList.Sensor_IV; + case 6 -> ItemList.Sensor_LuV; + case 7 -> ItemList.Sensor_ZPM; + case 8 -> ItemList.Sensor_UV; + case 9 -> ItemList.Sensor_UHV; + case 10 -> ItemList.Sensor_UEV; + case 11 -> ItemList.Sensor_UIV; + case 12 -> ItemList.Sensor_UMV; + case 13 -> ItemList.Sensor_UXV; + default -> ItemList.Sensor_MAX; + }; + + case FIELD_GENERATOR -> switch (this.mTier) { + case 0, 1 -> ItemList.Field_Generator_LV; + case 2 -> ItemList.Field_Generator_MV; + case 3 -> ItemList.Field_Generator_HV; + case 4 -> ItemList.Field_Generator_EV; + case 5 -> ItemList.Field_Generator_IV; + case 6 -> ItemList.Field_Generator_LuV; + case 7 -> ItemList.Field_Generator_ZPM; + case 8 -> ItemList.Field_Generator_UV; + case 9 -> ItemList.Field_Generator_UHV; + case 10 -> ItemList.Field_Generator_UEV; + case 11 -> ItemList.Field_Generator_UIV; + case 12 -> ItemList.Field_Generator_UMV; + case 13 -> ItemList.Field_Generator_UXV; + default -> ItemList.Field_Generator_MAX; + }; + + case ROTOR -> switch (this.mTier) { + case 0, 1 -> OrePrefixes.rotor.get(Materials.Tin); + case 2 -> OrePrefixes.rotor.get(Materials.Bronze); + case 3 -> OrePrefixes.rotor.get(Materials.Steel); + case 4 -> OrePrefixes.rotor.get(Materials.StainlessSteel); + case 5 -> OrePrefixes.rotor.get(Materials.TungstenSteel); + case 6 -> OrePrefixes.rotor.get(Materials.Chrome); + case 7 -> OrePrefixes.rotor.get(Materials.Iridium); + default -> OrePrefixes.rotor.get(Materials.Osmium); + }; + + default -> throw new IllegalArgumentException("MISSING TIER MAPPING FOR: " + aRecipe[i] + " AT TIER " + this.mTier); + }; + // spotless:on } if (!GT_ModHandler.addCraftingRecipe( diff --git a/src/main/java/gregtech/api/util/GT_ModHandler.java b/src/main/java/gregtech/api/util/GT_ModHandler.java index 58cadd9d7d..8097f82dea 100644 --- a/src/main/java/gregtech/api/util/GT_ModHandler.java +++ b/src/main/java/gregtech/api/util/GT_ModHandler.java @@ -9,6 +9,7 @@ import static gregtech.api.enums.GT_Values.M; import static gregtech.api.enums.GT_Values.RA; import static gregtech.api.enums.GT_Values.V; import static gregtech.api.enums.GT_Values.W; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMaceratorRecipes; import java.util.ArrayList; import java.util.Arrays; @@ -597,28 +598,34 @@ public class GT_ModHandler { return true; } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1) { return addPulverisationRecipe(aInput, aOutput1, null, 0, false); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, 100, false); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, aChance, false); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, boolean aOverwrite) { return addPulverisationRecipe(aInput, aOutput1, null, 0, aOverwrite); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, boolean aOverwrite) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, 100, aOverwrite); } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance, boolean aOverwrite) { return addPulverisationRecipe(aInput, aOutput1, aOutput2, aChance, null, 0, aOverwrite); @@ -627,6 +634,7 @@ public class GT_ModHandler { /** * Adds Several Pulverizer-Type Recipes. */ + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aChance2, ItemStack aOutput3, int aChance3, boolean aOverwrite) { aOutput1 = GT_OreDictUnificator.get(true, aOutput1); @@ -644,6 +652,7 @@ public class GT_ModHandler { return true; } + @Deprecated public static boolean addPulverisationRecipe(ItemStack aInputItem, ItemStack[] aOutputArray, int[] aChanceArray, int aEUt, int aRecipeDurationInTicks) { @@ -830,6 +839,7 @@ public class GT_ModHandler { /** * IC2-ThermalCentrifuge Recipe. Overloads old Recipes automatically */ + @Deprecated public static boolean addThermalCentrifugeRecipe(ItemStack aInput, int[] aChances, int aHeat, Object... aOutput) { if (aInput == null || aOutput == null || aOutput.length <= 0 || aOutput[0] == null) return false; if (!GregTech_API.sRecipeFile.get(ConfigCategories.Machines.thermalcentrifuge, aInput, true)) return false; @@ -844,6 +854,7 @@ public class GT_ModHandler { return true; } + @Deprecated public static boolean addThermalCentrifugeRecipe(ItemStack aInput, int aHeat, Object... aOutput) { if (aInput == null || aOutput == null || aOutput.length <= 0 || aOutput[0] == null) return false; if (!GregTech_API.sRecipeFile.get(ConfigCategories.Machines.thermalcentrifuge, aInput, true)) return false; @@ -909,6 +920,7 @@ public class GT_ModHandler { /** * IC2-Compressor Recipe. Overloads old Recipes automatically */ + @Deprecated public static boolean addCompressionRecipe(ItemStack aInput, ItemStack aOutput) { return addCompressionRecipe(aInput, aOutput, 300, 2); } @@ -916,6 +928,7 @@ public class GT_ModHandler { /** * IC2-Compressor Recipe. Overloads old Recipes automatically */ + @Deprecated public static boolean addCompressionRecipe(ItemStack aInput, ItemStack aOutput, int duration, int EUPerTick) { aOutput = GT_OreDictUnificator.get(true, aOutput); if (aInput == null || aOutput == null || GT_Utility.areStacksEqual(aInput, aOutput, true)) return false; diff --git a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java index bb061eb2dc..bdd09f0a34 100644 --- a/src/main/java/gregtech/api/util/GT_RecipeBuilder.java +++ b/src/main/java/gregtech/api/util/GT_RecipeBuilder.java @@ -36,15 +36,13 @@ public class GT_RecipeBuilder { public static final int BUCKETS = 1000; static { - boolean tmp; if (System.getProperties() .containsKey("gt.recipebuilder.debug")) { - tmp = Boolean.getBoolean("gt.recipebuilder.debug"); + DEBUG_MODE = Boolean.getBoolean("gt.recipebuilder.debug"); } else { // turn on debug by default in dev mode - tmp = (Boolean) Launch.blackboard.get("fml.deobfuscatedEnvironment"); + DEBUG_MODE = (Boolean) Launch.blackboard.get("fml.deobfuscatedEnvironment"); } - DEBUG_MODE = tmp; PANIC_MODE = DEBUG_MODE && Boolean.getBoolean("gt.recipebuilder.panic"); } @@ -273,6 +271,11 @@ public class GT_RecipeBuilder { return this; } + public GT_RecipeBuilder duration(long duration) { + this.duration = (int) duration; + return this; + } + public GT_RecipeBuilder eut(int eut) { this.eut = eut; return this; diff --git a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java index a9e8f5cc09..2a5a251503 100644 --- a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java +++ b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java @@ -3,6 +3,10 @@ package gregtech.api.util; import static gregtech.api.enums.GT_Values.*; import static gregtech.api.enums.Materials.*; import static gregtech.api.enums.Materials.Void; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalArcFurnace; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import java.lang.reflect.Field; @@ -302,17 +306,24 @@ public class GT_RecipeRegistrator { boolean tHide = !tIron && GT_Mod.gregtechproxy.mHideRecyclingRecipes; if (aData.mPrefix == OrePrefixes.toolHeadDrill) { - RA.addArcFurnaceRecipe( - aStack, - new ItemStack[] { GT_OreDictUnificator.getIngotOrDust(aData.mMaterial) }, - null, - 90, - (int) Math.max(16, tAmount / M), - tHide); + GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder(); + + recipeBuilder.itemInputs(aStack) + .itemOutputs(GT_OreDictUnificator.getIngotOrDust(aData.mMaterial)) + .fluidInputs(Materials.Oxygen.getGas(90)) + .noFluidOutputs() + .duration(4 * SECONDS + 10 * TICKS) + .eut(Math.max(16, tAmount / M)); + if (tHide) { + recipeBuilder.hidden(); + } + recipeBuilder.addTo(UniversalArcFurnace); } else { - RA.addArcFurnaceRecipe( - aStack, - new ItemStack[] { GT_OreDictUnificator.getIngotOrDust(aData.mMaterial), + GT_RecipeBuilder recipeBuilder = GT_Values.RA.stdBuilder(); + + recipeBuilder.itemInputs(aStack) + .itemOutputs( + GT_OreDictUnificator.getIngotOrDust(aData.mMaterial), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(0)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(1)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(2)), @@ -320,11 +331,15 @@ public class GT_RecipeRegistrator { GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(5)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(6)), GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(7)), - GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(8)) }, - null, - (int) Math.max(16, tAmount / M), - 90, - tHide); + GT_OreDictUnificator.getIngotOrDust(aData.getByProduct(8))) + .fluidInputs(Materials.Oxygen.getGas(90)) + .noFluidOutputs() + .duration(8 * SECONDS + 10 * TICKS) + .eut((int) Math.max(16, tAmount / M)); + if (tHide) { + recipeBuilder.hidden(); + } + recipeBuilder.addTo(UniversalArcFurnace); } } @@ -378,15 +393,26 @@ public class GT_RecipeRegistrator { tHide); } - if (aAllowHammer) for (MaterialStack tMaterial : aData.getAllMaterialStacks()) + if (!aAllowHammer) { + return; + } + + for (MaterialStack tMaterial : aData.getAllMaterialStacks()) { if (tMaterial.mMaterial.contains(SubTag.CRYSTAL) && !tMaterial.mMaterial.contains(SubTag.METAL) && tMaterial.mMaterial != Materials.Glass) { - if (RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1, aStack), - GT_OreDictUnificator.getDust(aData.mMaterial), - 200, - 30)) break; - } + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1, aStack)) + .itemOutputs(GT_OreDictUnificator.getDust(aData.mMaterial)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(sHammerRecipes); + + break; + } + } + } /** diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java index 8d9d0814dc..91d5a90fe6 100644 --- a/src/main/java/gregtech/api/util/GT_Utility.java +++ b/src/main/java/gregtech/api/util/GT_Utility.java @@ -20,7 +20,6 @@ import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.util.*; -import java.util.Map.Entry; import java.util.function.Function; import java.util.function.IntFunction; import java.util.function.Supplier; @@ -3005,7 +3004,7 @@ public class GT_Utility { public static <X, Y extends Comparable<Y>> LinkedHashMap<X, Y> sortMapByValuesAcending(Map<X, Y> map) { return map.entrySet() .stream() - .sorted(Entry.comparingByValue()) + .sorted(Map.Entry.comparingByValue()) .collect(CollectorUtils.entriesToMap(LinkedHashMap::new)); } diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index f25240f8bc..de36c1f1c8 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -8,6 +8,8 @@ import static gregtech.api.enums.FluidState.PLASMA; import static gregtech.api.enums.GT_Values.W; import static gregtech.api.enums.GT_Values.debugEntityCramming; import static gregtech.api.enums.Mods.*; +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; import java.io.File; @@ -105,6 +107,7 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SoundResource; import gregtech.api.enums.SubTag; import gregtech.api.enums.TC_Aspects.TC_AspectStack; +import gregtech.api.enums.TierEU; import gregtech.api.enums.ToolDictNames; import gregtech.api.fluid.GT_FluidFactory; import gregtech.api.interfaces.IBlockOnWalkOver; @@ -582,10 +585,12 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG public boolean mLowGravProcessing = false; public boolean mAprilFool = false; public boolean mCropNeedBlock = true; + @Deprecated public boolean mDisableOldChemicalRecipes = false; public boolean mAMHInteraction = true; public boolean mForceFreeFace = true; public boolean mBrickedBlastFurnace = true; + @Deprecated public boolean mEasierIVPlusCables = false; public boolean mMixedOreOnlyYieldsTwoThirdsOfPureOre = false; public boolean enableBlackGraniteOres = true; @@ -2529,22 +2534,24 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG new FluidStack(crackedFluids[i], 1000), 20 + 20 * i, 240); - GT_Values.RA.addChemicalRecipe( - Materials.Hydrogen.getCells(hydrogenAmount), - GT_Utility.getIntegratedCircuit(i + 1), - new FluidStack(uncrackedFluid, 1000), - new FluidStack(crackedFluids[i], 800), - Materials.Empty.getCells(hydrogenAmount), - 160 + 80 * i, - 30); - GT_Values.RA.addChemicalRecipe( - aMaterial.getCells(1), - GT_Utility.getIntegratedCircuit(i + 1), - Materials.Hydrogen.getGas(hydrogenAmount * 1000), - new FluidStack(crackedFluids[i], 800), - Materials.Empty.getCells(1), - 160 + 80 * i, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Hydrogen.getCells(hydrogenAmount), GT_Utility.getIntegratedCircuit(i + 1)) + .itemOutputs(Materials.Empty.getCells(hydrogenAmount)) + .fluidInputs(new FluidStack(uncrackedFluid, 1000)) + .fluidOutputs(new FluidStack(crackedFluids[i], 800)) + .duration((8 + 4 * i) * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(aMaterial.getCells(1), GT_Utility.getIntegratedCircuit(i + 1)) + .itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(Materials.Hydrogen.getGas(hydrogenAmount * 1000)) + .fluidOutputs(new FluidStack(crackedFluids[i], 800)) + .duration((8 + 4 * i) * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); } aMaterial.setHydroCrackedFluids(crackedFluids); } @@ -2579,22 +2586,24 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG new FluidStack(crackedFluids[i], 1200), 20 + 20 * i, 240); - GT_Values.RA.addChemicalRecipe( - GT_ModHandler.getIC2Item("steamCell", 1L), - GT_Utility.getIntegratedCircuit(i + 1), - new FluidStack(uncrackedFluid, 1000), - new FluidStack(crackedFluids[i], 800), - Materials.Empty.getCells(1), - 160 + 80 * i, - 30); - GT_Values.RA.addChemicalRecipe( - aMaterial.getCells(1), - GT_Utility.getIntegratedCircuit(i + 1), - GT_ModHandler.getSteam(1000), - new FluidStack(crackedFluids[i], 800), - Materials.Empty.getCells(1), - 160 + 80 * i, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_ModHandler.getIC2Item("steamCell", 1L), GT_Utility.getIntegratedCircuit(i + 1)) + .itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(new FluidStack(uncrackedFluid, 1000)) + .fluidOutputs(new FluidStack(crackedFluids[i], 800)) + .duration((8 + 4 * i) * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); + + GT_Values.RA.stdBuilder() + .itemInputs(aMaterial.getCells(1), GT_Utility.getIntegratedCircuit(i + 1)) + .itemOutputs(Materials.Empty.getCells(1)) + .fluidInputs(GT_ModHandler.getSteam(1000)) + .fluidOutputs(new FluidStack(crackedFluids[i], 800)) + .duration((8 + 4 * i) * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(UniversalChemical); } aMaterial.setSteamCrackedFluids(crackedFluids); } diff --git a/src/main/java/gregtech/common/GT_RecipeAdder.java b/src/main/java/gregtech/common/GT_RecipeAdder.java index 65ff60e9c3..c49408bb07 100644 --- a/src/main/java/gregtech/common/GT_RecipeAdder.java +++ b/src/main/java/gregtech/common/GT_RecipeAdder.java @@ -45,6 +45,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return false; } + @Deprecated @Override // Really? public boolean addFusionReactorRecipe(FluidStack aInput1, FluidStack aInput2, FluidStack aOutput1, int aDuration, int aEUt, int aStartEU) { @@ -68,6 +69,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFusionReactorRecipe(FluidStack[] FluidInputArray, FluidStack[] FluidOutputArray, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion) { @@ -98,6 +100,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addCentrifugeRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration) { @@ -117,6 +120,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { 5); } + @Deprecated @Override public boolean addCentrifugeRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration, int aEUt) { @@ -136,6 +140,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { aEUt); } + @Deprecated @Override public boolean addCentrifugeRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, @@ -157,6 +162,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { false); } + @Deprecated @Override public boolean addCentrifugeRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, @@ -230,6 +236,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addCompressorRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { if ((aInput1 == null) || (aOutput1 == null)) { @@ -251,6 +258,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addElectrolyzerRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration, int aEUt) { @@ -270,6 +278,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { aEUt); } + @Deprecated @Override public boolean addElectrolyzerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, @@ -333,28 +342,33 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int aDuration) { return addChemicalRecipe(aInput1, aInput2, null, null, aOutput, aDuration); } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int aDuration, int aEUt) { return addChemicalRecipe(aInput1, aInput2, null, null, aOutput, aDuration, aEUt); } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration) { return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, 30); } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration) { return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aOutput2, aDuration, 30); } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUTick) { @@ -369,6 +383,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { aEUTick); } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { @@ -384,6 +399,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { false); } + @Deprecated @Override public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick, @@ -439,6 +455,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addMultiblockChemicalRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUtick) { @@ -453,6 +470,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addChemicalRecipeForBasicMachineOnly(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { @@ -488,6 +506,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public void addDefaultPolymerizationRecipes(Fluid aBasicMaterial, ItemStack aBasicMaterialCell, Fluid aPolymer) { // Oxygen/Titaniumtetrafluoride -> +50% Output each @@ -1119,6 +1138,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addBenderRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { if ((aInput1 == null) || (aOutput1 == null)) { @@ -1131,6 +1151,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addBenderRecipe(ItemStack aInput1, ItemStack aCircuit, ItemStack aOutput1, int aDuration, int aEUt) { if ((aInput1 == null) || (aOutput1 == null)) { @@ -1469,12 +1490,14 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addChemicalBathRecipe(ItemStack aInput, FluidStack aBathingFluid, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, FluidStack aFluidOutput, int[] aChances, int aDuration, int aEUt) { return false; } + @Deprecated @Override public boolean addForgeHammerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt) { if ((aInput1 == null) || (aOutput1 == null)) { @@ -1496,6 +1519,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addForgeHammerRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] ItemOutputArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt) { @@ -1557,6 +1581,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addThermalCentrifugeRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int aDuration, int aEUt) { @@ -1579,6 +1604,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addThermalCentrifugeRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { @@ -1880,6 +1906,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFluidExtractionRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt) { @@ -1909,6 +1936,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFluidCannerRecipe(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput) { @@ -1936,6 +1964,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFluidCannerRecipe(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt) { @@ -1961,6 +1990,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addChemicalBathRecipe(ItemStack aInput, FluidStack aBathingFluid, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { @@ -1984,6 +2014,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addChemicalBathRecipe(ItemStack aInput, FluidStack aBathingFluid, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt) { @@ -2286,6 +2317,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addMixerRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] ItemOutputArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt) { @@ -2465,6 +2497,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addLaserEngraverRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int aDuration, int aEUt, boolean aCleanroom) { @@ -2482,6 +2515,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFormingPressRecipe(ItemStack aItemToImprint, ItemStack aForm, ItemStack aImprintedItem, int aDuration, int aEUt) { @@ -2504,6 +2538,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFormingPressRecipe(ItemStack[] ItemInputArray, ItemStack[] OutputItemArray, int aDuration, int aEUt) { @@ -2515,6 +2550,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFluidHeaterRecipe(ItemStack aItem, FluidStack aOutput, int aDuration, int aEUt) { if ((aItem == null) || (aOutput == null)) { @@ -2540,6 +2576,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { @@ -2566,6 +2603,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addSifterRecipe(ItemStack aItemToSift, ItemStack[] aSiftedItems, int[] aChances, int aDuration, int aEUt) { @@ -2594,6 +2632,7 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return false; } + @Deprecated @Override public boolean addSifterRecipe(ItemStack[] ItemInputArray, FluidStack[] FluidInputArray, ItemStack[] OutputItemArray, FluidStack[] FluidOutputArray, int[] aChances, int aDuration, int aEUt, @@ -2612,12 +2651,14 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Deprecated @Override public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { return addArcFurnaceRecipe(aInput, aOutputs, aChances, aDuration, aEUt, false); } + @Deprecated @Override public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt, boolean hidden) { @@ -2752,12 +2793,14 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return false; } + @Deprecated @Override public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt) { return addPulveriserRecipe(aInput, aOutputs, aChances, aDuration, aEUt, false); } + @Deprecated @Override public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt, boolean hidden) { diff --git a/src/main/java/gregtech/common/GT_ThaumcraftCompat.java b/src/main/java/gregtech/common/GT_ThaumcraftCompat.java index 268f23bfe7..833e536757 100644 --- a/src/main/java/gregtech/common/GT_ThaumcraftCompat.java +++ b/src/main/java/gregtech/common/GT_ThaumcraftCompat.java @@ -84,31 +84,31 @@ public class GT_ThaumcraftCompat implements IThaumcraftCompat { TC_Aspects.STRONTIO.mAspect = new Aspect( "strontio", - 15647411, + 0xEEC2B3, new Aspect[] { Aspect.MIND, Aspect.ENTROPY }, new ResourceLocation("gregtech:textures/aspects/" + TC_Aspects.STRONTIO.name() + ".png"), 1); TC_Aspects.NEBRISUM.mAspect = new Aspect( "nebrisum", - 15658622, + 0xEEEE7E, new Aspect[] { Aspect.MINE, Aspect.GREED }, new ResourceLocation("gregtech:textures/aspects/" + TC_Aspects.NEBRISUM.name() + ".png"), 1); TC_Aspects.ELECTRUM.mAspect = new Aspect( "electrum", - 12644078, + 0xC0EEEE, new Aspect[] { Aspect.ENERGY, Aspect.MECHANISM }, new ResourceLocation("gregtech:textures/aspects/" + TC_Aspects.ELECTRUM.name() + ".png"), 1); TC_Aspects.MAGNETO.mAspect = new Aspect( "magneto", - 12632256, + 0xC0C0C0, new Aspect[] { Aspect.METAL, Aspect.TRAVEL }, new ResourceLocation("gregtech:textures/aspects/" + TC_Aspects.MAGNETO.name() + ".png"), 1); TC_Aspects.RADIO.mAspect = new Aspect( "radio", - 12648384, + 0xC0FFC0, new Aspect[] { Aspect.LIGHT, Aspect.ENERGY }, new ResourceLocation("gregtech:textures/aspects/" + TC_Aspects.RADIO.name() + ".png"), 1); diff --git a/src/main/java/gregtech/common/bees/GT_AlleleHelper.java b/src/main/java/gregtech/common/bees/GT_AlleleHelper.java index c9e37f7824..4609f11aa0 100644 --- a/src/main/java/gregtech/common/bees/GT_AlleleHelper.java +++ b/src/main/java/gregtech/common/bees/GT_AlleleHelper.java @@ -162,7 +162,8 @@ public class GT_AlleleHelper extends AlleleHelper { } @Override - public <T extends Enum<T> & IChromosomeType> void set(IAllele[] alleles, T chromosomeType, IAlleleValue value) { + public <T extends Enum<T> & IChromosomeType> void set(IAllele[] alleles, T chromosomeType, + @SuppressWarnings("rawtypes") IAlleleValue value) { set(alleles, chromosomeType, get(value)); } diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Machines.java b/src/main/java/gregtech/common/blocks/GT_Block_Machines.java index e0215e77eb..c9a93ecaec 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Machines.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Machines.java @@ -228,7 +228,6 @@ public class GT_Block_Machines extends GT_Generic_Block implements IDebugableBlo return tTileEntity != null && tTileEntity.receiveClientEvent(aData1, aData2); } - @SuppressWarnings("unchecked") // Old API uses raw List type @Override public void addCollisionBoxesToList(World aWorld, int aX, int aY, int aZ, AxisAlignedBB inputAABB, List<AxisAlignedBB> outputAABB, Entity collider) { @@ -605,7 +604,6 @@ public class GT_Block_Machines extends GT_Generic_Block implements IDebugableBlo @SideOnly(Side.CLIENT) @Override - @SuppressWarnings("unchecked") // Old API uses raw List type public void getSubBlocks(Item item, CreativeTabs aCreativeTab, List<ItemStack> outputSubBlocks) { for (int i = 1; i < GregTech_API.METATILEENTITIES.length; i++) { if (GregTech_API.METATILEENTITIES[i] != null) { diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java b/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java index 10fb15a77c..2a37aefa64 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Ores_Abstract.java @@ -308,7 +308,6 @@ public abstract class GT_Block_Ores_Abstract extends GT_Generic_Block implements public abstract ITexture[] getTextureSet(); // Must have 16 entries. - @SuppressWarnings({ "unchecked" }) @Override @SideOnly(Side.CLIENT) public void getSubBlocks(Item aItem, CreativeTabs aTab, List<ItemStack> aList) { diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB1.java b/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB1.java deleted file mode 100644 index cacf903c81..0000000000 --- a/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB1.java +++ /dev/null @@ -1,72 +0,0 @@ -package gregtech.common.blocks; - -import static gregtech.api.enums.Mods.UndergroundBiomes; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.init.Blocks; -import net.minecraft.util.IIcon; - -import cpw.mods.fml.common.registry.GameRegistry; -import gregtech.api.GregTech_API; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.interfaces.ITexture; -import gregtech.api.render.TextureFactory; - -public class GT_Block_Ores_UB1 extends GT_Block_Ores_Abstract { - - Block aUBBlock = GameRegistry.findBlock(UndergroundBiomes.ID, "igneousStone"); - - public GT_Block_Ores_UB1() { - super("gt.blockores.ub1", 8, true, Material.rock); - if (aUBBlock == null) aUBBlock = Blocks.stone; - } - - @Override - public String getUnlocalizedName() { - return "gt.blockores.ub1"; - } - - @Override - public OrePrefixes[] getProcessingPrefix() { // Must have 8 entries. - return new OrePrefixes[] { OrePrefixes.oreRedgranite, OrePrefixes.oreBlackgranite, OrePrefixes.ore, - OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.oreBasalt, OrePrefixes.ore, OrePrefixes.ore }; - } - - @Override - public IIcon getIcon(int side, int meta) { - return aUBBlock.getIcon(side, (meta / 1000) % 8); - } - - @Override - public int getBaseBlockHarvestLevel(int aMeta) { - return aUBBlock.getHarvestLevel(aMeta); - } - - @Override - public Block getDroppedBlock() { - return GregTech_API.sBlockOresUb1; - } - - @Override - public Materials[] getDroppedDusts() { // Must have 8 entries; can be null. - return new Materials[] { Materials.Stone, Materials.Stone, Materials.Stone, Materials.Stone, Materials.Stone, - Materials.Stone, Materials.Stone, Materials.Stone }; - } - - @Override - public boolean[] getEnabledMetas() { - return new boolean[] { true, true, true, true, true, true, true, true }; - } - - @Override - public ITexture[] getTextureSet() { // Must have 16 entries. - return new ITexture[] { TextureFactory.of(aUBBlock, 0), TextureFactory.of(aUBBlock, 1), - TextureFactory.of(aUBBlock, 2), TextureFactory.of(aUBBlock, 3), TextureFactory.of(aUBBlock, 4), - TextureFactory.of(aUBBlock, 5), TextureFactory.of(aUBBlock, 6), TextureFactory.of(aUBBlock, 7), - TextureFactory.of(aUBBlock, 0), TextureFactory.of(aUBBlock, 1), TextureFactory.of(aUBBlock, 2), - TextureFactory.of(aUBBlock, 3), TextureFactory.of(aUBBlock, 4), TextureFactory.of(aUBBlock, 5), - TextureFactory.of(aUBBlock, 6), TextureFactory.of(aUBBlock, 7) }; - } -} diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB2.java b/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB2.java deleted file mode 100644 index db8dc4347c..0000000000 --- a/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB2.java +++ /dev/null @@ -1,73 +0,0 @@ -package gregtech.common.blocks; - -import static gregtech.api.enums.Mods.UndergroundBiomes; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.init.Blocks; -import net.minecraft.util.IIcon; - -import cpw.mods.fml.common.registry.GameRegistry; -import gregtech.api.GregTech_API; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.interfaces.ITexture; -import gregtech.api.render.TextureFactory; - -public class GT_Block_Ores_UB2 extends GT_Block_Ores_Abstract { - - Block aUBBlock = GameRegistry.findBlock(UndergroundBiomes.ID, "metamorphicStone"); - - public GT_Block_Ores_UB2() { - super("gt.blockores.ub2", 8, true, Material.rock); - if (aUBBlock == null) aUBBlock = Blocks.stone; - } - - @Override - public String getUnlocalizedName() { - return "gt.blockores.ub2"; - } - - @Override - public OrePrefixes[] getProcessingPrefix() { // Must have 8 entries; an entry can be null to disable automatic - // recipes. - return new OrePrefixes[] { OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.oreMarble, OrePrefixes.ore, - OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.ore }; - } - - @Override - public IIcon getIcon(int side, int meta) { - return aUBBlock.getIcon(side, (meta / 1000) % 8); - } - - @Override - public int getBaseBlockHarvestLevel(int aMeta) { - return aUBBlock.getHarvestLevel(aMeta); - } - - @Override - public Block getDroppedBlock() { - return GregTech_API.sBlockOresUb2; - } - - @Override - public Materials[] getDroppedDusts() { // Must have 8 entries; can be null. - return new Materials[] { Materials.Stone, Materials.Stone, Materials.Stone, Materials.Stone, Materials.Stone, - Materials.Stone, Materials.Stone, Materials.Stone }; - } - - @Override - public boolean[] getEnabledMetas() { - return new boolean[] { true, true, true, true, true, true, true, true }; - } - - @Override - public ITexture[] getTextureSet() { // Must have 16 entries. - return new ITexture[] { TextureFactory.of(aUBBlock, 0), TextureFactory.of(aUBBlock, 1), - TextureFactory.of(aUBBlock, 2), TextureFactory.of(aUBBlock, 3), TextureFactory.of(aUBBlock, 4), - TextureFactory.of(aUBBlock, 5), TextureFactory.of(aUBBlock, 6), TextureFactory.of(aUBBlock, 7), - TextureFactory.of(aUBBlock, 0), TextureFactory.of(aUBBlock, 1), TextureFactory.of(aUBBlock, 2), - TextureFactory.of(aUBBlock, 3), TextureFactory.of(aUBBlock, 4), TextureFactory.of(aUBBlock, 5), - TextureFactory.of(aUBBlock, 6), TextureFactory.of(aUBBlock, 7) }; - } -} diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB3.java b/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB3.java deleted file mode 100644 index 1c8f433adf..0000000000 --- a/src/main/java/gregtech/common/blocks/GT_Block_Ores_UB3.java +++ /dev/null @@ -1,73 +0,0 @@ -package gregtech.common.blocks; - -import static gregtech.api.enums.Mods.UndergroundBiomes; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.init.Blocks; -import net.minecraft.util.IIcon; - -import cpw.mods.fml.common.registry.GameRegistry; -import gregtech.api.GregTech_API; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.interfaces.ITexture; -import gregtech.api.render.TextureFactory; - -public class GT_Block_Ores_UB3 extends GT_Block_Ores_Abstract { - - Block aUBBlock = GameRegistry.findBlock(UndergroundBiomes.ID, "sedimentaryStone"); - - public GT_Block_Ores_UB3() { - super("gt.blockores.ub3", 8, true, Material.rock); - if (aUBBlock == null) aUBBlock = Blocks.stone; - } - - @Override - public String getUnlocalizedName() { - return "gt.blockores.ub3"; - } - - @Override - public OrePrefixes[] getProcessingPrefix() { // Must have 8 entries; an entry can be null to disable automatic - // recipes. - return new OrePrefixes[] { OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.ore, - OrePrefixes.ore, OrePrefixes.ore, OrePrefixes.ore }; - } - - @Override - public IIcon getIcon(int side, int meta) { - return aUBBlock.getIcon(side, (meta / 1000) % 8); - } - - @Override - public int getBaseBlockHarvestLevel(int aMeta) { - return aUBBlock.getHarvestLevel(aMeta); - } - - @Override - public Block getDroppedBlock() { - return GregTech_API.sBlockOresUb3; - } - - @Override - public Materials[] getDroppedDusts() { // Must have 8 entries; can be null. - return new Materials[] { Materials.Stone, Materials.Stone, Materials.Stone, Materials.Stone, Materials.Stone, - Materials.Stone, Materials.Stone, Materials.Stone }; - } - - @Override - public boolean[] getEnabledMetas() { - return new boolean[] { true, true, true, true, true, true, true, true }; - } - - @Override - public ITexture[] getTextureSet() { // Must have 16 entries. - return new ITexture[] { TextureFactory.of(aUBBlock, 0), TextureFactory.of(aUBBlock, 1), - TextureFactory.of(aUBBlock, 2), TextureFactory.of(aUBBlock, 3), TextureFactory.of(aUBBlock, 4), - TextureFactory.of(aUBBlock, 5), TextureFactory.of(aUBBlock, 6), TextureFactory.of(aUBBlock, 7), - TextureFactory.of(aUBBlock, 0), TextureFactory.of(aUBBlock, 1), TextureFactory.of(aUBBlock, 2), - TextureFactory.of(aUBBlock, 3), TextureFactory.of(aUBBlock, 4), TextureFactory.of(aUBBlock, 5), - TextureFactory.of(aUBBlock, 6), TextureFactory.of(aUBBlock, 7) }; - } -} diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java b/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java index 23e55839bf..18f17fb336 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java @@ -330,6 +330,7 @@ public class GT_Block_Reinforced extends GT_Generic_Block { } } + @SuppressWarnings("deprecation") @Override public boolean removedByPlayer(World world, EntityPlayer player, int x, int y, int z) { if (!world.isRemote && world.getBlockMetadata(x, y, z) == 5) { 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 31b81eb5ff..45c0e38c30 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,5 +1,10 @@ package gregtech.common.blocks; +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.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import java.util.List; import net.minecraft.block.material.Material; @@ -31,6 +36,15 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe OrePrefixes.crafting.add(this); setStepSound(soundTypeStone); setCreativeTab(GregTech_API.TAB_GREGTECH_MATERIALS); + + this.registerSmeltingRecipes(); + this.registerAssemblerRecipes(); + this.registerCraftingRecipes(); + this.registerForgeHammerRecipes(); + + } + + private void registerSmeltingRecipes() { GT_ModHandler.addSmeltingRecipe(new ItemStack(this, 1, 0), new ItemStack(this, 1, 7)); GT_ModHandler.addSmeltingRecipe(new ItemStack(this, 1, 1), new ItemStack(this, 1, 0)); GT_ModHandler.addSmeltingRecipe(new ItemStack(this, 1, 2), new ItemStack(this, 1, 0)); @@ -47,6 +61,10 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe GT_ModHandler.addSmeltingRecipe(new ItemStack(this, 1, 13), new ItemStack(this, 1, 8)); GT_ModHandler.addSmeltingRecipe(new ItemStack(this, 1, 14), new ItemStack(this, 1, 8)); GT_ModHandler.addSmeltingRecipe(new ItemStack(this, 1, 15), new ItemStack(this, 1, 8)); + + } + + private void registerAssemblerRecipes() { GT_Values.RA.addAssemblerRecipe( new ItemStack(this, 1, 0), ItemList.Circuit_Integrated.getWithDamage(0L, 4L), @@ -59,6 +77,9 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe new ItemStack(this, 1, 11), 50, 4); + } + + private void registerCraftingRecipes() { GT_ModHandler.addCraftingRecipe( new ItemStack(this, 1, 6), GT_ModHandler.RecipeBits.NOT_REMOVABLE, @@ -83,10 +104,6 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe new ItemStack(this, 1, 9), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[] { "h", "X", 'X', new ItemStack(this, 1, 8) }); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(this, 1, 3), new ItemStack(this, 1, 4), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(this, 1, 11), new ItemStack(this, 1, 12), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(this, 1, 0), new ItemStack(this, 1, 1), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(this, 1, 8), new ItemStack(this, 1, 9), 16, 10); GT_ModHandler.addCraftingRecipe( new ItemStack(this, 4, 3), GT_ModHandler.RecipeBits.NOT_REMOVABLE, @@ -105,22 +122,67 @@ public class GT_Block_Stones_Abstract extends GT_Generic_Block implements IOreRe new Object[] { "XX", "XX", 'X', new ItemStack(this, 4, 15) }); } + private void registerForgeHammerRecipes() { + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(this, 1, 3)) + .itemOutputs(new ItemStack(this, 1, 4)) + .noFluidInputs() + .noFluidOutputs() + .duration(16 * TICKS) + .eut(10) + .addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(this, 1, 11)) + .itemOutputs(new ItemStack(this, 1, 12)) + .noFluidInputs() + .noFluidOutputs() + .duration(16 * TICKS) + .eut(10) + .addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(this, 1, 0)) + .itemOutputs(new ItemStack(this, 1, 1)) + .noFluidInputs() + .noFluidOutputs() + .duration(16 * TICKS) + .eut(10) + .addTo(sHammerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(this, 1, 8)) + .itemOutputs(new ItemStack(this, 1, 9)) + .noFluidInputs() + .noFluidOutputs() + .duration(16 * TICKS) + .eut(10) + .addTo(sHammerRecipes); + } + @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { if (aOreDictName.equals(OreDictNames.craftingLensWhite.toString())) { - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack(this, 1, 7), - GT_Utility.copyAmount(0L, aStack), - new ItemStack(this, 1, 6), - 50, - 16); - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack(this, 1, 15), - GT_Utility.copyAmount(0L, aStack), - new ItemStack(this, 1, 14), - 50, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(this, 1, 7), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(new ItemStack(this, 1, 6)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(this, 1, 15), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(new ItemStack(this, 1, 14)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(sLaserEngraverRecipes); + } } diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java b/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java index f8cda499f1..ae40636eaf 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java @@ -24,7 +24,6 @@ public class GT_Item_Casings5 extends GT_Item_Casings_Abstract { @Override @SideOnly(Side.CLIENT) - @SuppressWarnings("unchecked") public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List<String> aList, boolean aF3_H) { super.addInformation(aStack, aPlayer, aList, aF3_H); HeatingCoilLevel coilLevel = GT_Block_Casings5.getCoilHeatFromDamage(aStack.getItemDamage()); diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java index 8cd4684664..2e275bc7b3 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java @@ -56,7 +56,6 @@ public class GT_Item_Machines extends ItemBlock implements IFluidContainerItem { } @Override - @SuppressWarnings("unchecked") public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List<String> aList, boolean aF3_H) { try { final int tDamage = getDamage(aStack); diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java index d7600e0927..f2c2a65f3a 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java @@ -10,7 +10,6 @@ import com.gtnewhorizons.modularui.api.math.MathExpression; import com.gtnewhorizons.modularui.api.screen.ModularWindow; import com.gtnewhorizons.modularui.common.widget.TextWidget; import com.gtnewhorizons.modularui.common.widget.textfield.BaseTextFieldWidget; -import com.gtnewhorizons.modularui.common.widget.textfield.TextFieldWidget; import gregtech.api.gui.modularui.GT_CoverUIBuildContext; import gregtech.api.gui.modularui.GT_UITextures; @@ -86,25 +85,23 @@ public class GT_Cover_Arm extends GT_CoverBehavior { toSlot = aCoverVariable & SLOT_ID_MASK; } - byte movedItems = 0; if (fromSlot > 0 && toSlot > 0) { - if (fromTile instanceof IInventory && toTile instanceof IInventory) - movedItems = GT_Utility.moveFromSlotToSlot( - (IInventory) fromTile, - (IInventory) toTile, - fromSlot - 1, - toSlot - 1, - null, - false, - (byte) 64, - (byte) 1, - (byte) 64, - (byte) 1); + if (fromTile instanceof IInventory && toTile instanceof IInventory) GT_Utility.moveFromSlotToSlot( + (IInventory) fromTile, + (IInventory) toTile, + fromSlot - 1, + toSlot - 1, + null, + false, + (byte) 64, + (byte) 1, + (byte) 64, + (byte) 1); } else if (toSlot > 0) { byte side; if ((aCoverVariable & EXPORT_MASK) > 0) side = aSide; else side = GT_Utility.getOppositeSide(aSide); - movedItems = GT_Utility.moveOneItemStackIntoSlot( + GT_Utility.moveOneItemStackIntoSlot( fromTile, toTile, side, @@ -119,7 +116,7 @@ public class GT_Cover_Arm extends GT_CoverBehavior { byte toSide; if ((aCoverVariable & EXPORT_MASK) > 0) toSide = aSide; else toSide = GT_Utility.getOppositeSide(aSide); - if (fromTile instanceof IInventory) movedItems = GT_Utility.moveFromSlotToSide( + if (fromTile instanceof IInventory) GT_Utility.moveFromSlotToSide( (IInventory) fromTile, toTile, fromSlot - 1, @@ -139,7 +136,7 @@ public class GT_Cover_Arm extends GT_CoverBehavior { fromSide = GT_Utility.getOppositeSide(aSide); toSide = aSide; } - movedItems = GT_Utility.moveOneItemStack( + GT_Utility.moveOneItemStack( fromTile, toTile, fromSide, @@ -348,7 +345,8 @@ public class GT_Cover_Arm extends GT_CoverBehavior { .setValidator(val -> { final int valSlot = getIntFromText(val); if (valSlot > -1) { - return TextFieldWidget.format.format(Math.min(valSlot, maxSlot)); + return widget.getDecimalFormatter() + .format(Math.min(valSlot, maxSlot)); } else { return ANY_TEXT; } @@ -380,7 +378,8 @@ public class GT_Cover_Arm extends GT_CoverBehavior { adjacentMaxSlot = -1; } if (valSlot > -1) { - return TextFieldWidget.format.format(Math.min(valSlot, adjacentMaxSlot)); + return widget.getDecimalFormatter() + .format(Math.min(valSlot, adjacentMaxSlot)); } else { return ANY_TEXT; } @@ -389,7 +388,8 @@ public class GT_Cover_Arm extends GT_CoverBehavior { final int val = getIntFromText(text); int step = (GuiScreen.isShiftKeyDown() ? 50 : GuiScreen.isCtrlKeyDown() ? 5 : 1) * direction; - return TextFieldWidget.format.format(val + step); + return widget.getDecimalFormatter() + .format(val + step); }) .setPattern(BaseTextFieldWidget.NATURAL_NUMS) .setPos(spaceX * 0, spaceY * 2 + 2) diff --git a/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java b/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java index e4459c06db..6af664b594 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java @@ -86,12 +86,6 @@ public class GT_Cover_FluidRegulator extends GT_CoverBehaviorBase<GT_Cover_Fluid return new FluidRegulatorData(); } - private static int generateNewCoverVariable(int aFlowRate, int aTickRate) { - int tToStoreRaw = aTickRate - TICK_RATE_MIN; - int tToStore = aFlowRate >= 0 ? tToStoreRaw : ~tToStoreRaw; - return aFlowRate & ~TICK_RATE_BITMASK | (tToStore << SPEED_LENGTH); - } - @Override protected boolean isRedstoneSensitiveImpl(byte aSide, int aCoverID, FluidRegulatorData aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java index af5a4df927..99241731fc 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java @@ -15,7 +15,6 @@ import com.gtnewhorizons.modularui.api.math.MathExpression; import com.gtnewhorizons.modularui.api.screen.ModularWindow; import com.gtnewhorizons.modularui.common.widget.TextWidget; import com.gtnewhorizons.modularui.common.widget.textfield.BaseTextFieldWidget; -import com.gtnewhorizons.modularui.common.widget.textfield.TextFieldWidget; import gregtech.api.GregTech_API; import gregtech.api.gui.modularui.GT_CoverUIBuildContext; @@ -249,7 +248,8 @@ public class GT_Cover_ItemMeter extends GT_CoverBehaviorBase<GT_Cover_ItemMeter. .setValidator(val -> { final int valSlot = getIntFromText(val); if (valSlot > -1) { - return TextFieldWidget.format.format(Math.min(valSlot, maxSlot)); + return widget.getDecimalFormatter() + .format(Math.min(valSlot, maxSlot)); } else { return ALL_TEXT; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java index e7d2ac1e02..b846fd3b72 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java @@ -51,10 +51,10 @@ public class GT_Cover_Shutter extends GT_CoverBehavior { aCoverVariable = 3; } switch (aCoverVariable) { - case 0 -> GT_Utility.sendChatToPlayer(aPlayer, trans("082", "Open if work enabled")); - case 1 -> GT_Utility.sendChatToPlayer(aPlayer, trans("083", "Open if work disabled")); - case 2 -> GT_Utility.sendChatToPlayer(aPlayer, trans("084", "Only Output allowed")); - case 3 -> GT_Utility.sendChatToPlayer(aPlayer, trans("085", "Only Input allowed")); + case 0 -> GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("082", "Open if work enabled")); + case 1 -> GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("083", "Open if work disabled")); + case 2 -> GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("084", "Only Output allowed")); + case 3 -> GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("085", "Only Input allowed")); } if (aTileEntity instanceof BaseMetaPipeEntity) { ((BaseMetaPipeEntity) aTileEntity).reloadLocks(); diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessItemDetector.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessItemDetector.java index 428b9b636d..8b8d047214 100644 --- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessItemDetector.java +++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessItemDetector.java @@ -11,12 +11,10 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import com.google.common.io.ByteArrayDataInput; -import com.gtnewhorizons.modularui.api.forge.ItemStackHandler; import com.gtnewhorizons.modularui.api.math.MathExpression; import com.gtnewhorizons.modularui.api.screen.ModularWindow; import com.gtnewhorizons.modularui.common.widget.TextWidget; import com.gtnewhorizons.modularui.common.widget.textfield.BaseTextFieldWidget; -import com.gtnewhorizons.modularui.common.widget.textfield.TextFieldWidget; import gregtech.api.gui.modularui.GT_CoverUIBuildContext; import gregtech.api.interfaces.ITexture; @@ -153,7 +151,6 @@ public class GT_Cover_WirelessItemDetector private static final String ALL_TEXT = "All"; private int maxSlot; - private final ItemStackHandler targetSlotHandler = new ItemStackHandler(1); public WirelessItemDetectorUIFactory(GT_CoverUIBuildContext buildContext) { super(buildContext); @@ -209,7 +206,8 @@ public class GT_Cover_WirelessItemDetector .setValidator(val -> { final int valSlot = getIntFromText(val); if (valSlot > -1) { - return TextFieldWidget.format.format(Math.min(valSlot, maxSlot)); + return widget.getDecimalFormatter() + .format(Math.min(valSlot, maxSlot)); } else { return ALL_TEXT; } diff --git a/src/main/java/gregtech/common/fluid/GT_Fluid.java b/src/main/java/gregtech/common/fluid/GT_Fluid.java index 0ef44215f4..98210c0e62 100644 --- a/src/main/java/gregtech/common/fluid/GT_Fluid.java +++ b/src/main/java/gregtech/common/fluid/GT_Fluid.java @@ -1,5 +1,7 @@ package gregtech.common.fluid; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; + import javax.annotation.Nonnull; import net.minecraft.item.ItemStack; @@ -121,11 +123,14 @@ public class GT_Fluid extends Fluid implements IGT_Fluid, IGT_RegisteredFluid, R if (fullContainer != null && emptyContainer != null) { final FluidStack fluidStack = new FluidStack(registeredFluid, containerSize); if (!FluidContainerRegistry.registerFluidContainer(fluidStack, fullContainer, emptyContainer)) { - GT_Values.RA.addFluidCannerRecipe( - fullContainer, - GT_Utility.getContainerItem(fullContainer, false), - null, - fluidStack); + GT_Values.RA.stdBuilder() + .itemInputs(fullContainer) + .itemOutputs(GT_Utility.getContainerItem(fullContainer, false)) + .noFluidInputs() + .fluidOutputs(fluidStack) + .duration(fluidStack.amount / 62) + .eut(1) + .addTo(sFluidCannerRecipes); } } return this; diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java index 13628eb80f..df2dfa48f7 100644 --- a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java +++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java @@ -88,7 +88,8 @@ public class CoverDataFollower_TextFieldWidget<T extends ISerializableObject> ex } catch (ArithmeticException ignored) { val = Integer.MAX_VALUE; } - return TextFieldWidget.format.format(val); + return this.getDecimalFormatter() + .format(val); }); return this; } diff --git a/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java b/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java index 4aec0ed5c7..850fe21811 100644 --- a/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java +++ b/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java @@ -28,7 +28,6 @@ import gregtech.api.enums.Materials; import gregtech.api.items.GT_Generic_Item; import gregtech.api.util.GT_Utility; -@SuppressWarnings({ "rawtypes", "unchecked" }) public class GT_FluidDisplayItem extends GT_Generic_Item { private static final Map<Fluid, String> sFluidTooltips = new HashMap<>(); @@ -132,11 +131,10 @@ public class GT_FluidDisplayItem extends GT_Generic_Item { // For GT++ Fluid Display // GT++ didn't register a Material in GT, so I have too find the Chemical Formula in its cell's // tooltip - List tTooltip = tContainer.getTooltip(null, true); - for (Object tInfo : tTooltip) { - if (!((String) tInfo).contains(" ") && !((String) tInfo).contains(":") - && tTooltip.indexOf(tInfo) != 0) { - return (String) tInfo; + List<String> tTooltip = tContainer.getTooltip(null, true); + for (String tInfo : tTooltip) { + if (!tInfo.contains(" ") && !tInfo.contains(":") && tTooltip.indexOf(tInfo) != 0) { + return tInfo; } } } 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 739a3c7b9e..53daa4d813 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 @@ -2,6 +2,8 @@ package gregtech.common.items; import static gregtech.api.enums.Mods.GalacticraftMars; import static gregtech.api.enums.Textures.BlockIcons.*; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.client.GT_TooltipHandler.Tier.*; import static gregtech.client.GT_TooltipHandler.registerTieredTooltip; @@ -105,9 +107,19 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { setBurnValue(17000 + Materials.Wood.mMetaItemSubID, 1600); GT_OreDictUnificator.addToBlacklist(new ItemStack(this, 1, 17000 + Materials.Wood.mMetaItemSubID)); - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 8L), - new ItemStack(this, 1, 17000 + Materials.Wood.mMetaItemSubID)); + + // Compressor recipe + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 8L)) + .itemOutputs(new ItemStack(this, 1, 17000 + Materials.Wood.mMetaItemSubID)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + } + GregTech_API.registerCover( new ItemStack(this, 1, 17000 + Materials.Wood.mMetaItemSubID), TextureFactory.of(COVER_WOOD_PLATE), 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 d419747c8a..da5f25a96f 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 @@ -2,6 +2,8 @@ package gregtech.common.items; import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Textures.BlockIcons.*; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.dispenser.IBlockSource; import net.minecraft.enchantment.Enchantment; @@ -36,6 +38,8 @@ import gregtech.common.covers.redstone.GT_Cover_WirelessFluidDetector; import gregtech.common.covers.redstone.GT_Cover_WirelessItemDetector; import gregtech.common.covers.redstone.GT_Cover_WirelessMaintenanceDetector; import gregtech.common.items.behaviors.Behaviour_Arrow; +import ic2.api.crops.CropCard; +import ic2.api.crops.Crops; public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 { @@ -2619,27 +2623,116 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 { ItemList.Crop_Drop_Tine.get(1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tin, 1L)); - GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Coppon.get(4L), new ItemStack(Blocks.wool, 1, 1)); - GT_ModHandler - .addCompressionRecipe(ItemList.Crop_Drop_Plumbilia.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler - .addCompressionRecipe(ItemList.Crop_Drop_Argentia.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Indigo.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Ferru.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler - .addCompressionRecipe(ItemList.Crop_Drop_Aurelia.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler - .addCompressionRecipe(ItemList.Crop_Drop_OilBerry.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler.addCompressionRecipe( - ItemList.Crop_Drop_BobsYerUncleRanks.get(4L), - ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Tine.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Rape.get(4L), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler - .addCompressionRecipe(new ItemStack(Blocks.red_flower, 8, 32767), ItemList.IC2_PlantballCompressed.get(1L)); - GT_ModHandler.addCompressionRecipe( - new ItemStack(Blocks.yellow_flower, 8, 32767), - ItemList.IC2_PlantballCompressed.get(1L)); + // Compression recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Coppon.get(4L)) + .itemOutputs(new ItemStack(Blocks.wool, 1, 1)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Plumbilia.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Argentia.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Indigo.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Ferru.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Aurelia.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_OilBerry.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_BobsYerUncleRanks.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Tine.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Crop_Drop_Rape.get(4L)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.red_flower, 8, 32767)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.yellow_flower, 8, 32767)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + } GT_ModHandler.addPulverisationRecipe( ItemList.Food_Sliced_Cheese.get(1L), @@ -2699,10 +2792,10 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 { 32_000_000, 100); try { - ic2.api.crops.CropCard tCrop; - GT_Utility.getField(tCrop = ic2.api.crops.Crops.instance.getCropList()[13], "mDrop") + CropCard tCrop; + GT_Utility.getField(tCrop = Crops.instance.getCropList()[13], "mDrop") .set(tCrop, ItemList.Crop_Drop_Ferru.get(1L)); - GT_Utility.getField(tCrop = ic2.api.crops.Crops.instance.getCropList()[14], "mDrop") + GT_Utility.getField(tCrop = Crops.instance.getCropList()[14], "mDrop") .set(tCrop, ItemList.Crop_Drop_Aurelia.get(1L)); } catch (Throwable e) { if (GT_Values.D1) { diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java index 594c5841f5..015be426c8 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java @@ -26,7 +26,6 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { OrePrefixes.crateGtPlate, OrePrefixes.nanite); INSTANCE = this; - int tLastID = 0; Object[] o = new Object[0]; /** @@ -36,9 +35,9 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { * + sulfurci acid wetware lifesupport board / fiberglass CB + teflon + */ ItemList.Circuit_Board_Wetware - .set(addItem(tLastID = 6, "Wetware Lifesupport Circuit Board", "The Board that keeps life", o)); - ItemList.Circuit_Board_Plastic.set(addItem(tLastID = 7, "Plastic Circuit Board", "A Good Board", o)); - ItemList.Circuit_Board_Bio.set(addItem(tLastID = 8, "Bio Circuit Board", "Bio genetic mutated Board", o)); + .set(addItem(6, "Wetware Lifesupport Circuit Board", "The Board that keeps life", o)); + ItemList.Circuit_Board_Plastic.set(addItem(7, "Plastic Circuit Board", "A Good Board", o)); + ItemList.Circuit_Board_Bio.set(addItem(8, "Bio Circuit Board", "Bio genetic mutated Board", o)); /** * electronic components: vacuum tube (glass tube + red alloy cables) basic electronic circuits normal+smd coils @@ -46,68 +45,67 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { */ ItemList.Circuit_Parts_ResistorSMD.set( addItem( - tLastID = 11, + 11, "SMD Resistor", "Electronic Component", OrePrefixes.componentCircuit.get(Materials.Resistor), SubTag.NO_UNIFICATION)); - ItemList.Circuit_Parts_Glass_Tube.set(addItem(tLastID = 12, "Glass Tube", "", o)); - ItemList.Circuit_Parts_Coil.set(addItem(tLastID = 14, "Small Coil", "Basic Electronic Component", o)); + ItemList.Circuit_Parts_Glass_Tube.set(addItem(12, "Glass Tube", "", o)); + ItemList.Circuit_Parts_Coil.set(addItem(14, "Small Coil", "Basic Electronic Component", o)); ItemList.Circuit_Parts_DiodeSMD.set( addItem( - tLastID = 16, + 16, "SMD Diode", "Electronic Component", OrePrefixes.componentCircuit.get(Materials.Diode), SubTag.NO_UNIFICATION)); ItemList.Circuit_Parts_TransistorSMD.set( addItem( - tLastID = 18, + 18, "SMD Transistor", "Electronic Component", OrePrefixes.componentCircuit.get(Materials.Transistor), SubTag.NO_UNIFICATION)); ItemList.Circuit_Parts_CapacitorSMD.set( addItem( - tLastID = 20, + 20, "SMD Capacitor", "Electronic Component", OrePrefixes.componentCircuit.get(Materials.Capacitor), SubTag.NO_UNIFICATION)); ItemList.Circuit_Parts_GlassFiber - .set(addItem(tLastID = 21, "Glass Fiber", Materials.BorosilicateGlass.mChemicalFormula, o)); - ItemList.Circuit_Parts_PetriDish.set(addItem(tLastID = 22, "Petri Dish", "For cultivating cells", o)); - ItemList.Circuit_Parts_Reinforced_Glass_Tube.set(addItem(tLastID = 23, "Reinforced Glass Tube", "", o)); + .set(addItem(21, "Glass Fiber", Materials.BorosilicateGlass.mChemicalFormula, o)); + ItemList.Circuit_Parts_PetriDish.set(addItem(22, "Petri Dish", "For cultivating cells", o)); + ItemList.Circuit_Parts_Reinforced_Glass_Tube.set(addItem(23, "Reinforced Glass Tube", "", o)); ItemList.Circuit_Parts_ResistorASMD - .set(addItem(tLastID = 24, "Advanced SMD Resistor", "Advanced Electronic Component", o)); - ItemList.Circuit_Parts_DiodeASMD - .set(addItem(tLastID = 25, "Advanced SMD Diode", "Advanced Electronic Component", o)); + .set(addItem(24, "Advanced SMD Resistor", "Advanced Electronic Component", o)); + ItemList.Circuit_Parts_DiodeASMD.set(addItem(25, "Advanced SMD Diode", "Advanced Electronic Component", o)); ItemList.Circuit_Parts_TransistorASMD - .set(addItem(tLastID = 26, "Advanced SMD Transistor", "Advanced Electronic Component", o)); + .set(addItem(26, "Advanced SMD Transistor", "Advanced Electronic Component", o)); ItemList.Circuit_Parts_CapacitorASMD - .set(addItem(tLastID = 27, "Advanced SMD Capacitor", "Advanced Electronic Component", o)); + .set(addItem(27, "Advanced SMD Capacitor", "Advanced Electronic Component", o)); ItemList.Circuit_Parts_ResistorXSMD - .set(addItem(tLastID = 178, "Optical SMD Resistor", "Highly Advanced Electronic Component", o)); + .set(addItem(178, "Optical SMD Resistor", "Highly Advanced Electronic Component", o)); ItemList.Circuit_Parts_DiodeXSMD - .set(addItem(tLastID = 179, "Optical SMD Diode", "Highly Advanced Electronic Component", o)); + .set(addItem(179, "Optical SMD Diode", "Highly Advanced Electronic Component", o)); ItemList.Circuit_Parts_TransistorXSMD - .set(addItem(tLastID = 180, "Optical SMD Transistor", "Highly Advanced Electronic Component", o)); + .set(addItem(180, "Optical SMD Transistor", "Highly Advanced Electronic Component", o)); ItemList.Circuit_Parts_CapacitorXSMD - .set(addItem(tLastID = 181, "Optical SMD Capacitor", "Highly Advanced Electronic Component", o)); + .set(addItem(181, "Optical SMD Capacitor", "Highly Advanced Electronic Component", o)); ItemList.Circuit_Parts_InductorSMD.set( addItem( - tLastID = 182, + 182, "SMD Inductor", "Electronic Component", OrePrefixes.componentCircuit.get(Materials.Inductor), SubTag.NO_UNIFICATION)); ItemList.Circuit_Parts_InductorASMD - .set(addItem(tLastID = 183, "Advanced SMD Inductor", "Advanced Electronic Component", o)); + .set(addItem(183, "Advanced SMD Inductor", "Advanced Electronic Component", o)); ItemList.Circuit_Parts_InductorXSMD - .set(addItem(tLastID = 184, "Optical SMD Inductor", "Highly Advanced Electronic Component", o)); + .set(addItem(184, "Optical SMD Inductor", "Highly Advanced Electronic Component", o)); GT_OreDictUnificator .set(OrePrefixes.componentCircuit, Materials.Resistor, ItemList.Circuit_Parts_Resistor.get(1L)); @@ -156,107 +154,104 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { * * quantum chips */ - ItemList.Circuit_Silicon_Ingot.set(addItem(tLastID = 30, "Monocrystalline Silicon Boule", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Ingot.set(addItem(30, "Monocrystalline Silicon Boule", "Raw Circuit", o)); ItemList.Circuit_Silicon_Ingot2 - .set(addItem(tLastID = 31, "Phosphorus doped Monocrystalline Silicon Boule", "Raw Circuit", o)); + .set(addItem(31, "Phosphorus doped Monocrystalline Silicon Boule", "Raw Circuit", o)); ItemList.Circuit_Silicon_Ingot3 - .set(addItem(tLastID = 32, "Naquadah doped Monocrystalline Silicon Boule", "Raw Circuit", o)); + .set(addItem(32, "Naquadah doped Monocrystalline Silicon Boule", "Raw Circuit", o)); ItemList.Circuit_Silicon_Ingot4 - .set(addItem(tLastID = 150, "Europium doped Monocrystalline Silicon Boule", "Raw Circuit", o)); + .set(addItem(150, "Europium doped Monocrystalline Silicon Boule", "Raw Circuit", o)); ItemList.Circuit_Silicon_Ingot5 - .set(addItem(tLastID = 152, "Americium doped Monocrystalline Silicon Boule", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Ingot6 - .set(addItem(tLastID = 721, "Optically Enriched Crystalline Boule", "Raw Circuit", o)); + .set(addItem(152, "Americium doped Monocrystalline Silicon Boule", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Ingot6.set(addItem(721, "Optically Enriched Crystalline Boule", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer.set(addItem(tLastID = 33, "Wafer", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer2.set(addItem(tLastID = 34, "Phosphorus doped Wafer", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer3.set(addItem(tLastID = 35, "Naquadah doped Wafer", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer4.set(addItem(tLastID = 151, "Europium doped Wafer", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer5.set(addItem(tLastID = 153, "Americium doped Wafer", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer6.set(addItem(tLastID = 722, "Photonically Prepared Wafer", "Raw Circuit", o)); - ItemList.Circuit_Silicon_Wafer7.set(addItem(tLastID = 723, "Photonically Enhanced Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer.set(addItem(33, "Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer2.set(addItem(34, "Phosphorus doped Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer3.set(addItem(35, "Naquadah doped Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer4.set(addItem(151, "Europium doped Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer5.set(addItem(153, "Americium doped Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer6.set(addItem(722, "Photonically Prepared Wafer", "Raw Circuit", o)); + ItemList.Circuit_Silicon_Wafer7.set(addItem(723, "Photonically Enhanced Wafer", "Raw Circuit", o)); - ItemList.Circuit_Wafer_ILC.set(addItem(tLastID = 36, "Integrated Logic Circuit (Wafer)", "Raw Circuit", o)); - ItemList.Circuit_Chip_ILC.set(addItem(tLastID = 37, "Integrated Logic Circuit", "Integrated Circuit", o)); + ItemList.Circuit_Wafer_ILC.set(addItem(36, "Integrated Logic Circuit (Wafer)", "Raw Circuit", o)); + ItemList.Circuit_Chip_ILC.set(addItem(37, "Integrated Logic Circuit", "Integrated Circuit", o)); - ItemList.Circuit_Wafer_Ram.set(addItem(tLastID = 38, "Random Access Memory Chip (Wafer)", "Raw Circuit", o)); - ItemList.Circuit_Chip_Ram.set(addItem(tLastID = 39, "Random Access Memory Chip", "Integrated Circuit", o)); + ItemList.Circuit_Wafer_Ram.set(addItem(38, "Random Access Memory Chip (Wafer)", "Raw Circuit", o)); + ItemList.Circuit_Chip_Ram.set(addItem(39, "Random Access Memory Chip", "Integrated Circuit", o)); - ItemList.Circuit_Wafer_NAND.set(addItem(tLastID = 40, "NAND Memory Chip (Wafer)", "Raw Circuit", o)); - ItemList.Circuit_Chip_NAND.set(addItem(tLastID = 41, "NAND Memory Chip", "Integrated Circuit", o)); + ItemList.Circuit_Wafer_NAND.set(addItem(40, "NAND Memory Chip (Wafer)", "Raw Circuit", o)); + ItemList.Circuit_Chip_NAND.set(addItem(41, "NAND Memory Chip", "Integrated Circuit", o)); - ItemList.Circuit_Wafer_NOR.set(addItem(tLastID = 42, "NOR Memory Chip (Wafer)", "Raw Circuit", o)); - ItemList.Circuit_Chip_NOR.set(addItem(tLastID = 43, "NOR Memory Chip", "Integrated Circuit", o)); + ItemList.Circuit_Wafer_NOR.set(addItem(42, "NOR Memory Chip (Wafer)", "Raw Circuit", o)); + ItemList.Circuit_Chip_NOR.set(addItem(43, "NOR Memory Chip", "Integrated Circuit", o)); - ItemList.Circuit_Wafer_CPU.set(addItem(tLastID = 44, "Central Processing Unit (Wafer)", "Raw Circuit", o)); - ItemList.Circuit_Chip_CPU.set(addItem(tLastID = 45, "Central Processing Unit", "Integrated Circuit", o)); + ItemList.Circuit_Wafer_CPU.set(addItem(44, "Central Processing Unit (Wafer)", "Raw Circuit", o)); + ItemList.Circuit_Chip_CPU.set(addItem(45, "Central Processing Unit", "Integrated Circuit", o)); - ItemList.Circuit_Wafer_SoC.set(addItem(tLastID = 46, "SoC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_SoC.set(addItem(tLastID = 47, "SoC", "System on a Chip", o)); + ItemList.Circuit_Wafer_SoC.set(addItem(46, "SoC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_SoC.set(addItem(47, "SoC", "System on a Chip", o)); - ItemList.Circuit_Wafer_SoC2.set(addItem(tLastID = 48, "ASoC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_SoC2.set(addItem(tLastID = 49, "ASoC", "Advanced System on a Chip", o)); + ItemList.Circuit_Wafer_SoC2.set(addItem(48, "ASoC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_SoC2.set(addItem(49, "ASoC", "Advanced System on a Chip", o)); - ItemList.Circuit_Wafer_PIC.set(addItem(tLastID = 50, "PIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_PIC.set(addItem(tLastID = 51, "Power IC", "Power Circuit", o)); + ItemList.Circuit_Wafer_PIC.set(addItem(50, "PIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_PIC.set(addItem(51, "Power IC", "Power Circuit", o)); - ItemList.Circuit_Wafer_HPIC.set(addItem(tLastID = 52, "HPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_HPIC.set(addItem(tLastID = 53, "High Power IC", "High Power Circuit", o)); + ItemList.Circuit_Wafer_HPIC.set(addItem(52, "HPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_HPIC.set(addItem(53, "High Power IC", "High Power Circuit", o)); - ItemList.Circuit_Wafer_NanoCPU.set(addItem(tLastID = 54, "NanoCPU Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_NanoCPU - .set(addItem(tLastID = 55, "Nanocomponent Central Processing Unit", "Power Circuit", o)); + ItemList.Circuit_Wafer_NanoCPU.set(addItem(54, "NanoCPU Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_NanoCPU.set(addItem(55, "Nanocomponent Central Processing Unit", "Power Circuit", o)); - ItemList.Circuit_Wafer_QuantumCPU.set(addItem(tLastID = 56, "QBit Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_QuantumCPU.set(addItem(tLastID = 57, "QBit Processing Unit", "Quantum CPU", o)); + ItemList.Circuit_Wafer_QuantumCPU.set(addItem(56, "QBit Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_QuantumCPU.set(addItem(57, "QBit Processing Unit", "Quantum CPU", o)); - ItemList.Circuit_Wafer_UHPIC.set(addItem(tLastID = 58, "UHPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_UHPIC.set(addItem(tLastID = 59, "Ultra High Power IC", "Ultra High Power Circuit", o)); + ItemList.Circuit_Wafer_UHPIC.set(addItem(58, "UHPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_UHPIC.set(addItem(59, "Ultra High Power IC", "Ultra High Power Circuit", o)); - ItemList.Circuit_Wafer_Simple_SoC.set(addItem(tLastID = 60, "Simple SoC Wafer", "Raw Primitive Circuit", o)); - ItemList.Circuit_Chip_Simple_SoC.set(addItem(tLastID = 61, "Simple SoC", "Simple System on a Chip", o)); + ItemList.Circuit_Wafer_Simple_SoC.set(addItem(60, "Simple SoC Wafer", "Raw Primitive Circuit", o)); + ItemList.Circuit_Chip_Simple_SoC.set(addItem(61, "Simple SoC", "Simple System on a Chip", o)); - ItemList.Circuit_Wafer_ULPIC.set(addItem(tLastID = 62, "ULPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_ULPIC.set(addItem(tLastID = 63, "Ultra Low Power IC", "Ultra Low Power Circuit", o)); + ItemList.Circuit_Wafer_ULPIC.set(addItem(62, "ULPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_ULPIC.set(addItem(63, "Ultra Low Power IC", "Ultra Low Power Circuit", o)); - ItemList.Circuit_Wafer_LPIC.set(addItem(tLastID = 64, "LPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_LPIC.set(addItem(tLastID = 65, "Low Power IC", "Low Power Circuit", o)); + ItemList.Circuit_Wafer_LPIC.set(addItem(64, "LPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_LPIC.set(addItem(65, "Low Power IC", "Low Power Circuit", o)); - ItemList.Circuit_Wafer_NPIC.set(addItem(tLastID = 160, "NPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_NPIC.set(addItem(tLastID = 161, "Nano Power IC", "Nano Power Circuit", o)); + ItemList.Circuit_Wafer_NPIC.set(addItem(160, "NPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_NPIC.set(addItem(161, "Nano Power IC", "Nano Power Circuit", o)); - ItemList.Circuit_Wafer_PPIC.set(addItem(tLastID = 162, "PPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_PPIC.set(addItem(tLastID = 163, "Piko Power IC", "Piko Power Circuit", o)); + ItemList.Circuit_Wafer_PPIC.set(addItem(162, "PPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_PPIC.set(addItem(163, "Piko Power IC", "Piko Power Circuit", o)); - ItemList.Circuit_Wafer_QPIC.set(addItem(tLastID = 164, "QPIC Wafer", "Raw Circuit", o)); - ItemList.Circuit_Chip_QPIC.set(addItem(tLastID = 165, "Quantum Power IC", "Quantum Power Circuit", o)); + ItemList.Circuit_Wafer_QPIC.set(addItem(164, "QPIC Wafer", "Raw Circuit", o)); + ItemList.Circuit_Chip_QPIC.set(addItem(165, "Quantum Power IC", "Quantum Power Circuit", o)); - ItemList.Circuit_Wafer_Bioware.set(addItem(tLastID = 188, "Living Bio Wafer", "Raw Circuit", o)); - ItemList.Circuit_Parts_Chip_Bioware.set(addItem(tLastID = 189, "Living Bio Chip", "Needed for Circuits", o)); + ItemList.Circuit_Wafer_Bioware.set(addItem(188, "Living Bio Wafer", "Raw Circuit", o)); + ItemList.Circuit_Parts_Chip_Bioware.set(addItem(189, "Living Bio Chip", "Needed for Circuits", o)); /** * Engraved Crystal Chip Engraved Lapotron Chip Crystal CPU SoCrystal stem cells (disassemble eggs) */ ItemList.Circuit_Chip_CrystalSoC2 - .set(addItem(tLastID = 68, "Raw Advanced Crystal Chip", "Raw Advanced Crystal Processor", o)); - ItemList.Circuit_Parts_RawCrystalChip - .set(addItem(tLastID = 69, "Raw Crystal Chip", "Raw Crystal Processor", o)); - ItemList.Circuit_Chip_CrystalCPU.set(addItem(tLastID = 70, "Crystal Processing Unit", "Crystal CPU", o)); // Crystal - // chip - // elite - // part - ItemList.Circuit_Chip_CrystalSoC.set(addItem(tLastID = 71, "Crystal SoC", "Crystal System on a Chip", o)); - ItemList.Circuit_Chip_NeuroCPU.set(addItem(tLastID = 72, "Neuro Processing Unit", "Neuro CPU", o)); - ItemList.Circuit_Chip_Stemcell.set(addItem(tLastID = 73, "Stemcells", "Raw inteligence", o)); + .set(addItem(68, "Raw Advanced Crystal Chip", "Raw Advanced Crystal Processor", o)); + ItemList.Circuit_Parts_RawCrystalChip.set(addItem(69, "Raw Crystal Chip", "Raw Crystal Processor", o)); + ItemList.Circuit_Chip_CrystalCPU.set(addItem(70, "Crystal Processing Unit", "Crystal CPU", o)); // Crystal + // chip + // elite + // part + ItemList.Circuit_Chip_CrystalSoC.set(addItem(71, "Crystal SoC", "Crystal System on a Chip", o)); + ItemList.Circuit_Chip_NeuroCPU.set(addItem(72, "Neuro Processing Unit", "Neuro CPU", o)); + ItemList.Circuit_Chip_Stemcell.set(addItem(73, "Stemcells", "Raw inteligence", o)); ItemList.Circuit_Parts_RawCrystalParts - .set(addItem(tLastID = 74, "Raw Crystal Chip Parts", "Raw Crystal Processor Parts", o)); - ItemList.Circuit_Chip_Biocell.set(addItem(tLastID = 76, "Biocells", "Mutated Raw inteligence", o)); - ItemList.Circuit_Chip_BioCPU.set(addItem(tLastID = 77, "Bio Processing Unit", "Bio CPU", o)); - ItemList.Circuit_Chip_Optical.set(addItem(tLastID = 724, "Raw Exposed Optical Chip", "Raw Optical Chip", o)); + .set(addItem(74, "Raw Crystal Chip Parts", "Raw Crystal Processor Parts", o)); + ItemList.Circuit_Chip_Biocell.set(addItem(76, "Biocells", "Mutated Raw inteligence", o)); + ItemList.Circuit_Chip_BioCPU.set(addItem(77, "Bio Processing Unit", "Bio CPU", o)); + ItemList.Circuit_Chip_Optical.set(addItem(724, "Raw Exposed Optical Chip", "Raw Optical Chip", o)); // Nand Chip ItemList.NandChip.set( addItem( - tLastID = 75, + 75, "NAND Chip", "A very simple Circuit", OrePrefixes.circuit.get(Materials.Primitive), @@ -269,7 +264,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Integrated Logic Circuit Item01 ItemList.Circuit_Integrated_Good.set( addItem( - tLastID = 79, + 79, "Good Integrated Circuit", "Good Circuit", OrePrefixes.circuit.get(Materials.Good), @@ -280,7 +275,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { ItemList.Circuit_Microprocessor.set( addItem( - tLastID = 78, + 78, "Microprocessor", "A Basic Circuit", OrePrefixes.circuit.get(Materials.Basic), @@ -288,7 +283,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Microprocessor.get(1), LV); ItemList.Circuit_Processor.set( addItem( - tLastID = 80, + 80, "Integrated Processor", "A Good Circuit", OrePrefixes.circuit.get(Materials.Good), @@ -301,7 +296,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { ItemList.Circuit_Nanoprocessor.set( addItem( - tLastID = 82, + 82, "Nanoprocessor", "An Advanced Circuit", OrePrefixes.circuit.get(Materials.Advanced), @@ -309,7 +304,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Nanoprocessor.get(1), HV); ItemList.Circuit_Nanocomputer.set( addItem( - tLastID = 83, + 83, "Nanoprocessor Assembly", "An Extreme Circuit", OrePrefixes.circuit.get(Materials.Data), @@ -317,7 +312,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Nanocomputer.get(1), EV); ItemList.Circuit_Elitenanocomputer.set( addItem( - tLastID = 84, + 84, "Elite Nanocomputer", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), @@ -328,7 +323,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Quantum circuits ItemList.Circuit_Quantumprocessor.set( addItem( - tLastID = 85, + 85, "Quantumprocessor", "An Extreme Circuit", OrePrefixes.circuit.get(Materials.Data), @@ -336,7 +331,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Quantumprocessor.get(1), EV); ItemList.Circuit_Quantumcomputer.set( addItem( - tLastID = 86, + 86, "Quantumprocessor Assembly", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), @@ -344,7 +339,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Quantumcomputer.get(1), IV); ItemList.Circuit_Masterquantumcomputer.set( addItem( - tLastID = 87, + 87, "Master Quantumcomputer", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), @@ -352,7 +347,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Masterquantumcomputer.get(1), LuV); ItemList.Circuit_Quantummainframe.set( addItem( - tLastID = 88, + 88, "Quantumprocessor Mainframe", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), @@ -362,7 +357,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Crystal circuits ItemList.Circuit_Crystalprocessor.set( addItem( - tLastID = 89, + 89, "Crystalprocessor", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), @@ -370,7 +365,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Crystalprocessor.get(1), IV); ItemList.Circuit_Crystalcomputer.set( addItem( - tLastID = 96, + 96, "Crystalprocessor Assembly", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), @@ -378,7 +373,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Crystalcomputer.get(1), LuV); ItemList.Circuit_Ultimatecrystalcomputer.set( addItem( - tLastID = 90, + 90, "Ultimate Crystalcomputer", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), @@ -386,10 +381,10 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Ultimatecrystalcomputer.get(1), ZPM); ItemList.Circuit_Crystalmainframe.set( addItem( - tLastID = 91, + 91, "Crystalprocessor Mainframe", "A Super Circuit", - OrePrefixes.circuit.get(Materials.Superconductor), + OrePrefixes.circuit.get(Materials.SuperconductorUHV), SubTag.NO_UNIFICATION)); registerTieredTooltip(ItemList.Circuit_Crystalmainframe.get(1), UV); @@ -399,7 +394,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Wetware circuits ItemList.Circuit_Neuroprocessor.set( addItem( - tLastID = 92, + 92, "Wetwareprocessor", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), @@ -407,7 +402,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Neuroprocessor.get(1), LuV); ItemList.Circuit_Wetwarecomputer.set( addItem( - tLastID = 93, + 93, "Wetwareprocessor Assembly", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), @@ -415,15 +410,15 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Wetwarecomputer.get(1), ZPM); ItemList.Circuit_Wetwaresupercomputer.set( addItem( - tLastID = 94, + 94, "Wetware Supercomputer", "A Super Circuit", - OrePrefixes.circuit.get(Materials.Superconductor), + OrePrefixes.circuit.get(Materials.SuperconductorUHV), SubTag.NO_UNIFICATION)); registerTieredTooltip(ItemList.Circuit_Wetwaresupercomputer.get(1), UV); ItemList.Circuit_Wetwaremainframe.set( addItem( - tLastID = 95, + 95, "Wetware Mainframe", "An Infinite Circuit", OrePrefixes.circuit.get(Materials.Infinite), @@ -433,7 +428,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Bioware circuits. ItemList.Circuit_Bioprocessor.set( addItem( - tLastID = 97, + 97, "Bioprocessor", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), @@ -441,15 +436,15 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Bioprocessor.get(1), ZPM); ItemList.Circuit_Biowarecomputer.set( addItem( - tLastID = 98, + 98, "Biowareprocessor Assembly", "A Super Circuit", - OrePrefixes.circuit.get(Materials.Superconductor), + OrePrefixes.circuit.get(Materials.SuperconductorUHV), SubTag.NO_UNIFICATION)); registerTieredTooltip(ItemList.Circuit_Biowarecomputer.get(1), UV); ItemList.Circuit_Biowaresupercomputer.set( addItem( - tLastID = 99, + 99, "Bioware Supercomputer", "An Infinite Circuit", OrePrefixes.circuit.get(Materials.Infinite), @@ -457,42 +452,40 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_Biowaresupercomputer.get(1), UHV); ItemList.Circuit_Biomainframe.set( addItem( - tLastID = 120, + 120, "Bio Mainframe", "A Bio Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION)); registerTieredTooltip(ItemList.Circuit_Biomainframe.get(1), UEV); - ItemList.Circuit_Board_Coated_Basic.set(addItem(tLastID = 100, "Circuit Board", "A basic Circuit Board", o)); - ItemList.Circuit_Board_Phenolic_Good - .set(addItem(tLastID = 101, "Good Circuit Board", "A good Circuit Board", o)); + ItemList.Circuit_Board_Coated_Basic.set(addItem(100, "Circuit Board", "A basic Circuit Board", o)); + ItemList.Circuit_Board_Phenolic_Good.set(addItem(101, "Good Circuit Board", "A good Circuit Board", o)); ItemList.Circuit_Board_Epoxy_Advanced - .set(addItem(tLastID = 102, "Advanced Circuit Board", "A advanced Circuit Board", o)); + .set(addItem(102, "Advanced Circuit Board", "A advanced Circuit Board", o)); ItemList.Circuit_Board_Fiberglass_Advanced - .set(addItem(tLastID = 103, "More Advanced Circuit Board", "A more advanced Circuit Board", o)); + .set(addItem(103, "More Advanced Circuit Board", "A more advanced Circuit Board", o)); ItemList.Circuit_Board_Multifiberglass_Elite - .set(addItem(tLastID = 104, "Elite Circuit Board", "A elite Circuit Board", o)); + .set(addItem(104, "Elite Circuit Board", "A elite Circuit Board", o)); ItemList.Circuit_Board_Wetware_Extreme - .set(addItem(tLastID = 105, "Extreme Wetware Lifesupport Circuit Board", "The Board that keeps life", o)); - ItemList.Circuit_Board_Plastic_Advanced.set(addItem(tLastID = 106, "Plastic Circuit Board", "A good Board", o)); + .set(addItem(105, "Extreme Wetware Lifesupport Circuit Board", "The Board that keeps life", o)); + ItemList.Circuit_Board_Plastic_Advanced.set(addItem(106, "Plastic Circuit Board", "A good Board", o)); ItemList.Circuit_Board_Bio_Ultra - .set(addItem(tLastID = 107, "Ultra Bio Mutated Circuit Board", "Bio genetic mutated Board", o)); - ItemList.Circuit_Board_Optical - .set(addItem(tLastID = 728, "Optical Circuit Board", "Optically Infused Board", o)); + .set(addItem(107, "Ultra Bio Mutated Circuit Board", "Bio genetic mutated Board", o)); + ItemList.Circuit_Board_Optical.set(addItem(728, "Optical Circuit Board", "Optically Infused Board", o)); // Optical circuits ItemList.Circuit_OpticalProcessor.set( addItem( - tLastID = 154, + 154, "Optical Processor", "An Optical Circuit", - OrePrefixes.circuit.get(Materials.Superconductor), + OrePrefixes.circuit.get(Materials.SuperconductorUHV), SubTag.NO_UNIFICATION)); registerTieredTooltip(ItemList.Circuit_OpticalProcessor.get(1), UV); ItemList.Circuit_OpticalAssembly.set( addItem( - tLastID = 155, + 155, "Optical Assembly", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Infinite), @@ -500,7 +493,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_OpticalAssembly.get(1), UHV); ItemList.Circuit_OpticalComputer.set( addItem( - tLastID = 156, + 156, "Optical Computer", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Bio), @@ -508,7 +501,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_OpticalComputer.get(1), UEV); ItemList.Circuit_OpticalMainframe.set( addItem( - tLastID = 157, + 157, "Optical Mainframe", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Optical), @@ -518,7 +511,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Exotic circuits ItemList.Circuit_ExoticProcessor.set( addItem( - tLastID = 166, + 166, "Exotic Processor", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Infinite), @@ -526,7 +519,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_ExoticProcessor.get(1), UHV); ItemList.Circuit_ExoticAssembly.set( addItem( - tLastID = 167, + 167, "Exotic Assembly", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Bio), @@ -534,7 +527,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_ExoticAssembly.get(1), UEV); ItemList.Circuit_ExoticComputer.set( addItem( - tLastID = 168, + 168, "Exotic Computer", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Optical), @@ -542,7 +535,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_ExoticComputer.get(1), UIV); ItemList.Circuit_ExoticMainframe.set( addItem( - tLastID = 169, + 169, "Exotic Mainframe", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), @@ -552,7 +545,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Cosmic circuits ItemList.Circuit_CosmicProcessor.set( addItem( - tLastID = 170, + 170, "Cosmic Processor", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Bio), @@ -560,7 +553,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_CosmicProcessor.get(1), UEV); ItemList.Circuit_CosmicAssembly.set( addItem( - tLastID = 171, + 171, "Cosmic Assembly", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Optical), @@ -568,7 +561,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_CosmicAssembly.get(1), UIV); ItemList.Circuit_CosmicComputer.set( addItem( - tLastID = 172, + 172, "Cosmic Computer", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Exotic), @@ -576,7 +569,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_CosmicComputer.get(1), UMV); ItemList.Circuit_CosmicMainframe.set( addItem( - tLastID = 173, + 173, "Cosmic Mainframe", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), @@ -586,7 +579,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { // Transcendent circuits ItemList.Circuit_TranscendentProcessor.set( addItem( - tLastID = 174, + 174, "Temporally Transcendent Processor", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Optical), @@ -594,7 +587,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_TranscendentProcessor.get(1), UIV); ItemList.Circuit_TranscendentAssembly.set( addItem( - tLastID = 175, + 175, "Temporally Transcendent Assembly", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Exotic), @@ -602,7 +595,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_TranscendentAssembly.get(1), UMV); ItemList.Circuit_TranscendentComputer.set( addItem( - tLastID = 176, + 176, "Temporally Transcendent Computer", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Cosmic), @@ -610,18 +603,18 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { registerTieredTooltip(ItemList.Circuit_TranscendentComputer.get(1), UXV); ItemList.Circuit_TranscendentMainframe.set( addItem( - tLastID = 177, + 177, "Temporally Transcendent Mainframe", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION)); registerTieredTooltip(ItemList.Circuit_TranscendentMainframe.get(1), MAX); - ItemList.Tube_Wires.set(addItem(tLastID = 110, "Tube Wires", "For the Vacuum Tubes", o)); + ItemList.Tube_Wires.set(addItem(110, "Tube Wires", "For the Vacuum Tubes", o)); ItemList.Cover_SolarPanel_UHV.set( addItem( - tLastID = 130, + 130, "Solar Panel (UHV)", "Ultimate High Voltage Solar Panel (Needs cleaning with right click)", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 128L), @@ -629,7 +622,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { new TC_Aspects.TC_AspectStack(TC_Aspects.TENEBRAE, 128L))); ItemList.Cover_SolarPanel_UEV.set( addItem( - tLastID = 131, + 131, "Solar Panel (UEV)", "Ultimate Extreme Voltage Solar Panel (Needs cleaning with right click)", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 256L), @@ -637,7 +630,7 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { new TC_Aspects.TC_AspectStack(TC_Aspects.TENEBRAE, 256L))); ItemList.Cover_SolarPanel_UIV.set( addItem( - tLastID = 132, + 132, "Solar Panel (UIV)", "Ultimate Insane Voltage Solar Panel (Needs cleaning with right click)", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 512L), @@ -657,209 +650,209 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { TextureFactory.of(SOLARPANEL_UIV), new GT_Cover_SolarPanel(33554432)); - ItemList.ULV_Coil.set(addItem(tLastID = 140, "Ultra Low Voltage Coil", "Primitive Coil", o)); - ItemList.LV_Coil.set(addItem(tLastID = 141, "Low Voltage Coil", "Basic Coil", o)); - ItemList.MV_Coil.set(addItem(tLastID = 142, "Medium Voltage Coil", "Good Coil", o)); - ItemList.HV_Coil.set(addItem(tLastID = 143, "High Voltage Coil", "Advanced Coil", o)); - ItemList.EV_Coil.set(addItem(tLastID = 144, "Extreme Voltage Coil", "Extreme Coil", o)); - ItemList.IV_Coil.set(addItem(tLastID = 145, "Insane Voltage Coil", "Elite Coil", o)); - ItemList.LuV_Coil.set(addItem(tLastID = 146, "Ludicrous Voltage Coil", "Master Coil", o)); - ItemList.ZPM_Coil.set(addItem(tLastID = 147, "ZPM Voltage Coil", "Ultimate Coil", o)); - ItemList.UV_Coil.set(addItem(tLastID = 148, "Ultimate Voltage Coil", "Super Coil", o)); - ItemList.UHV_Coil.set(addItem(tLastID = 149, "Highly Ultimate Voltage Coil", "Infinite Coil", o)); + ItemList.ULV_Coil.set(addItem(140, "Ultra Low Voltage Coil", "Primitive Coil", o)); + ItemList.LV_Coil.set(addItem(141, "Low Voltage Coil", "Basic Coil", o)); + ItemList.MV_Coil.set(addItem(142, "Medium Voltage Coil", "Good Coil", o)); + ItemList.HV_Coil.set(addItem(143, "High Voltage Coil", "Advanced Coil", o)); + ItemList.EV_Coil.set(addItem(144, "Extreme Voltage Coil", "Extreme Coil", o)); + ItemList.IV_Coil.set(addItem(145, "Insane Voltage Coil", "Elite Coil", o)); + ItemList.LuV_Coil.set(addItem(146, "Ludicrous Voltage Coil", "Master Coil", o)); + ItemList.ZPM_Coil.set(addItem(147, "ZPM Voltage Coil", "Ultimate Coil", o)); + ItemList.UV_Coil.set(addItem(148, "Ultimate Voltage Coil", "Super Coil", o)); + ItemList.UHV_Coil.set(addItem(149, "Highly Ultimate Voltage Coil", "Infinite Coil", o)); - ItemList.GalliumArsenideCrystal.set(addItem(tLastID = 190, "Gallium Arsenide Crystal", "For making boules", o)); + ItemList.GalliumArsenideCrystal.set(addItem(190, "Gallium Arsenide Crystal", "For making boules", o)); ItemList.GalliumArsenideCrystalSmallPart - .set(addItem(tLastID = 191, "Small Gallium Arsenide Crystal", "For making boules", o)); - ItemList.KevlarFiber.set(addItem(tLastID = 192, "Kevlar Fiber", "For make Kevlar Plates", o)); - ItemList.WovenKevlar.set(addItem(tLastID = 193, "Woven Kevlar", "For make Kevlar Plates", o)); - ItemList.Spinneret.set(addItem(tLastID = 194, "Spinneret", "For make Kevlar Fiber", o)); + .set(addItem(191, "Small Gallium Arsenide Crystal", "For making boules", o)); + ItemList.KevlarFiber.set(addItem(192, "Kevlar Fiber", "For make Kevlar Plates", o)); + ItemList.WovenKevlar.set(addItem(193, "Woven Kevlar", "For make Kevlar Plates", o)); + ItemList.Spinneret.set(addItem(194, "Spinneret", "For make Kevlar Fiber", o)); - ItemList.IndustrialApiary_Upgrade_Frame.set(addItem(tLastID = 199, "Upgrade Frame", "Crafting component", o)); + ItemList.IndustrialApiary_Upgrade_Frame.set(addItem(199, "Upgrade Frame", "Crafting component", o)); ItemList.IndustrialApiary_Upgrade_Acceleration_1.set( addItem( - tLastID = 200, + 200, "Acceleration Upgrade x2", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 2x acceleration level/n * Energy Consumption +1 AMP LV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_2.set( addItem( - tLastID = 201, + 201, "Acceleration Upgrade x4", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 4x acceleration level/n * Energy Consumption +1 AMP MV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_3.set( addItem( - tLastID = 202, + 202, "Acceleration Upgrade x8", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 8x acceleration level/n * Energy Consumption +1 AMP HV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_4.set( addItem( - tLastID = 203, + 203, "Acceleration Upgrade x16", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 16x acceleration level/n * Energy Consumption +1 AMP EV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_5.set( addItem( - tLastID = 204, + 204, "Acceleration Upgrade x32", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 32x acceleration level/n * Energy Consumption +1 AMP IV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_6.set( addItem( - tLastID = 205, + 205, "Acceleration Upgrade x64", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 64x acceleration level/n * Energy Consumption +1 AMP LuV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_7.set( addItem( - tLastID = 206, + 206, "Acceleration Upgrade x128", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 128x acceleration level/n * Energy Consumption +1 AMP ZPM", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_8.set( addItem( - tLastID = 207, + 207, "Acceleration Upgrade x256", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 256x acceleration level/n * Energy Consumption +1 AMP UV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_Acceleration_8_Upgraded.set( addItem( - tLastID = 208, + 208, "Upgraded Acceleration Upgrade x256", "Acceleration upgrade for Industrial Apiary/n Maximum Installed: 1/n * Unlocks 256x acceleration level/n * Will also grant 8x production upgrade/n * Energy Consumption +1 AMP UV", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_PRODUCTION.set( addItem( - tLastID = 209, + 209, "Production Upgrade", "Production upgrade for Industrial Apiary/n Maximum Installed: 8/n Increases production modifier by 0.25/n Energy Consumption +40%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_PLAINS.set( addItem( - tLastID = 210, + 210, "Plains Emulation Upgrade", "Plains emulation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Biome Override: Plains/n * Energy Consumption +40%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_LIGHT.set( addItem( - tLastID = 211, + 211, "Light Upgrade", "Light upgrade for Industrial Apiary/n Maximum Installed: 1/n * Internal Lighting/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_FLOWERING.set( addItem( - tLastID = 212, + 212, "Flowering Upgrade", "Flowering upgrade for Industrial Apiary/n Maximum Installed: 8/n * Flowering and Pollination +20%/n * Energy Consumption +10%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_WINTER.set( addItem( - tLastID = 213, + 213, "Winter Emulation Upgrade", "Winter emulation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Biome Override: Taiga/n * Energy Consumption +50%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_DRYER.set( addItem( - tLastID = 214, + 214, "Dryer Upgrade", "Dryer upgrade for Industrial Apiary/n Maximum Installed: 8/n * Humidity -25%/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_AUTOMATION.set( addItem( - tLastID = 215, + 215, "Automation Upgrade", "Automation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Automation/n * Energy Consumption +10%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_HUMIDIFIER.set( addItem( - tLastID = 216, + 216, "Humidifier Upgrade", "Humidifier upgrade for Industrial Apiary/n Maximum Installed: 8/n * Humidity +25%/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_HELL.set( addItem( - tLastID = 217, + 217, "HELL Emulation Upgrade", "HELL emulation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Biome Override: HELL/n * Energy Consumption +50%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_POLLEN.set( addItem( - tLastID = 218, + 218, "Pollen Scrubber Upgrade", "Pollen scrubber upgrade for Industrial Apiary/n Maximum Installed: 1/n * Flowering and Pollination -100%/n * Energy Consumption +30%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_DESERT.set( addItem( - tLastID = 219, + 219, "Desert Emulation Upgrade", "Desert emulation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Biome Override: Desert/n * Energy Consumption +20%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_COOLER.set( addItem( - tLastID = 220, + 220, "Cooler Upgrade", "Cooler upgrade for Industrial Apiary/n Maximum Installed: 8/n * Temperature -25%/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_LIFESPAN.set( addItem( - tLastID = 221, + 221, "Lifespan Upgrade", "Lifespan upgrade for Industrial Apiary/n Maximum Installed: 4/n * Lifespan -33%/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_SEAL.set( addItem( - tLastID = 222, + 222, "Seal Upgrade", "Seal upgrade for Industrial Apiary/n Maximum Installed: 1/n * Rain Protection/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_STABILIZER.set( addItem( - tLastID = 223, + 223, "Genetic Stabilizer Upgrade", "Genetic stabilizer upgrade for Industrial Apiary/n Maximum Installed: 1/n * Genetic Decay -100%/n * Energy Consumption +150%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_JUNGLE.set( addItem( - tLastID = 224, + 224, "Jungle Emulation Upgrade", "Jungle emulation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Biome Override: Jungle/n * Energy Consumption +20%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_TERRITORY.set( addItem( - tLastID = 225, + 225, "Territory Upgrade", "Territory upgrade for Industrial Apiary/n Maximum Installed: 4/n * Territory +50%/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_OCEAN.set( addItem( - tLastID = 226, + 226, "Ocean Emulation Upgrade", "Ocean emulation upgrade for Industrial Apiary/n Maximum Installed: 1/n * Biome Override: Ocean/n * Energy Consumption +20%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_SKY.set( addItem( - tLastID = 227, + 227, "Open Sky Upgrade", "Open sky upgrade for Industrial Apiary/n Maximum Installed: 1/n * Open Sky Simulation/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_HEATER.set( addItem( - tLastID = 228, + 228, "Heater Upgrade", "Heater upgrade for Industrial Apiary/n Maximum Installed: 8/n * Temperature +25%/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_SIEVE.set( addItem( - tLastID = 229, + 229, "Sieve Upgrade", "Sieve upgrade for Industrial Apiary/n Maximum Installed: 1/n * Pollen Collection/n * Energy Consumption +25%", OrePrefixes.apiaryUpgrade.name())); ItemList.IndustrialApiary_Upgrade_UNLIGHT.set( addItem( - tLastID = 231, + 231, "Night Upgrade", "Night upgrade for Industrial Apiary/n Maximum Installed: 1/n * Internal Darkness/n * Energy Consumption +5%", OrePrefixes.apiaryUpgrade.name())); @@ -903,11 +896,9 @@ public class GT_MetaGenerated_Item_03 extends GT_MetaGenerated_Item_X32 { "BY THE POWERS OF NAUGHTINESS, I COMMAND THIS PARTICULAR STAR, TO BE REALLY, REALLY HOT", SubTag.NO_UNIFICATION)); - ItemList.Optical_Cpu_Containment_Housing - .set(addItem(tLastID = 727, "Optical CPU Containment Housing", "CPU Housing", o)); - ItemList.Optically_Perfected_CPU.set(addItem(tLastID = 726, "Optically Perfected CPU", "Perfected CPU!", o)); - ItemList.Optically_Compatible_Memory - .set(addItem(tLastID = 725, "Optically Compatible Memory", "Its in the name!", o)); + ItemList.Optical_Cpu_Containment_Housing.set(addItem(727, "Optical CPU Containment Housing", "CPU Housing", o)); + ItemList.Optically_Perfected_CPU.set(addItem(726, "Optically Perfected CPU", "Perfected CPU!", o)); + ItemList.Optically_Compatible_Memory.set(addItem(725, "Optically Compatible Memory", "Its in the name!", o)); int whiteDwarfIDs = 729; ItemList.White_Dwarf_Shape_Extruder_Plate.set( diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_98.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_98.java index 8979d358f1..32f1d41197 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_98.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_98.java @@ -176,12 +176,10 @@ public class GT_MetaGenerated_Item_98 extends GT_MetaGenerated_Item { /** Struct class holding data that we need to properly handle a registered fluid cell item. */ private static class RegisteredFluidData { - private final Fluid fluid; private final short[] rgba; private final IIconContainer iconContainer; - private RegisteredFluidData(Fluid fluid, short[] rgba, IIconContainer iconContainer) { - this.fluid = fluid; + private RegisteredFluidData(short[] rgba, IIconContainer iconContainer) { this.rgba = rgba; this.iconContainer = iconContainer; } @@ -279,7 +277,7 @@ public class GT_MetaGenerated_Item_98 extends GT_MetaGenerated_Item { int color = fluid.getColor(); short[] rgba = GT_Util.getRGBaArray(color); - registeredFluidDataMap.put(id, new RegisteredFluidData(fluid, rgba, iconContainerMap.get(cellType))); + registeredFluidDataMap.put(id, new RegisteredFluidData(rgba, iconContainerMap.get(cellType))); } private void registerOreDict() { @@ -309,7 +307,6 @@ public class GT_MetaGenerated_Item_98 extends GT_MetaGenerated_Item { return ItemList.Cell_Empty.get(1L); } - @SuppressWarnings("unchecked") @Override @SideOnly(Side.CLIENT) public void getSubItems(Item aItem, CreativeTabs aCreativeTab, List<ItemStack> aList) { diff --git a/src/main/java/gregtech/common/items/ItemComb.java b/src/main/java/gregtech/common/items/ItemComb.java index 60fbeb075a..8956aa4ae2 100644 --- a/src/main/java/gregtech/common/items/ItemComb.java +++ b/src/main/java/gregtech/common/items/ItemComb.java @@ -2,6 +2,10 @@ package gregtech.common.items; import static gregtech.api.enums.GT_Values.*; import static gregtech.api.enums.Mods.*; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes; +import static gregtech.api.util.GT_RecipeConstants.CLEANROOM; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; import java.util.Arrays; import java.util.List; @@ -24,6 +28,7 @@ import cpw.mods.fml.relauncher.SideOnly; import forestry.api.core.Tabs; import forestry.api.recipes.RecipeManagers; import gregtech.GT_Mod; +import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; @@ -1558,18 +1563,25 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { } public void addFluidExtractorProcess(CombType comb, FluidStack fluid, Voltage volt) { - if (fluid == null) return; - RA.addFluidExtractionRecipe( - GT_Utility.copyAmount(1, getStackForType(comb)), - null, - fluid, - 100 * 100, - (fluid.getFluid() - .getDensity() * 128 > 0 - ? (fluid.getFluid() - .getDensity() * 100) - : 128), - volt.getSimpleEnergy() / 2); + if (fluid == null) { + return; + } + + int duration = (fluid.getFluid() + .getDensity() * 128 > 0 + ? (fluid.getFluid() + .getDensity() * 100) + : 128); + int eut = volt.getSimpleEnergy() / 2; + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1, getStackForType(comb))) + .noItemOutputs() + .noFluidInputs() + .fluidOutputs(fluid) + .duration(duration) + .eut(eut) + .addTo(sFluidExtractionRecipes); } /** @@ -1584,65 +1596,70 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { public void addProcessGT(CombType comb, Materials[] aMaterial, Voltage volt) { ItemStack tComb = getStackForType(comb); for (Materials materials : aMaterial) { - if (GT_OreDictUnificator.get(OrePrefixes.crushedPurified, materials, 4) != NI) { + if (GT_OreDictUnificator.get(OrePrefixes.crushedPurified, materials, 4) != null) { + ItemStack combInput; + ItemStack combOutput; + FluidStack fluidInput; + FluidStack fluidOutput; + int durationTicks; + int eut; + boolean requiresCleanroom; switch (comb) { - case NEUTRONIUM: - RA.addChemicalRecipe( - GT_Utility.copyAmount(4, tComb), - null, - volt.getFluidAccordingToCombTier(), - Materials.Neutronium.getMolten(576l), - Materials.Neutronium.getNuggets(1), - NI, - volt.getComplexTime() * 17, - volt.getChemicalEnergy(), - volt.compareTo(Voltage.IV) > 0); - case OSMIUM: - RA.addChemicalRecipe( - GT_Utility.copyAmount(4, tComb), - null, - volt.getFluidAccordingToCombTier(), - Materials.Osmium.getMolten(288l), - Materials.Osmium.getNuggets(1), - NI, - volt.getComplexTime() * 17, - volt.getChemicalEnergy(), - volt.compareTo(Voltage.IV) > 0); - case PLATINUM: - RA.addChemicalRecipe( - GT_Utility.copyAmount(4, tComb), - null, - volt.getFluidAccordingToCombTier(), - Materials.Platinum.getMolten(288l), - Materials.Platinum.getNuggets(1), - NI, - volt.getComplexTime() * 10, - volt.getChemicalEnergy(), - volt.compareTo(Voltage.HV) > 0); - case IRIDIUM: - RA.addChemicalRecipe( - GT_Utility.copyAmount(4, tComb), - null, - volt.getFluidAccordingToCombTier(), - Materials.Iridium.getMolten(288l), - Materials.Iridium.getNuggets(1), - NI, - volt.getComplexTime() * 14, - volt.getChemicalEnergy(), - volt.compareTo(Voltage.EV) > 0); - default: - RA.addChemicalRecipe( - GT_Utility.copyAmount(4, tComb), - null, - volt.getFluidAccordingToCombTier(), - null, - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, materials, 4), - NI, - volt.getComplexTime(), - volt.getChemicalEnergy(), - volt.compareTo(Voltage.IV) > 0); - break; + case NEUTRONIUM -> { + combInput = GT_Utility.copyAmount(4, tComb); + combOutput = Materials.Neutronium.getNuggets(1); + fluidInput = volt.getFluidAccordingToCombTier(); + fluidOutput = Materials.Neutronium.getMolten(576); + durationTicks = volt.getComplexTime() * 17; + eut = volt.getChemicalEnergy(); + requiresCleanroom = volt.compareTo(Voltage.IV) > 0; + } + case OSMIUM -> { + combInput = GT_Utility.copyAmount(4, tComb); + combOutput = Materials.Osmium.getNuggets(1); + fluidInput = volt.getFluidAccordingToCombTier(); + fluidOutput = Materials.Osmium.getMolten(288); + durationTicks = volt.getComplexTime() * 17; + eut = volt.getChemicalEnergy(); + requiresCleanroom = volt.compareTo(Voltage.IV) > 0; + } + case PLATINUM -> { + combInput = GT_Utility.copyAmount(4, tComb); + combOutput = Materials.Platinum.getNuggets(1); + fluidInput = volt.getFluidAccordingToCombTier(); + fluidOutput = Materials.Platinum.getMolten(288); + durationTicks = volt.getComplexTime() * 10; + eut = volt.getChemicalEnergy(); + requiresCleanroom = volt.compareTo(Voltage.HV) > 0; + } + case IRIDIUM -> { + combInput = GT_Utility.copyAmount(4, tComb); + combOutput = Materials.Iridium.getNuggets(1); + fluidInput = volt.getFluidAccordingToCombTier(); + fluidOutput = Materials.Iridium.getMolten(288); + durationTicks = volt.getComplexTime() * 14; + eut = volt.getChemicalEnergy(); + requiresCleanroom = volt.compareTo(Voltage.EV) > 0; + } + default -> { + combInput = GT_Utility.copyAmount(4, tComb); + combOutput = GT_OreDictUnificator.get(OrePrefixes.crushedPurified, materials, 4); + fluidInput = volt.getFluidAccordingToCombTier(); + fluidOutput = null; + durationTicks = volt.getComplexTime(); + eut = volt.getChemicalEnergy(); + requiresCleanroom = volt.compareTo(Voltage.IV) > 0; + } } + GT_Values.RA.stdBuilder() + .itemInputs(combInput) + .itemOutputs(combOutput) + .fluidInputs(fluidInput) + .fluidOutputs(fluidOutput) + .duration(durationTicks) + .eut(eut) + .metadata(CLEANROOM, requiresCleanroom) + .addTo(UniversalChemical); } } } @@ -1719,25 +1736,15 @@ public class ItemComb extends Item implements IGT_ItemWithMaterialRenderer { RecipeManagers.centrifugeManager.addRecipe(40, tComb, Product.build()); } - aItem = Arrays.copyOf(aItem, 6); - if (aItem.length > 6) { - chance = Arrays.copyOf(chance, 6); - } - - RA.addCentrifugeRecipe( - tComb, - NI, - NF, - NF, - aItem[0], - aItem[1], - aItem[2], - aItem[3], - aItem[4], - aItem[5], - chance, - duration, - volt.getSimpleEnergy()); + GT_Values.RA.stdBuilder() + .itemInputs(tComb) + .itemOutputs(aItem) + .outputChances(chance) + .noFluidInputs() + .noFluidOutputs() + .duration(duration) + .eut(volt.getSimpleEnergy()) + .addTo(sCentrifugeRecipes); } public void registerOreDict() { diff --git a/src/main/java/gregtech/common/items/ItemDrop.java b/src/main/java/gregtech/common/items/ItemDrop.java index 6e62281812..2c32383d1f 100644 --- a/src/main/java/gregtech/common/items/ItemDrop.java +++ b/src/main/java/gregtech/common/items/ItemDrop.java @@ -6,6 +6,9 @@ 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.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -24,6 +27,7 @@ import forestry.api.core.Tabs; import forestry.api.recipes.RecipeManagers; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; public class ItemDrop extends Item { @@ -188,19 +192,51 @@ public class ItemDrop extends Item { } public void addProcessLV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance, int aEUt) { - GT_Values.RA.addFluidExtractionRecipe(tDrop, aOutput2, aOutput, aChance, 32, aEUt); + GT_Values.RA.stdBuilder() + .itemInputs(tDrop) + .itemOutputs(aOutput2) + .outputChances(aChance) + .noFluidInputs() + .fluidOutputs(aOutput) + .duration(1 * SECONDS + 12 * TICKS) + .eut(aEUt) + .addTo(sFluidExtractionRecipes); } public void addProcessLV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance, int aDuration, int aEUt) { - GT_Values.RA.addFluidExtractionRecipe(tDrop, aOutput2, aOutput, aChance, aDuration, aEUt); + GT_Values.RA.stdBuilder() + .itemInputs(tDrop) + .itemOutputs(aOutput2) + .outputChances(aChance) + .noFluidInputs() + .fluidOutputs(aOutput) + .duration(aDuration) + .eut(aEUt) + .addTo(sFluidExtractionRecipes); } public void addProcessMV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance, int aEUt) { - GT_Values.RA.addFluidExtractionRecipe(tDrop, aOutput2, aOutput, aChance, 128, aEUt); + GT_Values.RA.stdBuilder() + .itemInputs(tDrop) + .itemOutputs(aOutput2) + .outputChances(aChance) + .noFluidInputs() + .fluidOutputs(aOutput) + .duration(6 * SECONDS + 8 * TICKS) + .eut(aEUt) + .addTo(sFluidExtractionRecipes); } public void addProcessHV(ItemStack tDrop, FluidStack aOutput, ItemStack aOutput2, int aChance) { - GT_Values.RA.addFluidExtractionRecipe(tDrop, aOutput2, aOutput, aChance, 480, 480); + GT_Values.RA.stdBuilder() + .itemInputs(tDrop) + .itemOutputs(aOutput2) + .outputChances(aChance) + .noFluidInputs() + .fluidOutputs(aOutput) + .duration(24 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sFluidExtractionRecipes); } } diff --git a/src/main/java/gregtech/common/items/ItemPropolis.java b/src/main/java/gregtech/common/items/ItemPropolis.java index 8513c02e2a..5559de9013 100644 --- a/src/main/java/gregtech/common/items/ItemPropolis.java +++ b/src/main/java/gregtech/common/items/ItemPropolis.java @@ -3,6 +3,9 @@ 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.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.List; @@ -20,6 +23,7 @@ import forestry.api.core.Tabs; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -103,27 +107,38 @@ public class ItemPropolis extends Item { } public void addProcessHV(ItemStack tPropolis, ItemStack aOutput2) { - GT_Values.RA - .addFluidExtractionRecipe(tPropolis, aOutput2, FluidRegistry.getFluidStack("endergoo", 100), 5000, 50, 480); + GT_Values.RA.stdBuilder() + .itemInputs(tPropolis) + .itemOutputs(aOutput2) + .outputChances(5000) + .noFluidInputs() + .fluidOutputs(FluidRegistry.getFluidStack("endergoo", 100)) + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_HV) + .addTo(sFluidExtractionRecipes); } public void addProcessEV(ItemStack tPropolis, ItemStack aOutput2) { - GT_Values.RA.addFluidExtractionRecipe( - tPropolis, - aOutput2, - FluidRegistry.getFluidStack("endergoo", 200), - 2500, - 100, - 1920); + GT_Values.RA.stdBuilder() + .itemInputs(tPropolis) + .itemOutputs(aOutput2) + .outputChances(2500) + .noFluidInputs() + .fluidOutputs(FluidRegistry.getFluidStack("endergoo", 200)) + .duration(5 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sFluidExtractionRecipes); } public void addProcessIV(ItemStack tPropolis, ItemStack aOutput2) { - GT_Values.RA.addFluidExtractionRecipe( - tPropolis, - aOutput2, - FluidRegistry.getFluidStack("endergoo", 300), - 1500, - 150, - 7680); + GT_Values.RA.stdBuilder() + .itemInputs(tPropolis) + .itemOutputs(aOutput2) + .outputChances(1500) + .noFluidInputs() + .fluidOutputs(FluidRegistry.getFluidStack("endergoo", 300)) + .duration(7 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_IV) + .addTo(sFluidExtractionRecipes); } } diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_Spray_Color.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_Spray_Color.java index fd7e1a7965..f9621a8da4 100644 --- a/src/main/java/gregtech/common/items/behaviors/Behaviour_Spray_Color.java +++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_Spray_Color.java @@ -113,6 +113,7 @@ public class Behaviour_Spray_Color extends Behaviour_None { case SOUTH -> aZ += 1; case WEST -> aX -= 1; case EAST -> aX += 1; + default -> throw new IllegalArgumentException("Unexpected value: " + lookSide); } } tNBT.removeTag("GT.RemainingPaint"); 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 9025dd1f78..ccffb3cd3a 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 @@ -306,7 +306,7 @@ public class GT_MetaTileEntity_AssemblyLine if (GT_Values.D1) { GT_FML_LOGGER.info("Check overclock"); } - calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, getMaxInputVoltage()); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, getMaxInputVoltage(), false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) { if (GT_Values.D1) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java index 300dba92e3..5a25507524 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java @@ -93,7 +93,7 @@ public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_TooltipMultiB public boolean checkRecipe(ItemStack aStack) { mEfficiencyIncrease = 100; // use the standard overclock mechanism to determine duration and estimate a maximum consumption - calculateOverclockedNessMulti(40, 45 * Math.max(1, mHeight - 1), 1, getMaxInputVoltage()); + calculateOverclockedNessMultiInternal(40, 45 * Math.max(1, mHeight - 1), 1, getMaxInputVoltage(), false); // negate it to trigger the special energy consumption function. divide by 10 to get the actual final // consumption. mEUt /= -10; @@ -393,19 +393,15 @@ public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_TooltipMultiB int percentage; int allowedCount; - int meta; - ConfigEntry(int percentage, int count, int meta) { + ConfigEntry(int percentage, int count) { this.percentage = percentage; this.allowedCount = count; - this.meta = meta; } } private static final HashMap<String, ConfigEntry> config = new HashMap<>(); - private static final String category = "cleanroom_allowed_blocks"; - private static final int wildcard_meta = Short.MAX_VALUE; private static void setDefaultConfigValues(Configuration cfg) { cfg.get("cleanroom_allowed_blocks.reinforced_glass", "Name", "blockAlloyGlass"); @@ -438,16 +434,13 @@ public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_TooltipMultiB new ConfigEntry( 0, cc.get("Count") - .getInt(), - cc.get("Meta") .getInt())); else config.put( name, new ConfigEntry( 0, cc.get("Count") - .getInt(), - wildcard_meta)); + .getInt())); } else if (cc.containsKey("Percentage")) { if (cc.containsKey("Meta")) config.put( name + ":" @@ -456,16 +449,13 @@ public class GT_MetaTileEntity_Cleanroom extends GT_MetaTileEntity_TooltipMultiB new ConfigEntry( cc.get("Percentage") .getInt(), - 0, - cc.get("Meta") - .getInt())); + 0)); else config.put( name, new ConfigEntry( cc.get("Percentage") .getInt(), - 0, - wildcard_meta)); + 0)); } } } 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 069afffacf..4fdc2e7f03 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 @@ -283,13 +283,6 @@ public class GT_MetaTileEntity_DieselEngine return 50; } - private boolean addToMachineList(IGregTechTileEntity tTileEntity) { - return ((addMaintenanceToMachineList(tTileEntity, getCasingTextureIndex())) - || (addInputToMachineList(tTileEntity, getCasingTextureIndex())) - || (addOutputToMachineList(tTileEntity, getCasingTextureIndex())) - || (addMufflerToMachineList(tTileEntity, getCasingTextureIndex()))); - } - @Override public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_DieselEngine(this.mName); 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 ec616461a9..17b043ead2 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 @@ -235,7 +235,7 @@ public class GT_MetaTileEntity_DistillationTower extends if (tRecipe.isRecipeInputEqual(true, tFluids, inputs)) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage, false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return false; if (this.mEUt > 0) { 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 f21d814838..0ba884ab8c 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 @@ -129,7 +129,7 @@ public class GT_MetaTileEntity_ImplosionCompressor this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; // OC THAT EXPLOSIVE SHIT!!! - calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, getMaxInputVoltage()); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, getMaxInputVoltage(), false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return false; if (this.mEUt > 0) { 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 23fa445868..5b3db72c98 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 @@ -351,7 +351,7 @@ public class GT_MetaTileEntity_IntegratedOreFactory extends this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; this.mOutputItems = sMidProduct; - calculateOverclockedNessMulti(30 * tRealUsed, getTime(sMode), 1, getMaxInputVoltage()); + calculateOverclockedNessMultiInternal(30 * tRealUsed, getTime(sMode), 1, getMaxInputVoltage(), false); if (this.mEUt > 0) { this.mEUt = -this.mEUt; } 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 de2f0ad24b..6fb7c6430a 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 @@ -204,7 +204,7 @@ public class GT_MetaTileEntity_LargeChemicalReactor extends this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - calculatePerfectOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage, true); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return false; if (this.mEUt > 0) { @@ -226,10 +226,6 @@ public class GT_MetaTileEntity_LargeChemicalReactor extends mCasingAmount++; } - private void onCoilAdded() { - mCoilAmount++; - } - @Override public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { mCasingAmount = 0; 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 c6a4155b03..cfc565558b 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 @@ -215,13 +215,13 @@ public class GT_MetaTileEntity_LargeTurbine_Plasma extends GT_MetaTileEntity_Lar counter = 0; baseEff = GT_Utility.safeInt( (long) ((5F + ((GT_MetaGenerated_Tool) aStack.getItem()).getToolCombatDamage(aStack)) * 1000F)); - optFlow = GT_Utility.safeInt( - (long) Math.max( - Float.MIN_NORMAL, - ((GT_MetaGenerated_Tool) aStack.getItem()).getToolStats(aStack) - .getSpeedMultiplier() - * ((GT_MetaGenerated_Tool) aStack.getItem()).getPrimaryMaterial(aStack).mToolSpeed - * 50)); + optFlow = GT_Utility + .safeInt( + (long) Math.max( + Float.MIN_NORMAL, + ((GT_MetaGenerated_Tool) aStack.getItem()).getToolStats(aStack) + .getSpeedMultiplier() * GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mToolSpeed + * 50)); overflowMultiplier = getOverflowMultiplier(aStack); flowMultipliers[0] = GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mSteamMultiplier; 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 c9f32c76f7..58d82f2901 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 @@ -30,10 +30,7 @@ import gregtech.api.interfaces.ITexture; 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_InputBus; -import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler; -import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; @@ -179,7 +176,7 @@ public class GT_MetaTileEntity_MultiFurnace if (this.mOutputItems.length > 0) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - calculateOverclockedNessMulti(4, 512, 1, mVolatage); + calculateOverclockedNessMultiInternal(4, 512, 1, mVolatage, false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return false; @@ -318,15 +315,6 @@ public class GT_MetaTileEntity_MultiFurnace buildPiece(STRUCTURE_PIECE_MAIN, stackSize, hintsOnly, 1, 2, 0); } - private boolean isBottomHatch(IGregTechTileEntity aTileEntity) { - if (aTileEntity == null) return false; - IMetaTileEntity tMTE = aTileEntity.getMetaTileEntity(); - if (tMTE == null) return false; - return tMTE instanceof GT_MetaTileEntity_Hatch_Energy || tMTE instanceof GT_MetaTileEntity_Hatch_InputBus - || tMTE instanceof GT_MetaTileEntity_Hatch_OutputBus - || tMTE instanceof GT_MetaTileEntity_Hatch_Maintenance; - } - @Override public int survivalConstruct(ItemStack stackSize, int elementBudget, ISurvivalBuildEnvironment env) { if (mMachine) return -1; 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 389d1b84b6..384013459c 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 @@ -185,7 +185,7 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_EnhancedMult if (tRecipe.isRecipeInputEqual(true, tFluidInputs, mInventory[1])) { this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage, false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return 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 6a1964df3e..90bfa18138 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 @@ -194,7 +194,7 @@ public class GT_MetaTileEntity_PyrolyseOven this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage, false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return false; if (this.mEUt > 0) this.mEUt = (-this.mEUt); 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 520fc01de0..19bd46df5d 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 @@ -114,7 +114,7 @@ public class GT_MetaTileEntity_VacuumFreezer this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - calculateOverclockedNessMulti(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage); + calculateOverclockedNessMultiInternal(tRecipe.mEUt, tRecipe.mDuration, 1, tVoltage, false); // In case recipe is too OP for that machine if (mMaxProgresstime == Integer.MAX_VALUE - 1 && mEUt == Integer.MAX_VALUE - 1) return false; if (this.mEUt > 0) { diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java index c9a3ad7650..aeced754fe 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java @@ -21,6 +21,14 @@ import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.Constants; +import appeng.api.storage.IMEMonitor; +import appeng.api.storage.IMEMonitorHandlerReceiver; +import appeng.api.storage.StorageChannel; +import appeng.api.storage.data.IAEItemStack; +import appeng.api.storage.data.IItemList; +import appeng.util.item.AEItemStack; +import appeng.util.item.ItemList; + import com.gtnewhorizons.modularui.api.screen.ModularWindow; import com.gtnewhorizons.modularui.api.screen.UIBuildContext; import com.gtnewhorizons.modularui.common.widget.DrawableWidget; @@ -41,11 +49,11 @@ import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Utility; public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEntity_TieredMachineBlock - implements appeng.api.storage.IMEMonitor<appeng.api.storage.data.IAEItemStack>, IAddUIWidgets { + implements IMEMonitor<IAEItemStack>, IAddUIWidgets { protected boolean mVoidOverflow = false; protected boolean mDisableFilter; - private Map<appeng.api.storage.IMEMonitorHandlerReceiver<appeng.api.storage.data.IAEItemStack>, Object> listeners = null; + private Map<IMEMonitorHandlerReceiver<IAEItemStack>, Object> listeners = null; public GT_MetaTileEntity_DigitalChestBase(int aID, String aName, String aNameRegional, int aTier) { super( @@ -116,16 +124,13 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti } @Override - public void addListener( - appeng.api.storage.IMEMonitorHandlerReceiver<appeng.api.storage.data.IAEItemStack> imeMonitorHandlerReceiver, - Object o) { + public void addListener(IMEMonitorHandlerReceiver<IAEItemStack> imeMonitorHandlerReceiver, Object o) { if (listeners == null) listeners = new HashMap<>(); listeners.put(imeMonitorHandlerReceiver, o); } @Override - public void removeListener( - appeng.api.storage.IMEMonitorHandlerReceiver<appeng.api.storage.data.IAEItemStack> imeMonitorHandlerReceiver) { + public void removeListener(IMEMonitorHandlerReceiver<IAEItemStack> imeMonitorHandlerReceiver) { if (listeners == null) listeners = new HashMap<>(); listeners.remove(imeMonitorHandlerReceiver); } @@ -136,14 +141,14 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti } @Override - public boolean isPrioritized(appeng.api.storage.data.IAEItemStack iaeItemStack) { + public boolean isPrioritized(IAEItemStack iaeItemStack) { ItemStack s = getItemStack(); if (s == null || iaeItemStack == null) return false; return iaeItemStack.isSameType(s); } @Override - public boolean canAccept(appeng.api.storage.data.IAEItemStack iaeItemStack) { + public boolean canAccept(IAEItemStack iaeItemStack) { ItemStack s = getItemStack(); if (s == null || iaeItemStack == null) return true; return iaeItemStack.isSameType(s); @@ -168,12 +173,12 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti protected abstract void setItemStack(ItemStack s); + @SuppressWarnings("unchecked") @Override - public appeng.api.storage.data.IItemList<appeng.api.storage.data.IAEItemStack> getAvailableItems( - final appeng.api.storage.data.IItemList out) { + public IItemList<IAEItemStack> getAvailableItems(@SuppressWarnings("rawtypes") final IItemList out) { ItemStack storedStack = getItemStack(); if (storedStack != null) { - appeng.util.item.AEItemStack s = appeng.util.item.AEItemStack.create(storedStack); + AEItemStack s = AEItemStack.create(storedStack); s.setStackSize(getItemCount()); out.add(s); } @@ -181,11 +186,11 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti } @Override - public appeng.api.storage.data.IItemList<appeng.api.storage.data.IAEItemStack> getStorageList() { - appeng.api.storage.data.IItemList<appeng.api.storage.data.IAEItemStack> res = new appeng.util.item.ItemList(); + public IItemList<IAEItemStack> getStorageList() { + IItemList<IAEItemStack> res = new ItemList(); ItemStack storedStack = getItemStack(); if (storedStack != null) { - appeng.util.item.AEItemStack s = appeng.util.item.AEItemStack.create(storedStack); + AEItemStack s = AEItemStack.create(storedStack); s.setStackSize(getItemCount()); res.add(s); } @@ -208,8 +213,8 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti } @Override - public appeng.api.storage.data.IAEItemStack injectItems(final appeng.api.storage.data.IAEItemStack input, - final appeng.api.config.Actionable mode, final appeng.api.networking.security.BaseActionSource src) { + public IAEItemStack injectItems(final IAEItemStack input, final appeng.api.config.Actionable mode, + final appeng.api.networking.security.BaseActionSource src) { final ItemStack inputStack = input.getItemStack(); if (inputStack == null) return null; if (getBaseMetaTileEntity() == null) return input; @@ -236,21 +241,21 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti return null; } - private appeng.api.storage.data.IAEItemStack createOverflowStack(long size, appeng.api.config.Actionable mode) { - final appeng.api.storage.data.IAEItemStack overflow = appeng.util.item.AEItemStack.create(getItemStack()); + private IAEItemStack createOverflowStack(long size, appeng.api.config.Actionable mode) { + final IAEItemStack overflow = AEItemStack.create(getItemStack()); overflow.setStackSize(size - getMaxItemCount()); if (mode != appeng.api.config.Actionable.SIMULATE) setItemCount(getMaxItemCount()); return overflow; } @Override - public appeng.api.storage.data.IAEItemStack extractItems(final appeng.api.storage.data.IAEItemStack request, - final appeng.api.config.Actionable mode, final appeng.api.networking.security.BaseActionSource src) { + public IAEItemStack extractItems(final IAEItemStack request, final appeng.api.config.Actionable mode, + final appeng.api.networking.security.BaseActionSource src) { if (request.isSameType(getItemStack())) { if (getBaseMetaTileEntity() == null) return null; if (mode != appeng.api.config.Actionable.SIMULATE) getBaseMetaTileEntity().markDirty(); if (request.getStackSize() >= getItemCount()) { - appeng.util.item.AEItemStack result = appeng.util.item.AEItemStack.create(getItemStack()); + AEItemStack result = AEItemStack.create(getItemStack()); result.setStackSize(getItemCount()); if (mode != appeng.api.config.Actionable.SIMULATE) setItemCount(0); return result; @@ -264,8 +269,8 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti } @Override - public appeng.api.storage.StorageChannel getChannel() { - return appeng.api.storage.StorageChannel.ITEMS; + public StorageChannel getChannel() { + return StorageChannel.ITEMS; } @Override @@ -421,8 +426,8 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti return; } if (count == 0 || stack == null) return; - appeng.util.item.ItemList change = new appeng.util.item.ItemList(); - appeng.util.item.AEItemStack s = appeng.util.item.AEItemStack.create(stack); + ItemList change = new ItemList(); + AEItemStack s = AEItemStack.create(stack); s.setStackSize(count); change.add(s); listeners.forEach((l, o) -> { @@ -433,8 +438,7 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti private boolean hasActiveMEConnection() { if (listeners == null || listeners.isEmpty()) return false; - for (Map.Entry<appeng.api.storage.IMEMonitorHandlerReceiver<appeng.api.storage.data.IAEItemStack>, Object> e : listeners - .entrySet()) { + for (Map.Entry<IMEMonitorHandlerReceiver<IAEItemStack>, Object> e : listeners.entrySet()) { if ((e.getKey() instanceof appeng.api.parts.IPart)) { appeng.api.networking.IGridNode n = ((appeng.api.parts.IPart) e.getKey()).getGridNode(); if (n != null && n.isActive()) return true; diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java index 4493d57bd3..4f0bdbc237 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java @@ -23,7 +23,7 @@ public class GT_MetaTileEntity_SuperTank extends GT_MetaTileEntity_DigitalTankBa @Override public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { - return new GT_MetaTileEntity_SuperTank(mName, mTier, mDescription, mTextures); + return new GT_MetaTileEntity_SuperTank(mName, mTier, mDescriptionArray, mTextures); } @Override diff --git a/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java b/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java index a99d54993a..142b0c50d2 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java @@ -1,6 +1,5 @@ package gregtech.common.tools; -import java.util.ArrayList; import java.util.List; import net.minecraft.block.Block; @@ -112,8 +111,7 @@ public class GT_Tool_Chainsaw_LV extends GT_Tool_Saw { if ((aBlock.getMaterial() == Material.leaves) && ((aBlock instanceof IShearable))) { aPlayer.worldObj.setBlock(aX, aY, aZ, aBlock, aMetaData, 0); if (((IShearable) aBlock).isShearable(aStack, aPlayer.worldObj, aX, aY, aZ)) { - ArrayList<ItemStack> tDrops = ((IShearable) aBlock) - .onSheared(aStack, aPlayer.worldObj, aX, aY, aZ, aFortune); + ((IShearable) aBlock).onSheared(aStack, aPlayer.worldObj, aX, aY, aZ, aFortune); aDrops.clear(); } aPlayer.worldObj.setBlock(aX, aY, aZ, Blocks.air, 0, 0); diff --git a/src/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java b/src/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java index fa62c99ea8..3731f578db 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java @@ -53,8 +53,8 @@ public class GT_Tool_Drill_HV extends GT_Tool_Drill_LV { public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) { super.onToolCrafted(aStack, aPlayer); try { - GT_Mod.instance.achievements.issueAchievement(aPlayer, "highpowerdrill"); - GT_Mod.instance.achievements.issueAchievement(aPlayer, "buildDDrill"); + GT_Mod.achievements.issueAchievement(aPlayer, "highpowerdrill"); + GT_Mod.achievements.issueAchievement(aPlayer, "buildDDrill"); } catch (Exception ignored) {} } 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 d6c609236e..4f2c1a367b 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_JackHammer.java @@ -105,7 +105,7 @@ public class GT_Tool_JackHammer extends GT_Tool_Drill_LV { public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) { super.onToolCrafted(aStack, aPlayer); try { - GT_Mod.instance.achievements.issueAchievement(aPlayer, "hammertime"); + GT_Mod.achievements.issueAchievement(aPlayer, "hammertime"); } catch (Exception ignored) {} } diff --git a/src/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java b/src/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java index 71bf9cfb17..e2857e4af1 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java @@ -122,7 +122,7 @@ public class GT_Tool_Pickaxe extends GT_Tool { aPlayer.triggerAchievement(AchievementList.buildPickaxe); aPlayer.triggerAchievement(AchievementList.buildBetterPickaxe); try { - GT_Mod.instance.achievements.issueAchievement(aPlayer, "flintpick"); + GT_Mod.achievements.issueAchievement(aPlayer, "flintpick"); } catch (Exception ignored) {} } diff --git a/src/main/java/gregtech/common/tools/GT_Tool_Plunger.java b/src/main/java/gregtech/common/tools/GT_Tool_Plunger.java index dc550989a0..76c1ccbc24 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_Plunger.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_Plunger.java @@ -11,6 +11,7 @@ import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.IItemBehaviour; +import gregtech.api.items.GT_MetaBase_Item; import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.util.GT_ToolHarvestHelper; import gregtech.api.util.GT_Utility; @@ -73,7 +74,7 @@ public class GT_Tool_Plunger extends GT_Tool { false, getToolDamagePerDropConversion()); if ((tObject instanceof IItemBehaviour)) { - aItem.addItemBehavior(aID, (IItemBehaviour) tObject); + aItem.addItemBehavior(aID, (IItemBehaviour<GT_MetaBase_Item>) tObject); } } catch (Throwable ignored) {} } diff --git a/src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java b/src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java index 47702fe833..94325618cf 100644 --- a/src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java +++ b/src/main/java/gregtech/crossmod/GregtechWailaDataProvider.java @@ -41,7 +41,6 @@ public class GregtechWailaDataProvider implements IWailaDataProvider { @Override public List<String> getWailaTail(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) { - final TileEntity tile = accessor.getTileEntity(); return currenttip; } diff --git a/src/main/java/gregtech/loaders/load/GT_FuelLoader.java b/src/main/java/gregtech/loaders/load/GT_FuelLoader.java index 554fecb6f9..7240d9268e 100644 --- a/src/main/java/gregtech/loaders/load/GT_FuelLoader.java +++ b/src/main/java/gregtech/loaders/load/GT_FuelLoader.java @@ -8,11 +8,12 @@ import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import gregtech.GT_Mod; +import gregtech.api.enums.FluidState; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.fluid.GT_FluidFactory; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -23,17 +24,17 @@ public class GT_FuelLoader implements Runnable { @Override public void run() { GT_Log.out.println("GT_Mod: Initializing various Fuels."); - ItemList.sBlueVitriol = GT_Mod.gregtechproxy - .addFluid("solution.bluevitriol", "Blue Vitriol water solution", null, 1, 295); - ItemList.sNickelSulfate = GT_Mod.gregtechproxy - .addFluid("solution.nickelsulfate", "Nickel sulfate water solution", null, 1, 295); - ItemList.sGreenVitriol = GT_Mod.gregtechproxy - .addFluid("solution.greenvitriol", "Green Vitriol water solution", null, 1, 295); - ItemList.sIndiumConcentrate = GT_Mod.gregtechproxy - .addFluid("indiumconcentrate", "Indium Concentrate", null, 1, 295); // TODO CHECK NEW x3 - ItemList.sLeadZincSolution = GT_Mod.gregtechproxy - .addFluid("leadzincsolution", "Lead-Zinc solution", null, 1, 295); - ItemList.sRocketFuel = GT_Mod.gregtechproxy.addFluid("rocket_fuel", "Rocket Fuel", null, 1, 295); + ItemList.sBlueVitriol = GT_FluidFactory + .of("solution.bluevitriol", "Blue Vitriol water solution", null, FluidState.LIQUID, 295); + ItemList.sNickelSulfate = GT_FluidFactory + .of("solution.nickelsulfate", "Nickel sulfate water solution", null, FluidState.LIQUID, 295); + ItemList.sGreenVitriol = GT_FluidFactory + .of("solution.greenvitriol", "Green Vitriol water solution", null, FluidState.LIQUID, 295); + ItemList.sIndiumConcentrate = GT_FluidFactory + .of("indiumconcentrate", "Indium Concentrate", null, FluidState.LIQUID, 295); // TODO CHECK NEW x3 + ItemList.sLeadZincSolution = GT_FluidFactory + .of("leadzincsolution", "Lead-Zinc solution", null, FluidState.LIQUID, 295); + ItemList.sRocketFuel = GT_FluidFactory.of("rocket_fuel", "Rocket Fuel", null, FluidState.LIQUID, 295); new GT_Recipe( new ItemStack(Items.lava_bucket), new ItemStack(Blocks.obsidian), diff --git a/src/main/java/gregtech/loaders/materialprocessing/ProcessingConfig.java b/src/main/java/gregtech/loaders/materialprocessing/ProcessingConfig.java index 15f1922aab..3ed4b30630 100644 --- a/src/main/java/gregtech/loaders/materialprocessing/ProcessingConfig.java +++ b/src/main/java/gregtech/loaders/materialprocessing/ProcessingConfig.java @@ -13,6 +13,7 @@ public class ProcessingConfig implements gregtech.api.interfaces.IMaterialHandle Materials.add(this); } + @SuppressWarnings("unused") @Override public void onMaterialsInit() { /** This is just left here as an example of how to add new materials. **/ diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingArrows.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingArrows.java index 0e5a2ae241..44474c65da 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingArrows.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingArrows.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.item.ItemStack; @@ -26,15 +29,15 @@ public class ProcessingArrows implements gregtech.api.interfaces.IOreRecipeRegis tOutput, Enchantment.smite, EnchantmentHelper.getEnchantmentLevel(Enchantment.smite.effectId, tOutput) + 3); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.HolyWater.getFluid(25L), - tOutput, - null, - null, - null, - 100, - 2); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(tOutput) + .fluidInputs(Materials.HolyWater.getFluid(25L)) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(2) + .addTo(sChemicalBathRecipes); tOutput = GT_Utility.copyAmount(1L, aStack); GT_Utility.updateItemStack(tOutput); @@ -42,15 +45,15 @@ public class ProcessingArrows implements gregtech.api.interfaces.IOreRecipeRegis tOutput, Enchantment.fireAspect, EnchantmentHelper.getEnchantmentLevel(Enchantment.fireAspect.effectId, tOutput) + 3); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.FierySteel.getFluid(25L), - tOutput, - null, - null, - null, - 100, - 2); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(tOutput) + .fluidInputs(Materials.FierySteel.getFluid(25L)) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(2) + .addTo(sChemicalBathRecipes); tOutput = GT_Utility.copyAmount(1L, aStack); GT_Utility.updateItemStack(tOutput); @@ -58,15 +61,15 @@ public class ProcessingArrows implements gregtech.api.interfaces.IOreRecipeRegis tOutput, Enchantment.fireAspect, EnchantmentHelper.getEnchantmentLevel(Enchantment.fireAspect.effectId, tOutput) + 1); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Blaze.getMolten(18L), - tOutput, - null, - null, - null, - 100, - 2); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(tOutput) + .fluidInputs(Materials.Blaze.getMolten(18L)) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(2) + .addTo(sChemicalBathRecipes); tOutput = GT_Utility.copyAmount(1L, aStack); GT_Utility.updateItemStack(tOutput); @@ -74,15 +77,15 @@ public class ProcessingArrows implements gregtech.api.interfaces.IOreRecipeRegis tOutput, Enchantment.knockback, EnchantmentHelper.getEnchantmentLevel(Enchantment.knockback.effectId, tOutput) + 1); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Rubber.getMolten(18L), - tOutput, - null, - null, - null, - 100, - 2); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(tOutput) + .fluidInputs(Materials.Rubber.getMolten(18L)) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(2) + .addTo(sChemicalBathRecipes); tOutput = GT_Utility.copyAmount(1L, aStack); GT_Utility.updateItemStack(tOutput); @@ -91,15 +94,15 @@ public class ProcessingArrows implements gregtech.api.interfaces.IOreRecipeRegis gregtech.api.enchants.Enchantment_EnderDamage.INSTANCE, EnchantmentHelper .getEnchantmentLevel(gregtech.api.enchants.Enchantment_EnderDamage.INSTANCE.effectId, tOutput) + 1); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Mercury.getFluid(25L), - tOutput, - null, - null, - null, - 100, - 2); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(tOutput) + .fluidInputs(Materials.Mercury.getFluid(25L)) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(2) + .addTo(sChemicalBathRecipes); if ((aMaterial.mUnificatable) && (aMaterial.mMaterialInto == aMaterial) && !aMaterial.contains(SubTag.NO_WORKING)) { diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java index 5add59e42d..d385c9b0c2 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingBlock.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -79,7 +82,15 @@ public class ProcessingBlock implements gregtech.api.interfaces.IOreRecipeRegist if (tStack1 != null) tStack1.stackSize = 9; if (tStack2 != null) tStack2.stackSize = 9; if (tStack3 != null) tStack3.stackSize = 9; - GT_Values.RA.addForgeHammerRecipe(aStack, tStack2, 100, 24); + + GT_Values.RA.stdBuilder() + .itemInputs(aStack) + .itemOutputs(tStack2) + .noFluidInputs() + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(24) + .addTo(sHammerRecipes); if (GregTech_API.sRecipeFile.get( ConfigCategories.Recipes.storageblockdecrafting, @@ -95,11 +106,15 @@ public class ProcessingBlock implements gregtech.api.interfaces.IOreRecipeRegist } if (!OrePrefixes.block.isIgnored(aMaterial)) { - GT_ModHandler.addCompressionRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 9L), - GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L), - 300, - calculateRecipeEU(aMaterial, 2)); + // 9 ingots -> 1 block + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 9L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(calculateRecipeEU(aMaterial, 2)) + .addTo(sCompressorRecipes); } switch (aMaterial.mName) { diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java index 9d3475bcc8..536d610d61 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCell.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; + import java.util.ArrayList; import net.minecraft.item.ItemStack; @@ -94,48 +97,71 @@ public class ProcessingCell implements IOreRecipeRegistrator { tItemAmount = GT_Utility.ceilDiv(tItemAmount * tDensityMultiplier, aMaterial.getDensity()); if (tList.size() > 0) { if ((aMaterial.mExtraData & 0x1) != 0) { - if (GT_Utility.getFluidForFilledItem(aStack, true) == null) { - // dust stuffed cell e.g. Phosphate, Phosphorous Pentoxide - GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.copyAmount(tItemAmount, aStack), - tCapsuleCount <= 0L ? 0 : (int) tCapsuleCount, - tList.get(0), - tList.size() >= 2 ? tList.get(1) : null, - tList.size() >= 3 ? tList.get(2) : null, - tList.size() >= 4 ? tList.get(3) : null, - tList.size() >= 5 ? tList.get(4) : null, - tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null - : ItemList.Cell_Empty.get(-tCapsuleCount), - (int) Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount)), - Math.min(4, tList.size()) * 30); - } else { - long tCellBalance = tCapsuleCount + tItemAmount - 1; - GT_Values.RA.addElectrolyzerRecipe( - aStack, - tCellBalance <= 0L ? 0 : (int) tCellBalance, + // Electrolyzer recipe + { + if (GT_Utility.getFluidForFilledItem(aStack, true) == null) { + int capsuleCount = tCapsuleCount <= 0L ? 0 : (int) tCapsuleCount; + ItemStack cells = capsuleCount <= 0 ? null + : ItemList.Cell_Empty.get(capsuleCount); + // dust stuffed cell e.g. Phosphate, Phosphorous Pentoxide + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(tItemAmount, aStack), cells) + .itemOutputs( + tList.get(0), + tList.size() >= 2 ? tList.get(1) : null, + tList.size() >= 3 ? tList.get(2) : null, + tList.size() >= 4 ? tList.get(3) : null, + tList.size() >= 5 ? tList.get(4) : null, + tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null + : ItemList.Cell_Empty.get(-tCapsuleCount)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount))) + .eut(Math.min(4, tList.size()) * 30) + .addTo(sElectrolyzerRecipes); + } else { + long tCellBalance = tCapsuleCount + tItemAmount - 1; + int capsuleCount = tCellBalance <= 0L ? 0 : (int) tCellBalance; + ItemStack cells = capsuleCount <= 0 ? null + : ItemList.Cell_Empty.get(capsuleCount); + + GT_Values.RA.stdBuilder() + .itemInputs(aStack, cells) + .itemOutputs( + tList.get(0), + tList.size() >= 2 ? tList.get(1) : null, + tList.size() >= 3 ? tList.get(2) : null, + tList.size() >= 4 ? tList.get(3) : null, + tList.size() >= 5 ? tList.get(4) : null, + tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null + : tCellBalance < 0 ? ItemList.Cell_Empty.get(-tCellBalance) : null) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 8L * tItemAmount))) + .eut(Math.min(4, tList.size()) * 30) + .addTo(sElectrolyzerRecipes); + } + } + } + if ((aMaterial.mExtraData & 0x2) != 0) { + ItemStack emptyCells = tCapsuleCount > 0 ? ItemList.Cell_Empty.get(tCapsuleCount) + : null; + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(tItemAmount, aStack), emptyCells) + .itemOutputs( tList.get(0), tList.size() >= 2 ? tList.get(1) : null, tList.size() >= 3 ? tList.get(2) : null, tList.size() >= 4 ? tList.get(3) : null, tList.size() >= 5 ? tList.get(4) : null, tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null - : tCellBalance < 0 ? ItemList.Cell_Empty.get(-tCellBalance) : null, - (int) Math.max(1L, Math.abs(aMaterial.getProtons() * 8L * tItemAmount)), - Math.min(4, tList.size()) * 30); - } - } - if ((aMaterial.mExtraData & 0x2) != 0) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(tItemAmount, aStack), - tCapsuleCount <= 0L ? 0 : (int) tCapsuleCount, - tList.get(0), - tList.size() >= 2 ? tList.get(1) : null, - tList.size() >= 3 ? tList.get(2) : null, - tList.size() >= 4 ? tList.get(3) : null, - tList.size() >= 5 ? tList.get(4) : null, - tCapsuleCount >= 0L ? tList.size() >= 6 ? tList.get(5) : null - : ItemList.Cell_Empty.get(-tCapsuleCount), - (int) Math.max(1L, Math.abs(aMaterial.getMass() * 2L * tItemAmount))); + : ItemList.Cell_Empty.get(-tCapsuleCount)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, Math.abs(aMaterial.getMass() * 2L * tItemAmount))) + .eut(5) + .addTo(sCentrifugeRecipes); } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java index 97ee4e898f..7fb13aa6a3 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java @@ -3,6 +3,10 @@ package gregtech.loaders.oreprocessing; import static gregtech.api.enums.Mods.AppliedEnergistics2; import static gregtech.api.enums.Mods.BuildCraftSilicon; import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sLaserEngraverRecipes; +import static gregtech.api.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; @@ -11,6 +15,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -30,363 +35,533 @@ public class ProcessingCrafting implements gregtech.api.interfaces.IOreRecipeReg GT_Utility.copyAmount(1L, aStack), Materials.Concrete.getMolten(144L), new ItemStack(net.minecraft.init.Items.comparator, 1, 0), - 80, - 20); - case "craftingWireCopper", "craftingWireTin" -> GT_Values.RA.addAssemblerRecipe( - ItemList.Circuit_Basic.get(1L), - GT_Utility.copyAmount(1L, aStack), - GT_ModHandler.getIC2Item("frequencyTransmitter", 1L), - 80, - 20); - case "craftingLensBlue" -> { - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 13), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 13), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.IC2_LapotronCrystal.getWildcard(1L), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Parts_Crystal_Chip_Master.get(3L), - 900, - 480, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Chip_CrystalCPU.get(1L), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Chip_CrystalSoC.get(1), - 600, - 40000, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_PIC.get(1), - 1200, - 480, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_PIC.get(4), + 800, + 1); + case "craftingWireCopper", "craftingWireTin" -> { + GT_Values.RA.addAssemblerRecipe( + ItemList.Circuit_Basic.get(1L), + GT_Utility.copyAmount(1L, aStack), + GT_ModHandler.getIC2Item("frequencyTransmitter", 1L), 800, - 1920, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer5.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_QPIC.get(1), - 2400, - 500000, - true); + 1); + } + case "craftingLensBlue" -> { + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 13)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 13)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.IC2_LapotronCrystal.getWildcard(1L), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Parts_Crystal_Chip_Master.get(3L)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Chip_CrystalCPU.get(1L), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Chip_CrystalSoC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(40000) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_PIC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_PIC.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer5.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_QPIC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(2 * MINUTES) + .eut(TierEU.RECIPE_UV) + .addTo(sLaserEngraverRecipes); + } case "craftingLensYellow" -> { - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 14), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 14), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_LPIC.get(1), - 800, - 120, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_LPIC.get(4), - 600, - 480, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_SoC.get(1), - 900, - 1920, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer4.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_SoC.get(4), - 600, - 7680, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer5.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_SoC.get(8), - 300, - 30720, - true); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 14)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 14)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_LPIC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .duration(40 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_LPIC.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_SoC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(45 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer4.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_SoC.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_IV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer5.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_SoC.get(8)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(15 * SECONDS) + .eut(TierEU.RECIPE_LuV) + .addTo(sLaserEngraverRecipes); } case "craftingLensOrange" -> { - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Simple_SoC.get(1), - 300, - 64, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Simple_SoC.get(4), - 300, - 256, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Simple_SoC.get(16), - 300, - 1024, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer4.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Simple_SoC.get(64), - 300, - 4096, - false); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Simple_SoC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(64) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Simple_SoC.get(4)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(256) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Simple_SoC.get(16)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(1024) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer4.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Simple_SoC.get(64)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(4096) + .addTo(sLaserEngraverRecipes); + } case "craftingLensCyan" -> { - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 15), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 15), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Ram.get(1), - 1200, - 120, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Ram.get(4), - 900, - 480, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Ram.get(8), - 600, - 1920, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer4.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Ram.get(16), - 300, - 7680, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer5.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_Ram.get(32), - 150, - 30720, - true); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 15)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 15)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Ram.get(1)) + .noFluidInputs() + .noFluidOutputs() + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Ram.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Ram.get(8)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer4.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Ram.get(16)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(15 * SECONDS) + .eut(TierEU.RECIPE_IV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer5.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_Ram.get(32)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(7 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LuV) + .addTo(sLaserEngraverRecipes); + } case "craftingLensRed" -> { - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Redstone, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(BuildCraftSilicon.ID, "redstoneChipset", 1L, 0), - 50, - 120); - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.foil, Materials.RedAlloy, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.EtchedLowVoltageWiring", 1L, 0), - 200, - 16); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_ILC.get(1), - 1200, - 120, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_ILC.get(4), - 900, - 480, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_ILC.get(8), - 600, - 1920, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer4.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_NPIC.get(1), - 1800, - 30720, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer5.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_NPIC.get(4), - 1500, - 122880, - true); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Redstone, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(BuildCraftSilicon.ID, "redstoneChipset", 1L, 0)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.RedAlloy, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.EtchedLowVoltageWiring", 1L, 0)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(16) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_ILC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_ILC.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_ILC.get(8)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer4.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_NPIC.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(1 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_LuV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer5.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_NPIC.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(1 * MINUTES + 15 * SECONDS) + .eut(TierEU.RECIPE_ZPM) + .addTo(sLaserEngraverRecipes); + } case "craftingLensGreen" -> { - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Parts_Crystal_Chip_Elite.get(1L), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Chip_CrystalCPU.get(1), - 600, - 10000, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Chip_CrystalSoC.get(1L), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Chip_CrystalSoC2.get(1), - 1200, - 80000, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_ULPIC.get(2), - 600, - 30, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_ULPIC.get(8), - 600, - 120, - false); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_SoC2.get(1), - 1800, - 1920, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer4.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_SoC2.get(2), - 1500, - 7680, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer5.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_SoC2.get(4), - 1200, - 30720, - true); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Parts_Crystal_Chip_Elite.get(1L), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Chip_CrystalCPU.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(10000) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Chip_CrystalSoC.get(1L), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Chip_CrystalSoC2.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(60 * SECONDS) + .eut(80000) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_ULPIC.get(2)) + .noFluidInputs() + .noFluidOutputs() + .duration(30 * SECONDS) + .eut(30) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_ULPIC.get(8)) + .noFluidInputs() + .noFluidOutputs() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_SoC2.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(1 * MINUTES + 30 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer4.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_SoC2.get(2)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(1 * MINUTES + 15 * SECONDS) + .eut(TierEU.RECIPE_IV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer5.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_SoC2.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_LuV) + .addTo(sLaserEngraverRecipes); } case "craftingLensWhite" -> { - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 19), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 19), - 2000, - 1920); - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack(Blocks.sandstone, 1, 2), - GT_Utility.copyAmount(0L, aStack), - new ItemStack(Blocks.sandstone, 1, 1), - 50, - 16); - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack(Blocks.stone, 1, 0), - GT_Utility.copyAmount(0L, aStack), - new ItemStack(Blocks.stonebrick, 1, 3), - 50, - 16); - GT_Values.RA.addLaserEngraverRecipe( - new ItemStack(Blocks.quartz_block, 1, 0), - GT_Utility.copyAmount(0L, aStack), - new ItemStack(Blocks.quartz_block, 1, 1), - 50, - 16); - GT_Values.RA.addLaserEngraverRecipe( - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "tile.BlockQuartz", 1L), - GT_Utility.copyAmount(0L, aStack), - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "tile.BlockQuartzChiseled", 1L), - 50, - 16); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_CPU.get(1), - 1200, - 120, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer2.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_CPU.get(4), - 900, - 480, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer3.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_CPU.get(8), - 600, - 1920, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer4.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_CPU.get(16), - 300, - 7680, - true); - GT_Values.RA.addLaserEngraverRecipe( - ItemList.Circuit_Silicon_Wafer5.get(1), - GT_Utility.copyAmount(0L, aStack), - ItemList.Circuit_Wafer_CPU.get(32), - 150, - 30720, - true); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.Iron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 19)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.block, Materials.WroughtIron, 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 19)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * MINUTES + 40 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.sandstone, 1, 2), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(new ItemStack(Blocks.sandstone, 1, 1)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.stone, 1, 0), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(new ItemStack(Blocks.stonebrick, 1, 3)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(new ItemStack(Blocks.quartz_block, 1, 0), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(new ItemStack(Blocks.quartz_block, 1, 1)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs( + GT_ModHandler.getModItem(AppliedEnergistics2.ID, "tile.BlockQuartz", 1L), + GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(AppliedEnergistics2.ID, "tile.BlockQuartzChiseled", 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS + 10 * TICKS) + .eut(16) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_CPU.get(1)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer2.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_CPU.get(4)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(45 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer3.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_CPU.get(8)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_EV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer4.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_CPU.get(16)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(15 * SECONDS) + .eut(TierEU.RECIPE_IV) + .addTo(sLaserEngraverRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Circuit_Silicon_Wafer5.get(1), GT_Utility.copyAmount(0L, aStack)) + .itemOutputs(ItemList.Circuit_Wafer_CPU.get(32)) + .noFluidInputs() + .noFluidOutputs() + .requiresCleanRoom() + .duration(7 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_LuV) + .addTo(sLaserEngraverRecipes); + } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrop.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrop.java index 9fdcb14055..2ab11042e3 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrop.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrop.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraftforge.fluids.FluidRegistry; import gregtech.api.enums.GT_Values; @@ -18,9 +21,18 @@ public class ProcessingCrop implements gregtech.api.interfaces.IOreRecipeRegistr @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, net.minecraft.item.ItemStack aStack) { - GT_ModHandler.addCompressionRecipe( - gregtech.api.util.GT_Utility.copyAmount(8L, aStack), - ItemList.IC2_PlantballCompressed.get(1L)); + // Compressor recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(gregtech.api.util.GT_Utility.copyAmount(8L, aStack)) + .itemOutputs(ItemList.IC2_PlantballCompressed.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + } + switch (aOreDictName) { case "cropTea" -> { GT_Values.RA.addBrewingRecipe(aStack, FluidRegistry.WATER, FluidRegistry.getFluid("potion.tea"), false); diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java index a0c9b56b53..bc3895d60e 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java @@ -1,5 +1,11 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sSifterRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; @@ -21,11 +27,15 @@ public class ProcessingCrushedOre implements gregtech.api.interfaces.IOreRecipeR ItemStack aStack) { switch (aPrefix) { case crushedCentrifuged -> { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), - 10, - 16); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * TICKS) + .eut(16) + .addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), @@ -37,44 +47,62 @@ public class ProcessingCrushedOre implements gregtech.api.interfaces.IOreRecipeR false); } case crushedPurified -> { - GT_ModHandler.addThermalCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - new int[] { 10000, 1111 }, - (int) Math.min(5000L, Math.abs(aMaterial.getMass() * 20L)), - GT_OreDictUnificator.get( - OrePrefixes.crushedCentrifuged, - aMaterial.mMacerateInto, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), - 1L), - GT_OreDictUnificator.get( - OrePrefixes.dust, - GT_Utility.selectItemInList(1, aMaterial.mMacerateInto, aMaterial.mOreByProducts), - 1L)); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs( + GT_OreDictUnificator.get( + OrePrefixes.crushedCentrifuged, + aMaterial.mMacerateInto, + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), + 1L), + GT_OreDictUnificator.get( + OrePrefixes.dust, + GT_Utility.selectItemInList(1, aMaterial.mMacerateInto, aMaterial.mOreByProducts), + 1L)) + .outputChances(10000, 1111) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(48) + .addTo(sThermalCentrifugeRecipes); + ItemStack tGem = GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L); if (tGem != null) { switch (aMaterial.mName) { - case "Tanzanite", "Sapphire", "Olivine", "GreenSapphire", "Opal", "Amethyst", "Emerald", "Ruby", "Amber", "Diamond", "FoolsRuby", "BlueTopaz", "GarnetRed", "Topaz", "Jasper", "GarnetYellow" -> GT_Values.RA - .addSifterRecipe( - GT_Utility.copyAmount(1L, aStack), - new ItemStack[] { + case "Tanzanite", "Sapphire", "Olivine", "GreenSapphire", "Opal", "Amethyst", "Emerald", "Ruby", "Amber", "Diamond", "FoolsRuby", "BlueTopaz", "GarnetRed", "Topaz", "Jasper", "GarnetYellow" -> { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, tGem, 1L), + GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, tGem, 1L), + tGem, + GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, tGem, 1L), + GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, tGem, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, tGem, 1L)) + .outputChances(300, 1200, 4500, 1400, 2800, 3500) + .noFluidInputs() + .noFluidOutputs() + .duration(40 * SECONDS) + .eut(16) + .addTo(sSifterRecipes); + } + default -> { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs( GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, tGem, 1L), - GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, tGem, 1L), tGem, + GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, tGem, 1L), + tGem, GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, tGem, 1L), GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, tGem, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, tGem, 1L) }, - new int[] { 300, 1200, 4500, 1400, 2800, 3500 }, - 800, - 16); - default -> GT_Values.RA.addSifterRecipe( - GT_Utility.copyAmount(1L, aStack), - new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, tGem, 1L), - GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, tGem, 1L), tGem, - GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, tGem, 1L), - GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, tGem, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, tGem, 1L) }, - new int[] { 100, 400, 1500, 2000, 4000, 5000 }, - 800, - 16); + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, tGem, 1L)) + .outputChances(100, 400, 1500, 2000, 4000, 5000) + .noFluidInputs() + .noFluidOutputs() + .duration(40 * SECONDS) + .eut(16) + .addTo(sSifterRecipes); + } } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java index 3e64f05773..0f4451df53 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrystallized.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; @@ -19,11 +22,16 @@ public class ProcessingCrystallized implements gregtech.api.interfaces.IOreRecip @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), - 10, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * TICKS) + .eut(16) + .addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java index 571b3d1a7f..e7cbc80241 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java @@ -1,6 +1,12 @@ package gregtech.loaders.oreprocessing; -import gregtech.GT_Mod; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + +import net.minecraft.item.ItemStack; + import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; @@ -21,11 +27,15 @@ public class ProcessingDirty implements gregtech.api.interfaces.IOreRecipeRegist @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, net.minecraft.item.ItemStack aStack) { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L), - 10, - 16); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustImpure, aMaterial.mMacerateInto, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(10) + .eut(16) + .addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get( @@ -52,91 +62,77 @@ public class ProcessingDirty implements gregtech.api.interfaces.IOreRecipeRegist GT_Utility.selectItemInList(0, aMaterial.mMacerateInto, aMaterial.mOreByProducts), 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L)); - GT_ModHandler.addThermalCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - new int[] { 10000, 1111, 10000 }, - (int) Math.min(5000L, Math.abs(aMaterial.getMass() * 20L)), - GT_OreDictUnificator - .get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedCentrifuged : OrePrefixes.dust, aMaterial, 1L), - GT_OreDictUnificator.get( - OrePrefixes.dust, - GT_Utility.selectItemInList(1, aMaterial.mMacerateInto, aMaterial.mOreByProducts), - 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L)); - if (aMaterial.contains(SubTag.WASHING_MERCURY)) GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Mercury.getFluid(1000L), - GT_OreDictUnificator.get( - aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, - aMaterial, - 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - if (aMaterial.contains(SubTag.WASHING_MERCURY_99_PERCENT)) GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Mercury.getFluid(1000L), - GT_OreDictUnificator.get( - aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, - aMaterial, - 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 9900, 4000 }, - 800, - 8); - if (aMaterial.contains(SubTag.WASHING_SODIUMPERSULFATE)) GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.SodiumPersulfate.getFluid(GT_Mod.gregtechproxy.mDisableOldChemicalRecipes ? 1000L : 100L), - GT_OreDictUnificator.get( - aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, - aMaterial, - 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - for (Materials tMaterial : aMaterial.mOreByProducts) { - if (tMaterial.contains(SubTag.WASHING_MERCURY)) GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Mercury.getFluid(1000L), - GT_OreDictUnificator.get( - aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, - aMaterial, - 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial.mMacerateInto, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); - if (tMaterial.contains(SubTag.WASHING_MERCURY_99_PERCENT)) GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Mercury.getFluid(1000L), - GT_OreDictUnificator.get( - aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, - aMaterial, - 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial.mMacerateInto, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 9900, 4000 }, - 800, - 8); - if (tMaterial.contains(SubTag.WASHING_SODIUMPERSULFATE)) GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.SodiumPersulfate.getFluid(GT_Mod.gregtechproxy.mDisableOldChemicalRecipes ? 1000L : 100L), + OrePrefixes prefix = aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedCentrifuged : OrePrefixes.dust; + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs( + GT_OreDictUnificator.get(prefix, aMaterial, 1L), GT_OreDictUnificator.get( - aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, - aMaterial, + OrePrefixes.dust, + GT_Utility.selectItemInList(1, aMaterial.mMacerateInto, aMaterial.mOreByProducts), 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial.mMacerateInto, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), - new int[] { 10000, 7000, 4000 }, - 800, - 8); + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L)) + .outputChances(10000, 1111, 10000) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(48) + .addTo(sThermalCentrifugeRecipes); + + addChemicalBathRecipes(aMaterial, aStack, aPrefix); + + for (Materials tMaterial : aMaterial.mOreByProducts) { + addChemicalBathRecipes(tMaterial, aStack, aPrefix); + } + } + + private void addChemicalBathRecipes(Materials material, ItemStack stack, OrePrefixes prefix) { + OrePrefixes chemicalBathPrefix = prefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified + : OrePrefixes.dustPure; + + if (material.contains(SubTag.WASHING_MERCURY)) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack)) + .itemOutputs( + GT_OreDictUnificator.get(chemicalBathPrefix, material, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, material.mMacerateInto, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L)) + .outputChances(10000, 7000, 4000) + .fluidInputs(Materials.Mercury.getFluid(1000L)) + .noFluidOutputs() + .duration(40 * SECONDS) + .eut(8) + .addTo(sChemicalBathRecipes); + } + if (material.contains(SubTag.WASHING_MERCURY_99_PERCENT)) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack)) + .itemOutputs( + GT_OreDictUnificator.get(chemicalBathPrefix, material, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, material.mMacerateInto, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L)) + .outputChances(10000, 9900, 4000) + .fluidInputs(Materials.Mercury.getFluid(1000L)) + .noFluidOutputs() + .duration(40 * SECONDS) + .eut(8) + .addTo(sChemicalBathRecipes); + } + if (material.contains(SubTag.WASHING_SODIUMPERSULFATE)) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack)) + .itemOutputs( + GT_OreDictUnificator.get(chemicalBathPrefix, material, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, material.mMacerateInto, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L)) + .outputChances(10000, 7000, 4000) + .fluidInputs(Materials.SodiumPersulfate.getFluid(100L)) + .noFluidOutputs() + .duration(40 * SECONDS) + .eut(8) + .addTo(sChemicalBathRecipes); } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java index e7f2f52de0..758ffcd3b9 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDust.java @@ -1,5 +1,10 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import java.util.ArrayList; import net.minecraft.item.ItemStack; @@ -9,7 +14,6 @@ import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_RecipeRegistrator; import gregtech.api.util.GT_Utility; @@ -78,9 +82,15 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr } else if (!aMaterial.contains(SubTag.NO_WORKING)) { if ((!OrePrefixes.block.isIgnored(aMaterial)) && (null == GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L))) { - GT_ModHandler.addCompressionRecipe( - GT_Utility.copyAmount(9L, aStack), - GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L)); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(9L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); } // This is so disgustingly bad. if (((OrePrefixes.block.isIgnored(aMaterial)) @@ -95,9 +105,17 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr && (aMaterial != Materials.Paper) && (aMaterial != MaterialsUEVplus.TranscendentMetal) && (aMaterial != Materials.Clay)) { - GT_ModHandler.addCompressionRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L)); + // compressor recipe + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + } } } if ((aMaterial.mMaterialList.size() > 0) && ((aMaterial.mExtraData & 0x3) != 0)) { @@ -152,35 +170,41 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr break; } } - if ((aMaterial.mExtraData & 0x1) != 0) GT_Values.RA.addElectrolyzerRecipe( - GT_Utility.copyAmount(tItemAmount, aStack), - tCapsuleCount > 0L ? ItemList.Cell_Empty.get(tCapsuleCount) : null, - null, - tFluid, - tList.size() < 1 ? null : tList.get(0), - tList.size() < 2 ? null : tList.get(1), - tList.size() < 3 ? null : tList.get(2), - tList.size() < 4 ? null : tList.get(3), - tList.size() < 5 ? null : tList.get(4), - tList.size() < 6 ? null : tList.get(5), - null, - (int) Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount)), - Math.min(4, tList.size()) * 30); + if ((aMaterial.mExtraData & 0x1) != 0) { + ItemStack cells = tCapsuleCount > 0L ? ItemList.Cell_Empty.get(tCapsuleCount) : null; + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(tItemAmount, aStack), cells) + .itemOutputs( + tList.size() < 1 ? null : tList.get(0), + tList.size() < 2 ? null : tList.get(1), + tList.size() < 3 ? null : tList.get(2), + tList.size() < 4 ? null : tList.get(3), + tList.size() < 5 ? null : tList.get(4), + tList.size() < 6 ? null : tList.get(5)) + .noFluidInputs() + .fluidOutputs(tFluid) + .duration(Math.max(1L, Math.abs(aMaterial.getProtons() * 2L * tItemAmount))) + .eut(Math.min(4, tList.size()) * 30) + .addTo(sElectrolyzerRecipes); + } if ((aMaterial.mExtraData & 0x2) != 0) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(tItemAmount, aStack), - tCapsuleCount > 0L ? ItemList.Cell_Empty.get(tCapsuleCount) : null, - null, - tFluid, - tList.size() < 1 ? null : tList.get(0), - tList.size() < 2 ? null : tList.get(1), - tList.size() < 3 ? null : tList.get(2), - tList.size() < 4 ? null : tList.get(3), - tList.size() < 5 ? null : tList.get(4), - tList.size() < 6 ? null : tList.get(5), - null, - (int) Math.max(1L, Math.abs(aMaterial.getMass() * 4L * tItemAmount)), - Math.min(4, tList.size()) * 5); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_Utility.copyAmount(tItemAmount, aStack), + tCapsuleCount > 0L ? ItemList.Cell_Empty.get(tCapsuleCount) : null) + .itemOutputs( + tList.size() < 1 ? null : tList.get(0), + tList.size() < 2 ? null : tList.get(1), + tList.size() < 3 ? null : tList.get(2), + tList.size() < 4 ? null : tList.get(3), + tList.size() < 5 ? null : tList.get(4), + tList.size() < 6 ? null : tList.get(5)) + .noFluidInputs() + .fluidOutputs(tFluid) + .duration(Math.max(1L, Math.abs(aMaterial.getMass() * 4L * tItemAmount))) + .eut(Math.min(4, tList.size()) * 5) + .addTo(sCentrifugeRecipes); } } } @@ -237,7 +261,7 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr case "Mercury": break; case "Oilsands": - GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe( + sCentrifugeRecipes.addRecipe( true, new ItemStack[] { GT_Utility.copyAmount(1L, aStack) }, null, @@ -374,90 +398,75 @@ public class ProcessingDust implements gregtech.api.interfaces.IOreRecipeRegistr if (tImpureStack == null) { tImpureStack = GT_OreDictUnificator.get(OrePrefixes.cell, tByProduct, 1L); if (tImpureStack == null) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), - null, - null, - null, - null, - null, - (int) Math.max(1L, aMaterial.getMass())); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, aMaterial.getMass())) + .eut(5) + .addTo(sCentrifugeRecipes); } else { FluidStack tFluid = GT_Utility.getFluidForFilledItem(tImpureStack, true); if (tFluid == null) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(9L, aStack), - 1, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 9L), - tImpureStack, - null, - null, - null, - null, - (int) Math.max(1L, aMaterial.getMass() * 72L)); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(9L, aStack), ItemList.Cell_Empty.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 9L), + tImpureStack) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, aMaterial.getMass() * 72L)) + .eut(5) + .addTo(sCentrifugeRecipes); } else { tFluid.amount /= 10; - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - null, - null, - tFluid, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), - null, - null, - null, - null, - null, - null, - (int) Math.max(1L, aMaterial.getMass() * 8L), - 5); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L)) + .noFluidInputs() + .fluidOutputs(tFluid) + .duration(Math.max(1L, aMaterial.getMass() * 8L)) + .eut(5) + .addTo(sCentrifugeRecipes); } } } else { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(9L, aStack), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 9L), - tImpureStack, - null, - null, - null, - null, - (int) Math.max(1L, aMaterial.getMass() * 72L)); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(9L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 9L), tImpureStack) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, aMaterial.getMass() * 72L)) + .eut(5) + .addTo(sCentrifugeRecipes); } } else { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(2L, aStack), - 0, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 2L), - tImpureStack, - null, - null, - null, - null, - (int) Math.max(1L, aMaterial.getMass() * 16L)); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 2L), tImpureStack) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(1L, aMaterial.getMass() * 16L)) + .eut(5) + .addTo(sCentrifugeRecipes); } } else { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), - GT_OreDictUnificator.get( - OrePrefixes.dust, - tByProduct, - GT_OreDictUnificator.get(OrePrefixes.nugget, tByProduct, 1L), - 1L), - null, - null, - null, - null, - new int[] { 10000, 1111 }, - (int) Math.max(1L, aMaterial.getMass() * 8L), - 5); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), + GT_OreDictUnificator.get( + OrePrefixes.dust, + tByProduct, + GT_OreDictUnificator.get(OrePrefixes.nugget, tByProduct, 1L), + 1L)) + .outputChances(10000, 1111) + .noFluidInputs() + .fluidOutputs() + .duration(Math.max(1L, aMaterial.getMass() * 8L)) + .eut(5) + .addTo(sCentrifugeRecipes); } } case dustSmall -> { diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDye.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDye.java index 452a8e31fb..40594357dc 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDye.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDye.java @@ -1,5 +1,10 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; +import static gregtech.api.util.GT_RecipeConstants.UniversalChemical; + import java.util.Locale; import net.minecraft.init.Blocks; @@ -22,61 +27,68 @@ public class ProcessingDye implements IOreRecipeRegistrator { } @Override - public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, - ItemStack aStack) { - Dyes aDye = Dyes.get(aOreDictName); - if ((aDye.mIndex >= 0) && (aDye.mIndex < 16) && (GT_Utility.getContainerItem(aStack, true) == null)) { - GT_ModHandler.addAlloySmelterRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 8L), - GT_Utility.copyAmount(1L, aStack), - new ItemStack(Blocks.stained_glass, 8, 15 - aDye.mIndex), - 200, - 8, - false); - GT_ModHandler.addAlloySmelterRecipe( - new ItemStack(Blocks.glass, 8, 32767), - GT_Utility.copyAmount(1L, aStack), - new ItemStack(Blocks.stained_glass, 8, 15 - aDye.mIndex), - 200, - 8, - false); - GT_Values.RA.addMixerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Utility.getIntegratedCircuit(1), - null, - null, - Materials.Water.getFluid(216L), - FluidRegistry.getFluidStack( - "dye.watermixed." + aDye.name() - .toLowerCase(Locale.ENGLISH), - 192), - null, - 16, - 4); - GT_Values.RA.addMixerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Utility.getIntegratedCircuit(1), - null, - null, - GT_ModHandler.getDistilledWater(288L), - FluidRegistry.getFluidStack( - "dye.watermixed." + aDye.name() - .toLowerCase(Locale.ENGLISH), - 216), - null, - 16, - 4); - GT_Values.RA.addChemicalRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 2), - Materials.SulfuricAcid.getFluid(432), - FluidRegistry.getFluidStack( - "dye.chemical." + aDye.name() - .toLowerCase(Locale.ENGLISH), - 288), - GT_Values.NI, - 600, - 48); + public void registerOre(OrePrefixes prefix, Materials material, String oreDictName, String modName, + ItemStack stack) { + Dyes aDye = Dyes.get(oreDictName); + if ((aDye.mIndex >= 0) && (aDye.mIndex < 16) && (GT_Utility.getContainerItem(stack, true) == null)) { + registerAlloySmelter(stack, aDye); + registerMixer(stack, aDye); + registerChemicalReactor(stack, aDye); } } + + public void registerMixer(ItemStack stack, Dyes dye) { + String fluidName = "dye.watermixed." + dye.name() + .toLowerCase(Locale.ENGLISH); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs() + .fluidInputs(Materials.Water.getFluid(216L)) + .fluidOutputs(FluidRegistry.getFluidStack(fluidName, 192)) + .duration(16 * TICKS) + .eut(4) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs() + .fluidInputs(GT_ModHandler.getDistilledWater(288L)) + .fluidOutputs(FluidRegistry.getFluidStack(fluidName, 216)) + .duration(16 * TICKS) + .eut(4) + .addTo(sMixerRecipes); + } + + public void registerAlloySmelter(ItemStack stack, Dyes dye) { + GT_ModHandler.addAlloySmelterRecipe( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 8L), + GT_Utility.copyAmount(1L, stack), + new ItemStack(Blocks.stained_glass, 8, 15 - dye.mIndex), + 200, + 8, + false); + + GT_ModHandler.addAlloySmelterRecipe( + new ItemStack(Blocks.glass, 8, 32767), + GT_Utility.copyAmount(1L, stack), + new ItemStack(Blocks.stained_glass, 8, 15 - dye.mIndex), + 200, + 8, + false); + } + + public void registerChemicalReactor(ItemStack stack, Dyes dye) { + String fluidName = "dye.chemical." + dye.name() + .toLowerCase(Locale.ENGLISH); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Salt, 2)) + .noItemOutputs() + .fluidInputs(Materials.SulfuricAcid.getFluid(432)) + .fluidOutputs(FluidRegistry.getFluidStack(fluidName, 288)) + .duration(30 * SECONDS) + .eut(48) + .addTo(UniversalChemical); + } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java index 22eb302aae..abaf8a78bb 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java @@ -1,5 +1,6 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -20,14 +21,25 @@ public class ProcessingFoil implements IOreRecipeRegistrator { } @Override - public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, - ItemStack aStack) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L)), - GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, 4L), - (int) Math.max(aMaterial.getMass(), 1L), - calculateRecipeEU(aMaterial, 24)); + public void registerOre(OrePrefixes prefix, Materials material, String oreDictName, String modName, + ItemStack stack) { + registerBenderRecipe(material); + registerCover(stack, material); + } + + private void registerBenderRecipe(Materials material) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, GT_OreDictUnificator.get(OrePrefixes.plate, material, 4L))) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.foil, material, 4L)) + .noFluidInputs() + .noFluidOutputs() + .duration((int) Math.max(material.getMass(), 1L)) + .eut(calculateRecipeEU(material, 24)) + .addTo(sBenderRecipes); + } + + private void registerCover(ItemStack stack, Materials material) { GregTech_API - .registerCover(aStack, TextureFactory.of(aMaterial.mIconSet.mTextures[70], aMaterial.mRGBa, false), null); + .registerCover(stack, TextureFactory.of(material.mIconSet.mTextures[70], material.mRGBa, false), null); } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java index 097a637f0e..1340ca18a9 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java @@ -1,5 +1,11 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; @@ -21,67 +27,90 @@ public class ProcessingFood implements gregtech.api.interfaces.IOreRecipeRegistr ItemStack aStack) { switch (aOreDictName) { case "foodCheese" -> { - GT_Values.RA.addSlicerRecipe( - aStack, - ItemList.Shape_Slicer_Flat.get(0L), - ItemList.Food_Sliced_Cheese.get(4L), - 64, - 4); + registerSlicerRecipes(aStack); GT_OreDictUnificator.addItemData(aStack, new gregtech.api.objects.ItemData(Materials.Cheese, 3628800L)); } case "foodDough" -> { GT_ModHandler.removeFurnaceSmelting(aStack); - GT_Values.RA - .addBenderRecipe(GT_Utility.copyAmount(1L, aStack), ItemList.Food_Flat_Dough.get(1L), 16, 4); - GT_Values.RA.addMixerRecipe( - aStack, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L), - null, - null, - null, - null, - ItemList.Food_Dough_Sugar.get(2L), - 32, - 8); - GT_Values.RA.addMixerRecipe( - aStack, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cocoa, 1L), - null, - null, - null, - null, - ItemList.Food_Dough_Chocolate.get(2L), - 32, - 8); - GT_Values.RA.addMixerRecipe( - aStack, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chocolate, 1L), - null, - null, - null, - null, - ItemList.Food_Dough_Chocolate.get(2L), - 32, - 8); - GT_Values.RA.addFormingPressRecipe( - GT_Utility.copyAmount(1L, aStack), - ItemList.Shape_Mold_Bun.get(0L), - ItemList.Food_Raw_Bun.get(1L), - 128, - 4); - GT_Values.RA.addFormingPressRecipe( - GT_Utility.copyAmount(2L, aStack), - ItemList.Shape_Mold_Bread.get(0L), - ItemList.Food_Raw_Bread.get(1L), - 256, - 4); - GT_Values.RA.addFormingPressRecipe( - GT_Utility.copyAmount(3L, aStack), - ItemList.Shape_Mold_Baguette.get(0L), - ItemList.Food_Raw_Baguette.get(1L), - 384, - 4); + registerBenderRecipes(aStack); + registerMixerRecipes(aStack); + registerFormingPressRecipes(aStack); } } } + + private void registerSlicerRecipes(ItemStack stack) { + GT_Values.RA + .addSlicerRecipe(stack, ItemList.Shape_Slicer_Flat.get(0L), ItemList.Food_Sliced_Cheese.get(4L), 64, 4); + } + + private void registerBenderRecipes(ItemStack stack) { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack)) + .itemOutputs(ItemList.Food_Flat_Dough.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(16 * TICKS) + .eut(4) + .addTo(sBenderRecipes); + } + + private void registerMixerRecipes(ItemStack stack) { + GT_Values.RA.stdBuilder() + .itemInputs(stack, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) + .itemOutputs(ItemList.Food_Dough_Sugar.get(2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS) + .eut(8) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(stack, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cocoa, 1L)) + .itemOutputs(ItemList.Food_Dough_Chocolate.get(2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS) + .eut(8) + .addTo(sMixerRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(stack, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chocolate, 1L)) + .itemOutputs(ItemList.Food_Dough_Chocolate.get(2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(1 * SECONDS + 12 * TICKS) + .eut(8) + .addTo(sMixerRecipes); + } + + private void registerFormingPressRecipes(ItemStack stack) { + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, stack), ItemList.Shape_Mold_Bun.get(0L)) + .itemOutputs(ItemList.Food_Raw_Bun.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(6 * SECONDS + 8 * TICKS) + .eut(4) + .addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, stack), ItemList.Shape_Mold_Bread.get(0L)) + .itemOutputs(ItemList.Food_Raw_Bread.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(12 * SECONDS + 16 * TICKS) + .eut(4) + .addTo(sPressRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, stack), ItemList.Shape_Mold_Baguette.get(0L)) + .itemOutputs(ItemList.Food_Raw_Baguette.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(19 * SECONDS + 4 * TICKS) + .eut(4) + .addTo(sPressRecipes); + } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java index 75912ddf85..e5e4822124 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingGem.java @@ -1,6 +1,14 @@ package gregtech.loaders.oreprocessing; import static gregtech.api.enums.Mods.AppliedEnergistics2; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes; +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.util.GT_RecipeBuilder.MINUTES; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -37,6 +45,7 @@ public class ProcessingGem implements gregtech.api.interfaces.IOreRecipeRegistra switch (aPrefix) { case gem -> { + // fuel recipes if (aFuelPower) { GT_Values.RA.addFuel( GT_Utility.copyAmount(1L, aStack), @@ -44,97 +53,167 @@ public class ProcessingGem implements gregtech.api.interfaces.IOreRecipeRegistra aMaterial.mFuelPower * 2, aMaterial.mFuelType); } + if (!OrePrefixes.block.isIgnored(aMaterial)) { - GT_ModHandler.addCompressionRecipe( - GT_Utility.copyAmount(9L, aStack), - GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L)); + // Compressor recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(9L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + } } + + // Smelting recipe if (!aNoSmelting) { GT_ModHandler.addSmeltingRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial.mSmeltInto, 1L)); } + if (aNoSmashing) { - GT_Values.RA.addForgeHammerRecipe( - aStack, - GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 2L), - 64, - 16); + // Forge hammer recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(aStack) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS) + .eut(16) + .addTo(sHammerRecipes); + } } else { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 16)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 24)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(2L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(3L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 3L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(4L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 4L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(5L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 5L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(9L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L), - (int) Math.max(aMaterialMass * 9L, 1L), - calculateRecipeEU(aMaterial, 96)); + // Forge hammer recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 16)) + .addTo(sHammerRecipes); + } + + // Bender recipes + { + // Plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration((int) Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 24)) + .addTo(sBenderRecipes); + + // Double plates + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + // Triple plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 3L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + // Quadruple plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(4L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 4L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + // Quintuple plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(5L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 5L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + // dense plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(9L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 9L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + } } if (aNoWorking) { if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_Values.RA.addLatheRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 2L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 16)); + // Lathe recipes + { + GT_Values.RA.addLatheRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 2L), + (int) Math.max(aMaterialMass, 1L), + calculateRecipeEU(aMaterial, 16)); + } } } else { if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) { - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 2L), - GT_Proxy.tBits, - new Object[] { "h", "X", 'X', OrePrefixes.gemFlawless.get(aMaterial) }); - GT_Values.RA.addImplosionRecipe( - GT_Utility.copyAmount(3L, aStack), - 8, - GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); - if (aMaterial.contains(SubTag.SMELTING_TO_GEM)) GT_ModHandler.addCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Proxy.tBits, - new Object[] { "XXX", "XXX", "XXX", 'X', OrePrefixes.nugget.get(aMaterial) }); - if (aSpecialRecipeReq) GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "X", "m", 'X', OrePrefixes.gem.get(aMaterial) }); + // Implosion compressor recipes + { + GT_Values.RA.addImplosionRecipe( + GT_Utility.copyAmount(3L, aStack), + 8, + GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); + } + + // Crafting recipes + { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 2L), + GT_Proxy.tBits, + new Object[] { "h", "X", 'X', OrePrefixes.gemFlawless.get(aMaterial) }); + + if (aMaterial.contains(SubTag.SMELTING_TO_GEM)) { + GT_ModHandler.addCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_Proxy.tBits, + new Object[] { "XXX", "XXX", "XXX", 'X', OrePrefixes.nugget.get(aMaterial) }); + } + + if (aSpecialRecipeReq) { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "X", "m", 'X', OrePrefixes.gem.get(aMaterial) }); + } + } } } - // GT_RecipeRegistrator.registerUsagesForMaterials(OrePrefixes.plate.get(aMaterial).toString(), - // !aNoSmashing, GT_Utility.copyAmount(1L, aStack)); switch (aMaterial.mName) { case "NULL": break; - case "Coal": - case "Charcoal": + case "Coal", "Charcoal": if (GregTech_API.sRecipeFile .get(ConfigCategories.Recipes.disabledrecipes, "torchesFromCoal", false)) { GT_ModHandler.removeRecipeDelayed( @@ -145,166 +224,268 @@ public class ProcessingGem implements gregtech.api.interfaces.IOreRecipeRegistra } break; case "CertusQuartz": - GT_Values.RA.addElectrolyzerRecipe( - aStack, - 0, - GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 1), - null, - null, - null, - null, - null, - 2000, - 30); + // Electrolyzer recipe + { + GT_Values.RA.stdBuilder() + .itemInputs(aStack) + .itemOutputs( + GT_ModHandler.getModItem(AppliedEnergistics2.ID, "item.ItemMultiMaterial", 1L, 1)) + .noFluidInputs() + .noFluidOutputs() + .duration(100 * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(sElectrolyzerRecipes); + } } + for (ItemStack is : OreDictionary.getOres("craftingLens" + aMaterial.mColor.mName.replace(" ", ""))) { // Engraver - // Recipe - // adder - is.stackSize = 0; - GT_Values.RA.addLaserEngraverRecipe( - GT_Utility.copyAmount(3L, aStack), - is, - GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 1L), - 1200, - 480); + // Laser engraver recipes + { + is.stackSize = 0; + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack), is) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(60 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sLaserEngraverRecipes); + + } } } case gemChipped -> { - if (aFuelPower) GT_Values.RA - .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower / 2, aMaterial.mFuelType); - if (!aNoWorking) { - GT_Values.RA.addLatheRecipe( + // Fuel recipes + if (aFuelPower) { + GT_Values.RA.addFuel( GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - 8); + null, + aMaterial.mFuelPower / 2, + aMaterial.mFuelType); + } + + if (!aNoWorking) { + // Lathe recipes + { + GT_Values.RA.addLatheRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 1L), + (int) Math.max(aMaterialMass, 1L), + 8); + } + if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) { - GT_Values.RA.addImplosionRecipe( - GT_Utility.copyAmount(3L, aStack), - 8, - GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, 2L), - GT_Proxy.tBits, - new Object[] { "h", "X", 'X', OrePrefixes.gemFlawed.get(aMaterial) }); - if (aSpecialRecipeReq) GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "X", "m", 'X', OrePrefixes.gemChipped.get(aMaterial) }); + // Implosion compressor recipes + { + GT_Values.RA.addImplosionRecipe( + GT_Utility.copyAmount(3L, aStack), + 8, + GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); + } + + // Crafting recipes + { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, 2L), + GT_Proxy.tBits, + new Object[] { "h", "X", 'X', OrePrefixes.gemFlawed.get(aMaterial) }); + if (aSpecialRecipeReq) { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "X", "m", 'X', OrePrefixes.gemChipped.get(aMaterial) }); + } + } } } for (ItemStack is : OreDictionary.getOres("craftingLens" + aMaterial.mColor.mName.replace(" ", ""))) { // Engraver - // Recipe - // adder is.stackSize = 0; - GT_Values.RA.addLaserEngraverRecipe( - GT_Utility.copyAmount(3L, aStack), - is, - GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 1L), - 600, - 30); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack), is) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(30 * SECONDS) + .eut(30) + .addTo(sLaserEngraverRecipes); + } } case gemExquisite -> { - if (aFuelPower) GT_Values.RA - .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower * 8, aMaterial.mFuelType); + // Fuel recipes + if (aFuelPower) { + GT_Values.RA.addFuel( + GT_Utility.copyAmount(1L, aStack), + null, + aMaterial.mFuelPower * 8, + aMaterial.mFuelType); + } + if (!aNoWorking) { - if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) - if (aSpecialRecipeReq) GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 4L), - GT_Proxy.tBits, - new Object[] { "X", "m", 'X', OrePrefixes.gemExquisite.get(aMaterial) }); + if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) { + // Crafting recipes + { + if (aSpecialRecipeReq) { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 4L), + GT_Proxy.tBits, + new Object[] { "X", "m", 'X', OrePrefixes.gemExquisite.get(aMaterial) }); + } + } + } + } + + // Forge hammer recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(aStack) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS) + .eut(16) + .addTo(sHammerRecipes); } - GT_Values.RA.addForgeHammerRecipe( - aStack, - GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 2L), - 64, - 16); } case gemFlawed -> { - if (aFuelPower) GT_Values.RA - .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower, aMaterial.mFuelType); + // fuel recipes + if (aFuelPower) { + GT_Values.RA + .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower, aMaterial.mFuelType); + } + if (!aNoWorking) { - GT_Values.RA.addLatheRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 2L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - 12); + // Lathe recipes + { + GT_Values.RA.addLatheRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(OrePrefixes.bolt, aMaterial, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 1L), + (int) Math.max(aMaterialMass, 1L), + 12); + } + if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) { - GT_Values.RA.addImplosionRecipe( - GT_Utility.copyAmount(3L, aStack), - 8, - GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 2L), - GT_Proxy.tBits, - new Object[] { "h", "X", 'X', OrePrefixes.gem.get(aMaterial) }); - if (aSpecialRecipeReq) GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 2L), - GT_Proxy.tBits, - new Object[] { "X", "m", 'X', OrePrefixes.gemFlawed.get(aMaterial) }); + // Implosion compressor recipes + { + GT_Values.RA.addImplosionRecipe( + GT_Utility.copyAmount(3L, aStack), + 8, + GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); + } + + // Crafting recipes + { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.gemFlawed, aMaterial, 2L), + GT_Proxy.tBits, + new Object[] { "h", "X", 'X', OrePrefixes.gem.get(aMaterial) }); + if (aSpecialRecipeReq) { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 2L), + GT_Proxy.tBits, + new Object[] { "X", "m", 'X', OrePrefixes.gemFlawed.get(aMaterial) }); + } + } } } - GT_Values.RA.addForgeHammerRecipe( - aStack, - GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, 2L), - 64, - 16); + GT_Values.RA.stdBuilder() + .itemInputs(aStack) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gemChipped, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS) + .eut(16) + .addTo(sHammerRecipes); + for (ItemStack is : OreDictionary.getOres("craftingLens" + aMaterial.mColor.mName.replace(" ", ""))) { // Engraver - // Recipe - // adder + is.stackSize = 0; - GT_Values.RA.addLaserEngraverRecipe( - GT_Utility.copyAmount(3L, aStack), - is, - GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L), - 600, - 120); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack), is) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(30 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sLaserEngraverRecipes); + } } case gemFlawless -> { - if (aFuelPower) GT_Values.RA - .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower * 4, aMaterial.mFuelType); - if (!aNoWorking) { - GT_Values.RA.addLatheRecipe( + + // Fuel recipes + if (aFuelPower) { + GT_Values.RA.addFuel( GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L), - GT_OreDictUnificator - .getDust(aMaterial, aPrefix.mMaterialAmount - OrePrefixes.stickLong.mMaterialAmount), - (int) Math.max(aMaterialMass * 5L, 1L), - 16); + null, + aMaterial.mFuelPower * 4, + aMaterial.mFuelType); + } + + if (!aNoWorking) { + // Lathe recipes + { + GT_Values.RA.addLatheRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L), + GT_OreDictUnificator + .getDust(aMaterial, aPrefix.mMaterialAmount - OrePrefixes.stickLong.mMaterialAmount), + (int) Math.max(aMaterialMass * 5L, 1L), + 16); + } + if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) { - GT_Values.RA.addImplosionRecipe( - GT_Utility.copyAmount(3L, aStack), - 8, - GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 2L), - GT_Proxy.tBits, - new Object[] { "h", "X", 'X', OrePrefixes.gemExquisite.get(aMaterial) }); - if (aSpecialRecipeReq) GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 2L), - GT_Proxy.tBits, - new Object[] { "X", "m", 'X', OrePrefixes.gemFlawless.get(aMaterial) }); + // Implosion compressor recipes + { + GT_Values.RA.addImplosionRecipe( + GT_Utility.copyAmount(3L, aStack), + 8, + GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2)); + } + + // Crafting recipes + { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.gemFlawless, aMaterial, 2L), + GT_Proxy.tBits, + new Object[] { "h", "X", 'X', OrePrefixes.gemExquisite.get(aMaterial) }); + if (aSpecialRecipeReq) { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 2L), + GT_Proxy.tBits, + new Object[] { "X", "m", 'X', OrePrefixes.gemFlawless.get(aMaterial) }); + } + } } } - GT_Values.RA - .addForgeHammerRecipe(aStack, GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 2L), 64, 16); + GT_Values.RA.stdBuilder() + .itemInputs(aStack) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gem, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(3 * SECONDS + 4 * TICKS) + .eut(16) + .addTo(sHammerRecipes); + for (ItemStack is : OreDictionary.getOres("craftingLens" + aMaterial.mColor.mName.replace(" ", ""))) { // Engraver - // Recipe - // adder + is.stackSize = 0; - GT_Values.RA.addLaserEngraverRecipe( - GT_Utility.copyAmount(3L, aStack), - is, - GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, 1L), - 2400, - 2000); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack), is) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.gemExquisite, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * MINUTES) + .eut(2000) + .addTo(sLaserEngraverRecipes); } } default -> {} diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java index 0fd5d9e42e..324c21d3aa 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingIngot.java @@ -1,5 +1,7 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -34,12 +36,15 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist switch (aPrefix) { case ingot: + // Fuel recipe if (aMaterial.mFuelPower > 0) { GT_Values.RA .addFuel(GT_Utility.copyAmount(1L, aStack), null, aMaterial.mFuelPower, aMaterial.mFuelType); } - if (aMaterial.mStandardMoltenFluid != null) { - if (!(aMaterial == Materials.AnnealedCopper || aMaterial == Materials.WroughtIron)) { + if (aMaterial.mStandardMoltenFluid != null + && !(aMaterial == Materials.AnnealedCopper || aMaterial == Materials.WroughtIron)) { + // Fluid solidifier recipes + { GT_Values.RA.addFluidSolidifierRecipe( ItemList.Shape_Mold_Ingot.get(0L), aMaterial.getMolten(144L), @@ -47,7 +52,10 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist 32, calculateRecipeEU(aMaterial, 8)); } + } + // Reverse recipes + { GT_RecipeRegistrator.registerReverseFluidSmelting(aStack, aMaterial, aPrefix.mMaterialAmount, null); GT_RecipeRegistrator .registerReverseMacerating(aStack, aMaterial, aPrefix.mMaterialAmount, null, null, null, false); @@ -60,167 +68,241 @@ public class ProcessingIngot implements gregtech.api.interfaces.IOreRecipeRegist null, null); } - ItemStack tStack; - if ((null != (tStack = GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L))) - && ((aMaterial.mBlastFurnaceRequired) || aNoSmelting)) { + } + + ItemStack tStack = GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L); + if ((tStack != null) && ((aMaterial.mBlastFurnaceRequired) || aNoSmelting)) { GT_ModHandler.removeFurnaceSmelting(tStack); } if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial) - && !aMaterial.contains(SubTag.NO_WORKING)) { - if (!aMaterial.contains(SubTag.SMELTING_TO_GEM)) if ((aMaterial.contains(SubTag.MORTAR_GRINDABLE)) - && (GregTech_API.sRecipeFile.get(ConfigCategories.Tools.mortar, aMaterial.mName, true))) - GT_ModHandler.addShapelessCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { ToolDictNames.craftingToolMortar, OrePrefixes.ingot.get(aMaterial) }); + && !aMaterial.contains(SubTag.NO_WORKING) + && !aMaterial.contains(SubTag.SMELTING_TO_GEM) + && aMaterial.contains(SubTag.MORTAR_GRINDABLE) + && GregTech_API.sRecipeFile.get(ConfigCategories.Tools.mortar, aMaterial.mName, true)) { + GT_ModHandler.addShapelessCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { ToolDictNames.craftingToolMortar, OrePrefixes.ingot.get(aMaterial) }); } if (!aNoSmashing) { + // Forge hammer recipes if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(3L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 16)); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 16)) + .addTo(sHammerRecipes); } - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 24)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(2L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(3L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 3L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(4L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 4L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(5L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 5L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(9L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L), - (int) Math.max(aMaterialMass * 9L, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Utility.getIntegratedCircuit(10), - GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, 4L), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 24)); - } + // Bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 24)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 3L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(4L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 4L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(5L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 5L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(9L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 9L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(10)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, 4L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 24)) + .addTo(sBenderRecipes); + } + } break; + case ingotDouble: if (!aNoSmashing) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(2L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 96)); + // bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + } // Enable crafting with hammer if tier is < IV. - if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - if (aSpecialRecipeReq && GregTech_API.sRecipeFile + if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV && aSpecialRecipeReq + && GregTech_API.sRecipeFile .get(ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) { - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotDouble, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "I", "I", "h", 'I', OrePrefixes.ingot.get(aMaterial) }); - } + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.ingotDouble, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "I", "I", "h", 'I', OrePrefixes.ingot.get(aMaterial) }); } } break; + case ingotTriple: if (!aNoSmashing) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 96)); - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(3L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L), - (int) Math.max(aMaterialMass * 3L, 1L), - calculateRecipeEU(aMaterial, 96)); - if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - if (aSpecialRecipeReq && GregTech_API.sRecipeFile + // Bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 3L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + } + + if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV && aSpecialRecipeReq + && GregTech_API.sRecipeFile .get(ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) { - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotTriple, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "I", "B", "h", 'I', OrePrefixes.ingotDouble.get(aMaterial), 'B', - OrePrefixes.ingot.get(aMaterial) }); - } + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.ingotTriple, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "I", "B", "h", 'I', OrePrefixes.ingotDouble.get(aMaterial), 'B', + OrePrefixes.ingot.get(aMaterial) }); } } break; + case ingotQuadruple: if (!aNoSmashing) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 96)); + // Bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + } // If tier < IV add manual crafting. - if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - if (aSpecialRecipeReq && GregTech_API.sRecipeFile + if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV && aSpecialRecipeReq + && GregTech_API.sRecipeFile .get(ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) { - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotQuadruple, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "I", "B", "h", 'I', OrePrefixes.ingotTriple.get(aMaterial), 'B', - OrePrefixes.ingot.get(aMaterial) }); - } + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.ingotQuadruple, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "I", "B", "h", 'I', OrePrefixes.ingotTriple.get(aMaterial), 'B', + OrePrefixes.ingot.get(aMaterial) }); } } break; + case ingotQuintuple: if (!aNoSmashing) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L), - (int) Math.max(aMaterialMass, 1L), - calculateRecipeEU(aMaterial, 96)); + // Bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); + } - if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - if (aSpecialRecipeReq && GregTech_API.sRecipeFile + // Crafting recipes + if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV && aSpecialRecipeReq + && GregTech_API.sRecipeFile .get(ConfigCategories.Tools.hammermultiingot, aMaterial.toString(), true)) { - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.ingotQuintuple, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "I", "B", "h", 'I', OrePrefixes.ingotQuadruple.get(aMaterial), 'B', - OrePrefixes.ingot.get(aMaterial) }); - } + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.ingotQuintuple, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "I", "B", "h", 'I', OrePrefixes.ingotQuadruple.get(aMaterial), 'B', + OrePrefixes.ingot.get(aMaterial) }); } } break; + case ingotHot: if (aMaterial.mAutoGenerateVacuumFreezerRecipes) { - GT_Values.RA.addVacuumFreezerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L), - (int) Math.max(aMaterialMass * 3L, 1L)); - break; + // Vacuum freezer recipes + { + GT_Values.RA.addVacuumFreezerRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L), + (int) Math.max(aMaterialMass * 3L, 1L)); + } } + break; + default: break; } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java index 86b3caacbb..3d3b0547d9 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.item.ItemStack; import gregtech.api.GregTech_API; @@ -7,6 +10,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.Textures; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.ITexture; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_OreDictUnificator; @@ -35,11 +39,16 @@ public class ProcessingLens implements gregtech.api.interfaces.IOreRecipeRegistr 2400, 16); } - case "ChromaticGlass" -> GT_Values.RA.addCompressorRecipe( - GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 16L), - GT_OreDictUnificator.get(OrePrefixes.lens, aMaterial, 1L), - 600 * 20, - 1966080); + case "ChromaticGlass" -> { + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 16L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.lens, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(600 * SECONDS) + .eut(TierEU.RECIPE_UHV) + .addTo(sCompressorRecipes); + } default -> { GT_Values.RA.addLatheRecipe( GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java index 0f592f6711..b971bc819f 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLog.java @@ -1,6 +1,10 @@ package gregtech.loaders.oreprocessing; import static gregtech.api.enums.Mods.Railcraft; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -22,20 +26,20 @@ public class ProcessingLog implements gregtech.api.interfaces.IOreRecipeRegistra public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { if (aOreDictName.equals("logRubber")) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Utility.getIntegratedCircuit(2), - null, - Materials.Methane.getGas(60L), - ItemList.IC2_Resin.get(1L), - GT_ModHandler.getIC2Item("plantBall", 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), - GT_Values.NI, - GT_Values.NI, - new int[] { 5000, 3750, 2500, 2500 }, - 200, - 20); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(2)) + .itemOutputs( + ItemList.IC2_Resin.get(1L), + GT_ModHandler.getIC2Item("plantBall", 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L)) + .outputChances(5000, 3750, 2500, 2500) + .noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(60L)) + .duration(10 * SECONDS) + .eut(20) + .addTo(sCentrifugeRecipes); + GT_ModHandler.addSawmillRecipe( GT_Utility.copyAmount(1L, aStack), ItemList.IC2_Resin.get(1L), @@ -50,20 +54,15 @@ public class ProcessingLog implements gregtech.api.interfaces.IOreRecipeRegistra 33, false); } else { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Utility.getIntegratedCircuit(1), - null, - Materials.Methane.getGas(60L), - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - GT_Values.NI, - null, - 200, - 20); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack), GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs() + .noFluidInputs() + .fluidOutputs(Materials.Methane.getGas(60L)) + .duration(10 * SECONDS) + .eut(20) + .addTo(sCentrifugeRecipes); + GT_ModHandler.addPulverisationRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 6L), @@ -97,15 +96,15 @@ public class ProcessingLog implements gregtech.api.interfaces.IOreRecipeRegistra ItemList.FR_Casing_Impregnated.get(1L), 64, 16); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.Creosote.getFluid(1000L), - GT_ModHandler.getModItem(Railcraft.ID, "cube", 1L, 8), - null, - null, - null, - 16, - 16); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_ModHandler.getModItem(Railcraft.ID, "cube", 1L, 8)) + .fluidInputs(Materials.Creosote.getFluid(1000L)) + .noFluidOutputs() + .duration(16 * TICKS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); short aMeta = (short) aStack.getItemDamage(); diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java index a74aa229a5..809ce8894f 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java @@ -1,5 +1,9 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import java.util.ArrayList; import net.minecraft.item.ItemStack; @@ -9,6 +13,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; +import gregtech.api.enums.TierEU; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -35,20 +40,15 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra || (aPrefix == OrePrefixes.oreDense); if (aMaterial == Materials.Oilsands) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(1L, aStack), - null, - null, - Materials.OilHeavy.getFluid(tIsRich ? 4000L : 2000L), - new ItemStack(net.minecraft.init.Blocks.sand, 1, 0), - null, - null, - null, - null, - null, - new int[] { tIsRich ? 2000 : 4000 }, - tIsRich ? 600 : 300, - 30); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(new ItemStack(net.minecraft.init.Blocks.sand, 1, 0)) + .outputChances(tIsRich ? 2000 : 4000) + .noFluidInputs() + .fluidOutputs(Materials.OilHeavy.getFluid(tIsRich ? 4000L : 2000L)) + .duration(tIsRich ? 30 * SECONDS : 15 * SECONDS) + .eut(TierEU.RECIPE_LV) + .addTo(sCentrifugeRecipes); } else { registerStandardOreRecipes( aPrefix, @@ -216,11 +216,15 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra } if (tCrushed != null) { - GT_Values.RA.addForgeHammerRecipe( - aOreStack, - GT_Utility.copy(GT_Utility.copyAmount(tCrushed.stackSize, tGem), tCrushed), - 16, - 10); + GT_Values.RA.stdBuilder() + .itemInputs(aOreStack) + .itemOutputs(GT_Utility.copy(GT_Utility.copyAmount(tCrushed.stackSize, tGem), tCrushed)) + .noFluidInputs() + .noFluidOutputs() + .duration(10) + .eut(16) + .addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( aOreStack, GT_Utility.mul(2L, tCrushed), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java index e3b0a34016..3c0e4cb29a 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOrePoor.java @@ -1,10 +1,13 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.SubTag; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -38,11 +41,15 @@ public class ProcessingOrePoor implements gregtech.api.interfaces.IOreRecipeRegi break; } if (aMaterial != null) { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, aMultiplier), - 16, - 10); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, aMultiplier)) + .noFluidInputs() + .noFluidOutputs() + .duration(10) + .eut(16) + .addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.dustTiny, aMaterial, 2 * aMultiplier), @@ -52,7 +59,7 @@ public class ProcessingOrePoor implements gregtech.api.interfaces.IOreRecipeRegi GT_OreDictUnificator.getDust(aPrefix.mSecondaryMaterial), 100, true); - if (aMaterial.contains(gregtech.api.enums.SubTag.NO_SMELTING)) GT_ModHandler.addSmeltingRecipe( + if (aMaterial.contains(SubTag.NO_SMELTING)) GT_ModHandler.addSmeltingRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.nugget, aMaterial.mDirectSmelting, aMultiplier)); } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java index f380b4ebdf..e3bb175d29 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPlate.java @@ -7,6 +7,7 @@ import static gregtech.api.enums.GT_Values.RA; import static gregtech.api.enums.GT_Values.W; import static gregtech.api.util.GT_ModHandler.RecipeBits.BUFFERED; import static gregtech.api.util.GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import static gregtech.common.GT_Proxy.tBits; @@ -162,12 +163,15 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist GT_ModHandler.removeRecipeByOutputDelayed(aStack); if (!aNoSmashing) { - - RA.addBenderRecipe( - GT_Utility.copyAmount(2L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 96)); + // 2 double -> 1 quadruple plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); if (GregTech_API.sRecipeFile.get( gregtech.api.enums.ConfigCategories.Tools.hammerdoubleplate, @@ -184,21 +188,17 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist new Object[] { "I", "B", "h", // craftingToolHardHammer 'I', aPlateStack, 'B', aPlateStack }); } - - // Only added if IC2 Forge Hammer is enabled in Recipes.cfg: B:ic2forgehammer_true=false - // GT_ModHandler.addShapelessCraftingRecipe( - // GT_Utility.copyAmount(1L, aStack), DO_NOT_CHECK_FOR_COLLISIONS | BUFFERED, new - // Object[] { - // gregtech.api.enums.ToolDictNames.craftingToolForgeHammer, aPlateStack, - // aPlateStack - // }); } - RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L), - GT_Utility.copyAmount(1L, aStack), - (int) Math.max(aMaterialMass * 2L, 1L), - calculateRecipeEU(aMaterial, 96)); + // 2 plates -> 1 double plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 2L)) + .itemOutputs(GT_Utility.copyAmount(1L, aStack)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 2L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); } else { @@ -221,11 +221,15 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist if (!aNoSmashing) { - RA.addBenderRecipe( - GT_Utility.copyAmount(3L, aStack), - GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L), - (int) Math.max(aMaterialMass * 3L, 1L), - calculateRecipeEU(aMaterial, 96)); + // 3 triple plates -> 1 dense plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 3L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); if (GregTech_API.sRecipeFile.get( gregtech.api.enums.ConfigCategories.Tools.hammertripleplate, @@ -251,11 +255,14 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist } } - RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 3L), - GT_Utility.copyAmount(1L, aStack), - (int) Math.max(aMaterialMass * 3L, 1L), - calculateRecipeEU(aMaterial, 96)); + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 3L)) + .itemOutputs(GT_Utility.copyAmount(1L, aStack)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 3L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); } else { @@ -313,11 +320,15 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist } } - RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L), - GT_Utility.copyAmount(1L, aStack), - (int) Math.max(aMaterialMass * 4L, 1L), - calculateRecipeEU(aMaterial, 96)); + // Quadruple plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L)) + .itemOutputs(GT_Utility.copyAmount(1L, aStack)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 4L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); } else { @@ -363,11 +374,15 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist } } - RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 5L), - GT_Utility.copyAmount(1L, aStack), - (int) Math.max(aMaterialMass * 5L, 1L), - calculateRecipeEU(aMaterial, 96)); + // quintuple plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 5L)) + .itemOutputs(GT_Utility.copyAmount(1L, aStack)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 5L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); } else { @@ -389,12 +404,15 @@ public class ProcessingPlate implements gregtech.api.interfaces.IOreRecipeRegist GT_ModHandler.removeRecipeByOutputDelayed(aStack); if (!aNoSmashing) { - - RA.addBenderRecipe( - GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L), - GT_Utility.copyAmount(1L, aStack), - (int) Math.max(aMaterialMass * 9L, 1L), - calculateRecipeEU(aMaterial, 96)); + // Dense plate + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 9L)) + .itemOutputs(GT_Utility.copyAmount(1L, aStack)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterialMass * 9L, 1L)) + .eut(calculateRecipeEU(aMaterial, 96)) + .addTo(sBenderRecipes); } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java index 01addd678c..c59e810e2a 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingPure.java @@ -1,5 +1,7 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; @@ -20,11 +22,15 @@ public class ProcessingPure implements gregtech.api.interfaces.IOreRecipeRegistr @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L), - 10, - 16); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.dustPure, aMaterial.mMacerateInto, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(10) + .eut(16) + .addTo(sHammerRecipes); + GT_ModHandler.addPulverisationRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get( diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSand.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSand.java index b138ba6338..b6edaa995c 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSand.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSand.java @@ -1,9 +1,13 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_OreDictUnificator; @@ -19,16 +23,16 @@ public class ProcessingSand implements gregtech.api.interfaces.IOreRecipeRegistr public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { if (aOreDictName.equals("sandOil")) { - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.copyAmount(2L, aStack), - 1, - GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oil, 1L), - new ItemStack(Blocks.sand, 1, 0), - null, - null, - null, - null, - 1000); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack), ItemList.Cell_Empty.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oil, 1L), + new ItemStack(Blocks.sand, 1, 0)) + .noFluidInputs() + .noFluidOutputs() + .duration(50 * SECONDS) + .eut(5) + .addTo(sCentrifugeRecipes); } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSaplings.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSaplings.java index dafde0e73d..b98768b69a 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSaplings.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSaplings.java @@ -1,12 +1,14 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCompressorRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; -import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -25,7 +27,16 @@ public class ProcessingSaplings implements gregtech.api.interfaces.IOreRecipeReg new int[] { 10000 }, 100, 2); - GT_ModHandler.addCompressionRecipe(GT_Utility.copyAmount(8L, aStack), ItemList.IC2_Plantball.get(1L)); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(8L, aStack)) + .itemOutputs(ItemList.IC2_Plantball.get(1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(15 * SECONDS) + .eut(2) + .addTo(sCompressorRecipes); + GT_Values.RA.addLatheRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1L), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java index 6d4ed4cfe8..6ceaea4612 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingSlab.java @@ -1,6 +1,8 @@ package gregtech.loaders.oreprocessing; import static gregtech.api.enums.Mods.Railcraft; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import net.minecraft.item.ItemStack; @@ -21,15 +23,14 @@ public class ProcessingSlab implements gregtech.api.interfaces.IOreRecipeRegistr ItemStack aStack) { if (aOreDictName.startsWith("slabWood")) { if (Railcraft.isModLoaded()) { - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(3L, aStack), - Materials.Creosote.getFluid(300L), - ItemList.RC_Tie_Wood.get(3L), - null, - null, - null, - 200, - 4); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(3L, aStack)) + .itemOutputs(ItemList.RC_Tie_Wood.get(3L)) + .fluidInputs(Materials.Creosote.getFluid(300L)) + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(4) + .addTo(sChemicalBathRecipes); } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java index a09e0ba0b2..80e7d16ff0 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStick.java @@ -1,5 +1,8 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sHammerRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -53,16 +56,26 @@ public class ProcessingStick implements gregtech.api.interfaces.IOreRecipeRegist } } if (!aMaterial.contains(gregtech.api.enums.SubTag.NO_SMASHING)) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.springSmall, aMaterial, 2L), - 100, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addForgeHammerRecipe( - GT_Utility.copyAmount(2L, aStack), - GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L), - (int) Math.max(aMaterial.getMass(), 1L), - calculateRecipeEU(aMaterial, 16)); + // bender recipe + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.springSmall, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(calculateRecipeEU(aMaterial, 8)) + .addTo(sBenderRecipes); + } + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(2L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.stickLong, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(Math.max(aMaterial.getMass(), 1L)) + .eut(calculateRecipeEU(aMaterial, 16)) + .addTo(sHammerRecipes); } GT_Values.RA.addAssemblerRecipe( GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStickLong.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStickLong.java index 29a872cc04..8136d988c3 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingStickLong.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingStickLong.java @@ -1,5 +1,7 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -46,11 +48,18 @@ public class ProcessingStickLong implements gregtech.api.interfaces.IOreRecipeRe } } if (!aMaterial.contains(SubTag.NO_SMASHING)) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.spring, aMaterial, 1L), - 200, - calculateRecipeEU(aMaterial, 16)); + // Bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.spring, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(calculateRecipeEU(aMaterial, 16)) + .addTo(sBenderRecipes); + } + if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial)) if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { GT_ModHandler.addCraftingRecipe( diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolHead.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolHead.java index c65b496649..cb05d1218d 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolHead.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolHead.java @@ -1,5 +1,7 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sPressRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import net.minecraft.item.ItemStack; @@ -1165,12 +1167,17 @@ public class ProcessingToolHead implements gregtech.api.interfaces.IOreRecipeReg 'R', OrePrefixes.ring.get(aMaterial), 'S', OrePrefixes.screw.get(aMaterial) }); } - GT_Values.RA.addFormingPressRecipe( - GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 3L), - GT_OreDictUnificator.get(OrePrefixes.screw, aMaterial, 2L), - GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 1L), - 200, - calculateRecipeEU(aMaterial, 60)); + // Turbine blades + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 3L), + GT_OreDictUnificator.get(OrePrefixes.screw, aMaterial, 2L)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(calculateRecipeEU(aMaterial, 60)) + .addTo(sPressRecipes); } } default -> {} diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java index ddb0bd46c7..3ccccd4561 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java @@ -16,8 +16,13 @@ public class ProcessingToolOther implements gregtech.api.interfaces.IOreRecipeRe @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { - if ((aMaterial != Materials.Stone) && (aMaterial != Materials.Flint)) { - if (aMaterial != Materials.Rubber) { + if ((aMaterial == Materials.Stone) || (aMaterial == Materials.Flint)) { + return; + } + + if (aMaterial != Materials.Rubber) { + // Crafting recipes + { GT_ModHandler.addCraftingRecipe( GT_MetaGenerated_Tool_01.INSTANCE .getToolWithStats(GT_MetaGenerated_Tool_01.PLUNGER, 1, aMaterial, aMaterial, null), @@ -25,8 +30,12 @@ public class ProcessingToolOther implements gregtech.api.interfaces.IOreRecipeRe new Object[] { "xRR", " SR", "S f", 'S', OrePrefixes.stick.get(aMaterial), 'R', OrePrefixes.plate.get(Materials.AnyRubber) }); } - if ((!aMaterial.contains(SubTag.WOOD)) && (!aMaterial.contains(SubTag.BOUNCY)) - && (!aMaterial.contains(SubTag.NO_SMASHING))) { + } + + if ((!aMaterial.contains(SubTag.WOOD)) && (!aMaterial.contains(SubTag.BOUNCY)) + && (!aMaterial.contains(SubTag.NO_SMASHING))) { + // Crafting recipes + { GT_ModHandler.addCraftingRecipe( GT_MetaGenerated_Tool_01.INSTANCE .getToolWithStats(GT_MetaGenerated_Tool_01.WRENCH, 1, aMaterial, aMaterial, null), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java index 4c7b10f7cb..c71069661b 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingTransforming.java @@ -1,10 +1,14 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; + import net.minecraft.item.ItemStack; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TierEU; import gregtech.api.interfaces.IOreRecipeRegistrator; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -20,103 +24,151 @@ public class ProcessingTransforming implements IOreRecipeRegistrator { @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { - if (aPrefix == OrePrefixes.plank) aPrefix = OrePrefixes.plate; + + if (aPrefix == OrePrefixes.plank) { + aPrefix = OrePrefixes.plate; + } + switch (aMaterial.mName) { - case "Wood": - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.SeedOil - .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 120L, true)), - GT_OreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.SeedOilLin - .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 80L, true)), - GT_OreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.SeedOilHemp - .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 80L, true)), - GT_OreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - break; - case "Iron": - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.FierySteel - .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 250L, true)), - GT_OreDictUnificator.get(aPrefix, Materials.FierySteel, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addPolarizerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L), - (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / 3628800L), - 16); - break; - case "WroughtIron": - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.FierySteel - .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 225L, true)), - GT_OreDictUnificator.get(aPrefix, Materials.FierySteel, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addPolarizerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L), - (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / 3628800L), - 16); - break; - case "Steel": - GT_Values.RA.addChemicalBathRecipe( - GT_Utility.copyAmount(1L, aStack), - Materials.FierySteel - .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 200L, true)), - GT_OreDictUnificator.get(aPrefix, Materials.FierySteel, 1L), - GT_Values.NI, - GT_Values.NI, - null, - 100, - 8); - GT_Values.RA.addPolarizerRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(aPrefix, Materials.SteelMagnetic, 1L), - (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / 3628800L), - 16); - break; - case "Neodymium": + case "Wood" -> + // Chemical bath recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L)) + .fluidInputs( + Materials.SeedOil + .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 120L, true))) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L)) + .fluidInputs( + Materials.SeedOilLin + .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 80L, true))) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(aPrefix, Materials.WoodSealed, 1L)) + .fluidInputs( + Materials.SeedOilHemp + .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 80L, true))) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); + + } + case "Iron" -> { + // Chemical bath recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(aPrefix, Materials.FierySteel, 1L)) + .fluidInputs( + Materials.FierySteel + .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 250L, true))) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); + } + + // Polarizer recipes + { + GT_Values.RA.addPolarizerRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L), + (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GT_Values.M), + (int) TierEU.LV / 2); + } + } + case "WroughtIron" -> { + // Chemical bath recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(aPrefix, Materials.FierySteel, 1L)) + .fluidInputs( + Materials.FierySteel + .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 225L, true))) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); + } + + // Polarizer recipes + { + GT_Values.RA.addPolarizerRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(aPrefix, Materials.IronMagnetic, 1L), + (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GT_Values.M), + (int) TierEU.LV / 2); + } + } + case "Steel" -> { + // Chemical Bath recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(aPrefix, Materials.FierySteel, 1L)) + .fluidInputs( + Materials.FierySteel + .getFluid(GT_Utility.translateMaterialToAmount(aPrefix.mMaterialAmount, 200L, true))) + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(TierEU.ULV) + .addTo(sChemicalBathRecipes); + } + + // polarizer recipes + { + GT_Values.RA.addPolarizerRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(aPrefix, Materials.SteelMagnetic, 1L), + (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GT_Values.M), + (int) TierEU.LV / 2); + } + } + case "Neodymium" -> + // Polarizer recipes + { GT_Values.RA.addPolarizerRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(aPrefix, Materials.NeodymiumMagnetic, 1L), - (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / 3628800L), - 256); - case "Samarium": + (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GT_Values.M), + (int) TierEU.HV / 2); + } + case "Samarium" -> + // Polarizer recipes + { GT_Values.RA.addPolarizerRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(aPrefix, Materials.SamariumMagnetic, 1L), - (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / 3628800L), - 4096); + (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GT_Values.M), + (int) TierEU.IV / 2); + } + + case "TengamPurified" -> + // Polarizer recipes + { + GT_Values.RA.addPolarizerRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_OreDictUnificator.get(aPrefix, Materials.TengamAttuned, 1L), + (int) Math.max(16L, aPrefix.mMaterialAmount * 128L / GT_Values.M), + (int) TierEU.RECIPE_UHV); + } + + default -> { /* NO-OP */ } } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java index 8c4ce4953c..e420017b79 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java @@ -1,5 +1,7 @@ package gregtech.loaders.oreprocessing; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sBenderRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import static gregtech.api.util.GT_Utility.calculateRecipeEU; import java.util.ArrayList; @@ -18,9 +20,8 @@ import gregtech.common.GT_Proxy; public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistrator { - private Materials[] dielectrics = { Materials.PolyvinylChloride, Materials.Polydimethylsiloxane }; - private Materials[] rubbers = { Materials.Rubber, Materials.StyreneButadieneRubber, Materials.Silicone }; - private Materials[] syntheticRubbers = { Materials.StyreneButadieneRubber, Materials.Silicone }; + private final Materials[] dielectrics = { Materials.PolyvinylChloride, Materials.Polydimethylsiloxane }; + private final Materials[] syntheticRubbers = { Materials.StyreneButadieneRubber, Materials.Silicone }; private static Object tt; @@ -48,135 +49,167 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr int cableWidth; OrePrefixes correspondingCable; + switch (aPrefix) { case wireGt01 -> { cableWidth = 1; correspondingCable = OrePrefixes.cableGt01; if (!aMaterial.contains(SubTag.NO_SMASHING)) { - GT_Values.RA.addBenderRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_OreDictUnificator.get(OrePrefixes.springSmall, aMaterial, 2L), - 100, + // Bender recipes + { + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.copyAmount(1L, aStack)) + .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.springSmall, aMaterial, 2L)) + .noFluidInputs() + .noFluidOutputs() + .duration(5 * SECONDS) + .eut(calculateRecipeEU(aMaterial, 8)) + .addTo(sBenderRecipes); + } + + // Wiremill Recipes + { + GT_Values.RA.addWiremillRecipe( + GT_Utility.copyAmount(1L, aStack), + GT_Utility.getIntegratedCircuit(1), + GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 4L), + 200, + calculateRecipeEU(aMaterial, 8)); + } + } + + // crafting recipe + if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial) + && !aMaterial.contains(SubTag.NO_WORKING) + && (aMaterial.getProcessingMaterialTierEU() < TierEU.IV)) { + GT_ModHandler.addCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L), + GT_Proxy.tBits, + new Object[] { "Xx", 'X', OrePrefixes.plate.get(aMaterial) }); + + } + + // Assembler recipes + { + GT_Values.RA.addAssemblerRecipe( + GT_Utility.copyAmount(2L, aStack), + GT_Utility.getIntegratedCircuit(2), + GT_OreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L), + 150, calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addWiremillRecipe( - GT_Utility.copyAmount(1L, aStack), - GT_Utility.getIntegratedCircuit(1), - GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 4L), + GT_Values.RA.addAssemblerRecipe( + GT_Utility.copyAmount(4L, aStack), + GT_Utility.getIntegratedCircuit(4), + GT_OreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L), 200, calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + GT_Utility.copyAmount(8L, aStack), + GT_Utility.getIntegratedCircuit(8), + GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L), + 300, + calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + GT_Utility.copyAmount(12L, aStack), + GT_Utility.getIntegratedCircuit(12), + GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L), + 400, + calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + GT_Utility.copyAmount(16L, aStack), + GT_Utility.getIntegratedCircuit(16), + GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L), + 500, + calculateRecipeEU(aMaterial, 8)); } - if (aMaterial.mUnificatable && (aMaterial.mMaterialInto == aMaterial) - && !aMaterial.contains(SubTag.NO_WORKING)) { - if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_ModHandler.addCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L), - GT_Proxy.tBits, - new Object[] { "Xx", 'X', OrePrefixes.plate.get(aMaterial) }); - } - } - GT_Values.RA.addAssemblerRecipe( - GT_Utility.copyAmount(2L, aStack), - GT_Utility.getIntegratedCircuit(2), - GT_OreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L), - 150, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - GT_Utility.copyAmount(4L, aStack), - GT_Utility.getIntegratedCircuit(4), - GT_OreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L), - 200, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - GT_Utility.copyAmount(8L, aStack), - GT_Utility.getIntegratedCircuit(8), - GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L), - 300, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - GT_Utility.copyAmount(12L, aStack), - GT_Utility.getIntegratedCircuit(12), - GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L), - 400, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - GT_Utility.copyAmount(16L, aStack), - GT_Utility.getIntegratedCircuit(16), - GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L), - 500, - calculateRecipeEU(aMaterial, 8)); } case wireGt02 -> { cableWidth = 2; correspondingCable = OrePrefixes.cableGt02; if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_ModHandler.addShapelessCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 2L), - new Object[] { aOreDictName }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial) }); + // Shapeless crafting recipes + { + GT_ModHandler.addShapelessCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 2L), + new Object[] { aOreDictName }); + + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial) }); + } } } case wireGt04 -> { cableWidth = 4; correspondingCable = OrePrefixes.cableGt04; if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_ModHandler.addShapelessCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 4L), - new Object[] { aOreDictName }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), - OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial) }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt02.get(aMaterial), OrePrefixes.wireGt02.get(aMaterial) }); + // Shapeless crafting recipes + { + GT_ModHandler.addShapelessCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 4L), + new Object[] { aOreDictName }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), + OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial) }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt02.get(aMaterial), OrePrefixes.wireGt02.get(aMaterial) }); + } } } case wireGt08 -> { cableWidth = 8; correspondingCable = OrePrefixes.cableGt08; if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_ModHandler.addShapelessCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 8L), - new Object[] { aOreDictName }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), - OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), - OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), - OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial) }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt04.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial) }); + // Shapeless crafting recipes + { + GT_ModHandler.addShapelessCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 8L), + new Object[] { aOreDictName }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), + OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), + OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), + OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial) }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt04.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial) }); + } } } case wireGt12 -> { cableWidth = 12; correspondingCable = OrePrefixes.cableGt12; if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - GT_ModHandler.addShapelessCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 12L), - new Object[] { aOreDictName }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt08.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial) }); + // Shapeless crafting recipes + { + GT_ModHandler.addShapelessCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 12L), + new Object[] { aOreDictName }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt08.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial) }); + } } } case wireGt16 -> { cableWidth = 16; correspondingCable = OrePrefixes.cableGt16; if (aMaterial.getProcessingMaterialTierEU() < TierEU.IV) { - - GT_ModHandler.addShapelessCraftingRecipe( - GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 16L), - new Object[] { aOreDictName }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt08.get(aMaterial), OrePrefixes.wireGt08.get(aMaterial) }); - GT_ModHandler.addShapelessCraftingRecipe( - GT_Utility.copyAmount(1L, aStack), - new Object[] { OrePrefixes.wireGt12.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial) }); + // Shapeless crafting recipes + { + GT_ModHandler.addShapelessCraftingRecipe( + GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 16L), + new Object[] { aOreDictName }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt08.get(aMaterial), OrePrefixes.wireGt08.get(aMaterial) }); + GT_ModHandler.addShapelessCraftingRecipe( + GT_Utility.copyAmount(1L, aStack), + new Object[] { OrePrefixes.wireGt12.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial) }); + } if (GT_Mod.gregtechproxy.mAE2Integration) { AE2addNewAttunement(aStack); @@ -193,26 +226,32 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr int costMultiplier = cableWidth / 4 + 1; switch (aMaterial.mName) { - case "RedAlloy": - case "Cobalt": - case "Lead": - case "Tin": - case "Zinc": - case "SolderingAlloy": + case "RedAlloy", "Cobalt", "Lead", "Tin", "Zinc", "SolderingAlloy": ArrayList<Object> craftingListRubber = new ArrayList<>(); craftingListRubber.add(aOreDictName); for (int i = 0; i < costMultiplier; i++) { craftingListRubber.add(OrePrefixes.plate.get(Materials.Rubber)); } + + // shapeless crafting + { GT_ModHandler.addShapelessCraftingRecipe( GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), craftingListRubber.toArray()); + } + + // Packer recipe + { GT_Values.RA.addBoxingRecipe( GT_Utility.copyAmount(1L, aStack), GT_OreDictUnificator.get(OrePrefixes.plate.get(Materials.Rubber), costMultiplier), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + } + + // alloy smelter recipes + { GT_Values.RA.addAlloySmelterRecipe( GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Rubber, 2L), GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L), @@ -231,22 +270,10 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), 300, 30); - case "Iron": - case "Nickel": - case "Cupronickel": - case "Copper": - case "AnnealedCopper": - case "Kanthal": - case "Gold": - case "Electrum": - case "Silver": - case "Blue Alloy": - case "Nichrome": - case "Steel": - case "BlackSteel": - case "Titanium": - case "Aluminium": - case "BlueAlloy": + } + case "Iron", "Nickel", "Cupronickel", "Copper", "AnnealedCopper", "Kanthal", "Gold", "Electrum", "Silver", "Blue Alloy", "Nichrome", "Steel", "BlackSteel", "Titanium", "Aluminium", "BlueAlloy": + // Assembler recipes + { GT_Values.RA.addAssemblerRecipe( aStack, GT_Utility.getIntegratedCircuit(24), @@ -284,7 +311,11 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr 8); } } + } + case "RedstoneAlloy": + // Assembler recipes + { GT_Values.RA.addAssemblerRecipe( aStack, GT_Utility.getIntegratedCircuit(24), @@ -322,102 +353,64 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr 8); } } + } break; default: - if (GT_Mod.gregtechproxy.mEasierIVPlusCables) { - GT_Values.RA.addAssemblerRecipe( - aStack, - GT_Utility.getIntegratedCircuit(24), - Materials.Rubber.getMolten(144 * costMultiplier), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - aStack, - GT_Utility.getIntegratedCircuit(24), - Materials.StyreneButadieneRubber.getMolten(108 * costMultiplier), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - aStack, - GT_Utility.getIntegratedCircuit(24), - Materials.Silicone.getMolten(72 * costMultiplier), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - for (Materials dielectric : dielectrics) { - for (Materials syntheticRubber : syntheticRubbers) { - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(4, aStack), - dielectric.getDust(costMultiplier) }, - syntheticRubber.getMolten(costMultiplier * 144), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 4L), - 400, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { aStack, dielectric.getDustSmall(costMultiplier) }, - syntheticRubber.getMolten(costMultiplier * 36), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - } - } - } else { - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { aStack, GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier), - GT_Utility.getIntegratedCircuit(24) }, - Materials.Silicone.getMolten(costMultiplier * 72), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA - .addAssemblerRecipe( - new ItemStack[] { aStack, + // Assembler recipes + { + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { aStack, GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier), + GT_Utility.getIntegratedCircuit(24) }, + Materials.Silicone.getMolten(costMultiplier * 72), + GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), + 100, + calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { aStack, + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier), + GT_Utility.getIntegratedCircuit(24) }, + Materials.Silicone.getMolten(costMultiplier * 72), + GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), + 100, + calculateRecipeEU(aMaterial, 8)); + for (Materials dielectric : dielectrics) { + for (Materials syntheticRubber : syntheticRubbers) { + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { GT_Utility.copyAmount(4, aStack), dielectric.getDust(costMultiplier), + GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier * 4) }, + syntheticRubber.getMolten(costMultiplier * 144), + GT_OreDictUnificator.get(correspondingCable, aMaterial, 4L), + 400, + calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { GT_Utility.copyAmount(4, aStack), dielectric.getDust(costMultiplier), GT_OreDictUnificator - .get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier), - GT_Utility.getIntegratedCircuit(24) }, - Materials.Silicone.getMolten(costMultiplier * 72), + .get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier * 4) }, + syntheticRubber.getMolten(costMultiplier * 144), + GT_OreDictUnificator.get(correspondingCable, aMaterial, 4L), + 400, + calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { aStack, dielectric.getDustSmall(costMultiplier), + GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier) }, + syntheticRubber.getMolten(costMultiplier * 36), + GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), + 100, + calculateRecipeEU(aMaterial, 8)); + GT_Values.RA.addAssemblerRecipe( + new ItemStack[] { aStack, dielectric.getDustSmall(costMultiplier), + GT_OreDictUnificator + .get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier) }, + syntheticRubber.getMolten(costMultiplier * 36), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, calculateRecipeEU(aMaterial, 8)); - for (Materials dielectric : dielectrics) { - for (Materials syntheticRubber : syntheticRubbers) { - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(4, aStack), dielectric.getDust(costMultiplier), - GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier * 4) }, - syntheticRubber.getMolten(costMultiplier * 144), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 4L), - 400, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { GT_Utility.copyAmount(4, aStack), dielectric.getDust(costMultiplier), - GT_OreDictUnificator - .get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier * 4) }, - syntheticRubber.getMolten(costMultiplier * 144), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 4L), - 400, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { aStack, dielectric.getDustSmall(costMultiplier), - GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier) }, - syntheticRubber.getMolten(costMultiplier * 36), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - GT_Values.RA.addAssemblerRecipe( - new ItemStack[] { aStack, dielectric.getDustSmall(costMultiplier), - GT_OreDictUnificator - .get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier) }, - syntheticRubber.getMolten(costMultiplier * 36), - GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), - 100, - calculateRecipeEU(aMaterial, 8)); - } } } + } break; } + // Honestly when can this machine be removed? ); GT_Values.RA.addUnboxingRecipe( GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), @@ -425,6 +418,7 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr null, 100, calculateRecipeEU(aMaterial, 8)); + if (GT_Mod.gregtechproxy.mAE2Integration) { AE2AddNetAttunementCable(aStack, correspondingCable, aMaterial); } diff --git a/src/main/java/gregtech/loaders/postload/GT_PostLoad.java b/src/main/java/gregtech/loaders/postload/GT_PostLoad.java index 24229bd852..b0c6392de4 100644 --- a/src/main/java/gregtech/loaders/postload/GT_PostLoad.java +++ b/src/main/java/gregtech/loaders/postload/GT_PostLoad.java @@ -46,6 +46,7 @@ import gregtech.common.tileentities.machines.basic.GT_MetaTileEntity_Massfabrica import ic2.api.recipe.IRecipeInput; import ic2.api.recipe.RecipeOutput; +@SuppressWarnings("deprecation") public class GT_PostLoad { public static void activateOreDictHandler() { @@ -426,7 +427,6 @@ public class GT_PostLoad { .collect(Collectors.toSet()) : new HashSet<>(Arrays.asList(Materials.values())); - @SuppressWarnings("deprecation") // stable API for MC 1.7.10 ProgressManager.ProgressBar progressBar = ProgressManager .push("Register materials", replaceVanillaItemsSet.size()); if (GT_Values.cls_enabled) { @@ -442,7 +442,6 @@ public class GT_PostLoad { doActualRegistration(m); }); } - // noinspection deprecation// stable API for MC 1.7.10 ProgressManager.pop(progressBar); // noinspection UnstableApiUsage// stable enough for project GT_Mod.GT_FML_LOGGER.info("Replaced Vanilla Materials (" + stopwatch.stop() + "). Have a Cake."); @@ -472,7 +471,6 @@ public class GT_PostLoad { return ItemList.Circuit_Integrated.getItem(); } - @SuppressWarnings("unchecked") // Overrides legacy method with raw types @Override public void displayAllReleventItems(List<ItemStack> aList) { diff --git a/src/main/java/gregtech/loaders/postload/chains/GT_BauxiteRefineChain.java b/src/main/java/gregtech/loaders/postload/chains/GT_BauxiteRefineChain.java index ab9162dcd7..b9ccba1cec 100644 --- a/src/main/java/gregtech/loaders/postload/chains/GT_BauxiteRefineChain.java +++ b/src/main/java/gregtech/loaders/postload/chains/GT_BauxiteRefineChain.java @@ -1,6 +1,12 @@ package gregtech.loaders.postload.chains; -import net.minecraft.item.ItemStack; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMixerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; + import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.*; @@ -12,27 +18,31 @@ public class GT_BauxiteRefineChain { public static void run() { - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Bauxite, 32), - Materials.SodiumHydroxide.getDust(9), - Materials.Quicklime.getDust(4), - GT_Utility.getIntegratedCircuit(8), - Materials.Water.getFluid(5000), - MaterialsOreAlum.BauxiteSlurry.getFluid(8000), - GT_Values.NI, - 200, - 120); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Bauxite, 32), + Materials.SodiumHydroxide.getDust(9), + Materials.Quicklime.getDust(4), + GT_Utility.getIntegratedCircuit(8)) + .noItemOutputs() + .fluidInputs(Materials.Water.getFluid(5000)) + .fluidOutputs(MaterialsOreAlum.BauxiteSlurry.getFluid(8000)) + .duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sMixerRecipes); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Bauxite, 32), - Materials.SodiumHydroxide.getDust(9), - Materials.Quicklime.getDust(4), - GT_Utility.getIntegratedCircuit(8), - Materials.Water.getFluid(5000), - MaterialsOreAlum.BauxiteSlurry.getFluid(8000), - GT_Values.NI, - 200, - 120); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Bauxite, 32), + Materials.SodiumHydroxide.getDust(9), + Materials.Quicklime.getDust(4), + GT_Utility.getIntegratedCircuit(8)) + .noItemOutputs() + .fluidInputs(Materials.Water.getFluid(5000)) + .fluidOutputs(MaterialsOreAlum.BauxiteSlurry.getFluid(8000)) + .duration(10 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sMixerRecipes); GT_Values.RA.addCrackingRecipe( 1, @@ -42,240 +52,265 @@ public class GT_BauxiteRefineChain { 160, 400); - GT_Values.RA.addMultiblockChemicalRecipe( - new ItemStack[] { Materials.Aluminiumhydroxide.getDust(1), }, - new FluidStack[] { Materials.CarbonDioxide.getGas(5000), - MaterialsOreAlum.HeatedBauxiteSlurry.getFluid(8000) }, - new FluidStack[] { MaterialsOreAlum.SluiceJuice.getFluid(5000), }, - new ItemStack[] { Materials.Aluminiumoxide.getDust(64), Materials.Aluminiumoxide.getDust(16), - Materials.SodiumCarbonate.getDust(9), Materials.Calcite.getDust(10), - MaterialsOreAlum.BauxiteSlag.getDust(16) }, - 300, - 480); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Aluminiumhydroxide.getDust(1)) + .itemOutputs( + Materials.Aluminiumoxide.getDust(64), + Materials.Aluminiumoxide.getDust(16), + Materials.SodiumCarbonate.getDust(9), + Materials.Calcite.getDust(10), + MaterialsOreAlum.BauxiteSlag.getDust(16)) + .fluidInputs(Materials.CarbonDioxide.getGas(5000), MaterialsOreAlum.HeatedBauxiteSlurry.getFluid(8000)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(5000)) + .duration(15 * SECONDS) + .eut(TierEU.RECIPE_HV) + .addTo(sMultiblockChemicalRecipes); - GT_Values.RA.addCentrifugeRecipe( - MaterialsOreAlum.BauxiteSlag.getDust(1), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.Rutile.getDust(1), - Materials.Gallium.getDust(1), - Materials.Quicklime.getDust(1), - Materials.SiliconDioxide.getDust(1), - Materials.Iron.getDust(1), - GT_Values.NI, - new int[] { 8000, 6000, 2000, 9000, 8000 }, - 40, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsOreAlum.BauxiteSlag.getDust(1)) + .itemOutputs( + Materials.Rutile.getDust(1), + Materials.Gallium.getDust(1), + Materials.Quicklime.getDust(1), + Materials.SiliconDioxide.getDust(1), + Materials.Iron.getDust(1)) + .outputChances(8000, 6000, 2000, 9000, 8000) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Ilmenite, 1), - Materials.SulfuricAcid.getFluid(1000), - new FluidStack(ItemList.sGreenVitriol, 2000), - Materials.Rutile.getDust(1), - MaterialsOreAlum.IlmeniteSlag.getDust(1), - GT_Values.NI, - new int[] { 8500, 3000 }, - 420, - 1000); + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Ilmenite, 1)) + .itemOutputs(Materials.Rutile.getDust(1), MaterialsOreAlum.IlmeniteSlag.getDust(1)) + .outputChances(8500, 3000) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(new FluidStack(ItemList.sGreenVitriol, 2000)) + .duration(21 * SECONDS) + .eut(1000) + .addTo(sChemicalBathRecipes); - GT_Values.RA.addChemicalBathRecipe( - GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Ilmenite, 1), - Materials.SulfuricAcid.getFluid(1000), - new FluidStack(ItemList.sGreenVitriol, 2000), - Materials.Rutile.getDust(1), - MaterialsOreAlum.IlmeniteSlag.getDust(1), - GT_Values.NI, - new int[] { 8500, 6000 }, - 420, - 1000); + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Ilmenite, 1)) + .itemOutputs(Materials.Rutile.getDust(1), MaterialsOreAlum.IlmeniteSlag.getDust(1)) + .outputChances(8500, 6000) + .fluidInputs(Materials.SulfuricAcid.getFluid(1000)) + .fluidOutputs(new FluidStack(ItemList.sGreenVitriol, 2000)) + .duration(21 * SECONDS) + .eut(1000) + .addTo(sChemicalBathRecipes); - GT_Values.RA.addCentrifugeRecipe( - MaterialsOreAlum.IlmeniteSlag.getDust(1), - GT_Values.NI, - GT_Values.NF, - GT_Values.NF, - Materials.Iron.getDust(1), - Materials.Niobium.getDust(1), - Materials.Tantalum.getDust(1), - Materials.Manganese.getDust(1), - Materials.Magnesium.getDust(1), - GT_Values.NI, - new int[] { 8000, 1000, 2000, 5000, 6000 }, - 40, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(MaterialsOreAlum.IlmeniteSlag.getDust(1)) + .itemOutputs( + Materials.Iron.getDust(1), + Materials.Niobium.getDust(1), + Materials.Tantalum.getDust(1), + Materials.Manganese.getDust(1), + Materials.Magnesium.getDust(1)) + .outputChances(8000, 1000, 2000, 5000, 6000) + .noFluidInputs() + .noFluidOutputs() + .duration(2 * SECONDS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); OrePrefixes[] washable = new OrePrefixes[] { OrePrefixes.crushed, OrePrefixes.crushedPurified, OrePrefixes.dustImpure, OrePrefixes.dustPure }; for (OrePrefixes ore : washable) { - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(ore, Materials.Sapphire, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.SodiumHydroxide, 1), - GT_Utility.getIntegratedCircuit(1), - null, - Materials.HydrochloricAcid.getFluid(1000), - MaterialsOreAlum.SapphireJuice.getFluid(1000), - null, - 40, - 100); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(ore, Materials.Sapphire, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.SodiumHydroxide, 1), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs() + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(MaterialsOreAlum.SapphireJuice.getFluid(1000)) + .duration(2 * SECONDS) + .eut(100) + .addTo(sMixerRecipes); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(ore, Materials.GreenSapphire, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.SodiumHydroxide, 1), - GT_Utility.getIntegratedCircuit(1), - null, - Materials.HydrochloricAcid.getFluid(1000), - MaterialsOreAlum.GreenSapphireJuice.getFluid(1000), - null, - 40, - 100); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(ore, Materials.GreenSapphire, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.SodiumHydroxide, 1), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs() + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(MaterialsOreAlum.GreenSapphireJuice.getFluid(1000)) + .duration(2 * SECONDS) + .eut(100) + .addTo(sMixerRecipes); - GT_Values.RA.addMixerRecipe( - GT_OreDictUnificator.get(ore, Materials.Ruby, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.SodiumHydroxide, 1), - GT_Utility.getIntegratedCircuit(1), - null, - Materials.HydrochloricAcid.getFluid(1000), - MaterialsOreAlum.RubyJuice.getFluid(1000), - null, - 40, - 100); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(ore, Materials.Ruby, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.SodiumHydroxide, 1), + GT_Utility.getIntegratedCircuit(1)) + .noItemOutputs() + .fluidInputs(Materials.HydrochloricAcid.getFluid(1000)) + .fluidOutputs(MaterialsOreAlum.RubyJuice.getFluid(1000)) + .duration(2 * SECONDS) + .eut(100) + .addTo(sMixerRecipes); } - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(1), - null, - MaterialsOreAlum.SapphireJuice.getFluid(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Aluminiumhydroxide.getDust(3), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Magnesium, 1), - null, - null, - new int[] { 10000, 2000, 2000, 2000 }, - 45, - 100); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + Materials.Aluminiumhydroxide.getDust(3), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Magnesium, 1)) + .outputChances(10000, 2000, 2000, 2000) + .fluidInputs(MaterialsOreAlum.SapphireJuice.getFluid(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(100) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + Materials.Aluminiumhydroxide.getDust(3), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Manganese, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Beryllium, 1)) + .outputChances(10000, 2000, 2000, 2000, 2000) + .fluidInputs(MaterialsOreAlum.GreenSapphireJuice.getFluid(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(100) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(1), - null, - MaterialsOreAlum.GreenSapphireJuice.getFluid(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Aluminiumhydroxide.getDust(3), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Manganese, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Beryllium, 1), - null, - new int[] { 10000, 2000, 2000, 2000, 2000 }, - 45, - 100); + GT_Values.RA.stdBuilder() + .itemInputs(GT_Utility.getIntegratedCircuit(1)) + .itemOutputs( + Materials.Aluminiumhydroxide.getDust(3), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Magnesium, 1)) + .outputChances(10000, 10000, 2000, 2000, 2000) + .fluidInputs(MaterialsOreAlum.RubyJuice.getFluid(1000)) + .fluidOutputs(Materials.HydrochloricAcid.getFluid(1000)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(100) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - GT_Utility.getIntegratedCircuit(1), - null, - MaterialsOreAlum.RubyJuice.getFluid(1000), - Materials.HydrochloricAcid.getFluid(1000), - Materials.Aluminiumhydroxide.getDust(3), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chrome, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Magnesium, 1), - null, - new int[] { 10000, 10000, 2000, 2000, 2000 }, - 45, - 100); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Pyrope.getDust(1)) + .itemOutputs( + Materials.Aluminiumoxide.getDust(1), + Materials.Magnesia.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1)) + .outputChances(5000, 4000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - Materials.Pyrope.getDust(1), - null, - Materials.NitricAcid.getFluid(10), - MaterialsOreAlum.SluiceJuice.getFluid(10), - Materials.Aluminiumoxide.getDust(1), - Materials.Magnesia.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Silver, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - new int[] { 5000, 4000, 2000, 2000, 2000, 2000 }, - 45, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Almandine.getDust(1)) + .itemOutputs( + Materials.Aluminiumoxide.getDust(1), + Materials.Iron.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Chrome, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1)) + .outputChances(5000, 4000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - Materials.Almandine.getDust(1), - null, - Materials.NitricAcid.getFluid(10), - MaterialsOreAlum.SluiceJuice.getFluid(10), - Materials.Aluminiumoxide.getDust(1), - Materials.Iron.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Chrome, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - new int[] { 5000, 4000, 2000, 2000, 2000, 2000 }, - 45, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Spessartine.getDust(1)) + .itemOutputs( + Materials.Aluminiumoxide.getDust(1), + Materials.Pyrolusite.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tantalum, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Magnesium, 1)) + .outputChances(5000, 4000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - Materials.Spessartine.getDust(1), - null, - Materials.NitricAcid.getFluid(10), - MaterialsOreAlum.SluiceJuice.getFluid(10), - Materials.Aluminiumoxide.getDust(1), - Materials.Pyrolusite.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Tantalum, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Magnesium, 1), - new int[] { 5000, 4000, 2000, 2000, 2000, 2000 }, - 45, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Andradite.getDust(1)) + .itemOutputs( + Materials.Quicklime.getDust(1), + Materials.Iron.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Rutile, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Aluminiumoxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1)) + .outputChances(5000, 4000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - Materials.Andradite.getDust(1), - null, - Materials.NitricAcid.getFluid(10), - MaterialsOreAlum.SluiceJuice.getFluid(10), - Materials.Quicklime.getDust(1), - Materials.Iron.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Rutile, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Aluminiumoxide, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - new int[] { 5000, 4000, 2000, 2000, 2000, 2000 }, - 45, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Uvarovite.getDust(1)) + .itemOutputs( + Materials.Quicklime.getDust(1), + Materials.Chrome.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Aluminiumoxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Manganese, 1)) + .outputChances(5000, 1000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - Materials.Uvarovite.getDust(1), - null, - Materials.NitricAcid.getFluid(10), - MaterialsOreAlum.SluiceJuice.getFluid(10), - Materials.Quicklime.getDust(1), - Materials.Chrome.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Silver, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Aluminiumoxide, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Manganese, 1), - new int[] { 5000, 1000, 2000, 2000, 2000, 2000 }, - 45, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Uvarovite.getDust(1)) + .itemOutputs( + Materials.Quicklime.getDust(1), + Materials.Chrome.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Silver, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Aluminiumoxide, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Manganese, 1)) + .outputChances(5000, 1000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); - GT_Values.RA.addCentrifugeRecipe( - Materials.Grossular.getDust(1), - null, - Materials.NitricAcid.getFluid(10), - MaterialsOreAlum.SluiceJuice.getFluid(10), - Materials.Quicklime.getDust(1), - Materials.Aluminiumoxide.getDust(1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1), - new int[] { 5000, 4000, 2000, 2000, 2000, 2000 }, - 45, - 120); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Grossular.getDust(1)) + .itemOutputs( + Materials.Quicklime.getDust(1), + Materials.Aluminiumoxide.getDust(1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Gold, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Iron, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Calcite, 1), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Vanadium, 1)) + .outputChances(5000, 4000, 2000, 2000, 2000, 2000) + .fluidInputs(Materials.NitricAcid.getFluid(10)) + .fluidOutputs(MaterialsOreAlum.SluiceJuice.getFluid(10)) + .duration(2 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_MV) + .addTo(sCentrifugeRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java index ece7692865..aaa46ccd3b 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java @@ -57,7 +57,7 @@ public class AssemblyLineRecipes implements Runnable { .noFluidOutputs() .itemOutputs(ItemList.Electric_Motor_LuV.get(1)) .eut(TierEU.RECIPE_IV) - .duration(600) + .duration(30 * SECONDS) .addTo(AssemblyLine); // ZPM motor diff --git a/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java index 3724af440d..05e1d76fdb 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/BreweryRecipes.java @@ -11,9 +11,7 @@ import static net.minecraftforge.fluids.FluidRegistry.getFluidStack; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; import gregtech.api.enums.*; import gregtech.api.util.GT_ModHandler; @@ -90,23 +88,25 @@ public class BreweryRecipes implements Runnable { // water based recipe input { - Fluid[] waterArray; + String[] waterArray; /* * if IC2 isn't loaded, getDistilledWater returns the base minecraft water, so no need to do the recipe * loading twice. */ if (IndustrialCraft2.isModLoaded()) { - waterArray = new Fluid[] { FluidRegistry.WATER, GT_ModHandler.getDistilledWater(1L) - .getFluid() }; + waterArray = new String[] { FluidRegistry.WATER.getUnlocalizedName(), + GT_ModHandler.getDistilledWater(1L) + .getFluid() + .getUnlocalizedName() }; } else { - waterArray = new Fluid[] { FluidRegistry.WATER }; + waterArray = new String[] { FluidRegistry.WATER.getUnlocalizedName(), }; } - for (Fluid tFluid : waterArray) { + for (String fluid : waterArray) { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Milk, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("milk", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -115,7 +115,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.wheatyjuice", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -124,7 +124,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Potassium, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mineralwater", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -133,7 +133,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mineralwater", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -142,7 +142,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mineralwater", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -151,7 +151,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mineralwater", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -160,7 +160,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.thick", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -169,7 +169,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -178,7 +178,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sugar, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -187,7 +187,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Blaze, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -196,7 +196,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.magma_cream, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -205,7 +205,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.fermented_spider_eye, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -214,7 +214,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.spider_eye, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -223,7 +223,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.speckled_melon, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -232,7 +232,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.ghast_tear, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.mundane", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -241,7 +241,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.nether_wart, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.awkward", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -250,7 +250,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Blocks.red_mushroom, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.poison", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -259,7 +259,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.fish, 1, 3)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.poison.strong", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -269,7 +269,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(ItemList.IC2_Grin_Powder.get(1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.poison.strong", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -278,7 +278,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.reeds, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.reedwater", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -287,7 +287,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.apple, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.applejuice", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -296,7 +296,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.golden_apple, 1, 0)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.goldenapplejuice", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -306,7 +306,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(new ItemStack(Items.golden_apple, 1, 1)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.idunsapplejuice", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -316,7 +316,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(ItemList.IC2_Hops.get(1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.hopsjuice", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -325,7 +325,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coffee, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.darkcoffee", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -334,7 +334,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Chili, 1L)) .noItemOutputs() - .fluidInputs(new FluidStack(tFluid, 750)) + .fluidInputs(getFluidStack(fluid, 750)) .fluidOutputs(getFluidStack("potion.chillysauce", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -520,7 +520,7 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(getModItem(Forestry.ID, "fertilizerBio", 4L, 0)) .noItemOutputs() - .fluidInputs(GT_ModHandler.getWater(750L)) + .fluidInputs(getFluidStack(FluidRegistry.WATER.getUnlocalizedName(), 750)) .fluidOutputs(getFluidStack("biomass", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -529,7 +529,12 @@ public class BreweryRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs(getModItem(Forestry.ID, "mulch", 16L, 0)) .noItemOutputs() - .fluidInputs(GT_ModHandler.getDistilledWater(750L)) + .fluidInputs( + getFluidStack( + GT_ModHandler.getDistilledWater(750L) + .getFluid() + .getUnlocalizedName(), + 750)) .fluidOutputs(getFluidStack("biomass", 750)) .duration(6 * SECONDS + 8 * TICKS) .eut(4) @@ -595,28 +600,24 @@ public class BreweryRecipes implements Runnable { .addTo(sBrewingRecipes); // strong - if (aName == "regen" || aName == "speed" || aName == "health" || aName == "strength" || aName == "poison") { - GT_Values.RA.stdBuilder() - .itemInputs(aItem) - .noItemOutputs() - .fluidInputs(getFluidStack("potion.thick", 750)) - .fluidOutputs(getFluidStack("potion." + aName + ".strong", 750)) - .duration(6 * SECONDS + 8 * TICKS) - .eut(4) - .addTo(sBrewingRecipes); - } + GT_Values.RA.stdBuilder() + .itemInputs(aItem) + .noItemOutputs() + .fluidInputs(getFluidStack("potion.thick", 750)) + .fluidOutputs(getFluidStack("potion." + aName + ".strong", 750)) + .duration(6 * SECONDS + 8 * TICKS) + .eut(4) + .addTo(sBrewingRecipes); // long - if (aName != "health") { - GT_Values.RA.stdBuilder() - .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)) - .noItemOutputs() - .fluidInputs(getFluidStack("potion." + aName, 750)) - .fluidOutputs(getFluidStack("potion." + aName + ".long", 750)) - .duration(6 * SECONDS + 8 * TICKS) - .eut(4) - .addTo(sBrewingRecipes); - } + GT_Values.RA.stdBuilder() + .itemInputs(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L)) + .noItemOutputs() + .fluidInputs(getFluidStack("potion." + aName, 750)) + .fluidOutputs(getFluidStack("potion." + aName + ".long", 750)) + .duration(6 * SECONDS + 8 * TICKS) + .eut(4) + .addTo(sBrewingRecipes); MixerRecipes.addMixerPotionRecipes(aName); } diff --git a/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java index ff2f6521bd..a4dda50738 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/CropProcessingRecipes.java @@ -15,7 +15,6 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_RecipeBuilder; import gregtech.api.util.GT_Utility; public class CropProcessingRecipes implements Runnable { @@ -131,18 +130,15 @@ public class CropProcessingRecipes implements Runnable { FluidStack fluidOutputChemReactor = aMaterialOut.mOreByProducts.isEmpty() ? null : aMaterialOut.mOreByProducts.get(0) .getMolten(144); - GT_RecipeBuilder buildChemRecipe = GT_Values.RA.stdBuilder() + + GT_Values.RA.stdBuilder() .itemInputs( GT_Utility.copyAmount(9, tCrop), GT_OreDictUnificator.get(OrePrefixes.crushed, aMaterial, 1)) .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.crushedPurified, aMaterial, 4)) - .fluidInputs(Materials.Water.getFluid(1000)); - if (fluidOutputChemReactor == null) { - buildChemRecipe.noFluidOutputs(); - } else { - buildChemRecipe.fluidOutputs(fluidOutputChemReactor); - } - buildChemRecipe.duration(4 * SECONDS + 16 * TICKS) + .fluidInputs(Materials.Water.getFluid(1000)) + .fluidOutputs(fluidOutputChemReactor) + .duration(4 * SECONDS + 16 * TICKS) .eut(24) .addTo(UniversalChemical); diff --git a/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java index 28f2d349b8..2c7f7aee72 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/ElectromagneticSeparatorRecipes.java @@ -6,6 +6,7 @@ import static gregtech.api.util.GT_RecipeBuilder.SECONDS; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsOreAlum; +import gregtech.api.enums.TierEU; public class ElectromagneticSeparatorRecipes implements Runnable { @@ -18,8 +19,20 @@ public class ElectromagneticSeparatorRecipes implements Runnable { .noFluidInputs() .noFluidOutputs() .duration(10 * SECONDS) - .eut(240) + .eut(TierEU.RECIPE_HV / 2) .addTo(sElectroMagneticSeparatorRecipes); + GT_Values.RA.stdBuilder() + .itemInputs(Materials.TengamRaw.getDust(1)) + .itemOutputs( + Materials.TengamPurified.getDust(1), + Materials.NeodymiumMagnetic.getDust(1), + Materials.SamariumMagnetic.getDust(1)) + .outputChances(10000, 1000, 1000) + .noFluidInputs() + .noFluidOutputs() + .duration(10 * SECONDS) + .eut(TierEU.RECIPE_UHV) + .addTo(sElectroMagneticSeparatorRecipes); } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java index 603f1ef115..2d50d3e945 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/FluidExtractorRecipes.java @@ -617,29 +617,34 @@ public class FluidExtractorRecipes implements Runnable { // Beecombs fluid extractor recipes if (BartWorks.isModLoaded()) { // xenon - GT_Values.RA.addFluidExtractionRecipe( - getModItem(GregTech.ID, "gt.comb", 1L, 134), - null, - getFluidStack("xenon", 250), - 100 * 100, - 50, - 8192); + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.ID, "gt.comb", 1L, 134)) + .noItemOutputs() + .noFluidInputs() + .fluidOutputs(getFluidStack("xenon", 250)) + .duration(2 * SECONDS + 10 * TICKS) + .eut(TierEU.RECIPE_IV) + .addTo(sFluidExtractionRecipes); + // neon - GT_Values.RA.addFluidExtractionRecipe( - getModItem(GregTech.ID, "gt.comb", 1L, 135), - null, - getFluidStack("neon", 250), - 100 * 100, - 15, - 8192); + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.ID, "gt.comb", 1L, 135)) + .noItemOutputs() + .noFluidInputs() + .fluidOutputs(getFluidStack("neon", 250)) + .duration(15 * TICKS) + .eut(TierEU.RECIPE_IV) + .addTo(sFluidExtractionRecipes); + // krpton - GT_Values.RA.addFluidExtractionRecipe( - getModItem(GregTech.ID, "gt.comb", 1L, 136), - null, - getFluidStack("krypton", 250), - 100 * 100, - 25, - 8192); + GT_Values.RA.stdBuilder() + .itemInputs(getModItem(GregTech.ID, "gt.comb", 1L, 136)) + .noItemOutputs() + .noFluidInputs() + .fluidOutputs(getFluidStack("krypton", 250)) + .duration(1 * SECONDS + 5 * TICKS) + .eut(TierEU.RECIPE_IV) + .addTo(sFluidExtractionRecipes); } } } diff --git a/src/main/java/gregtech/loaders/postload/recipes/RecipeRemover.java b/src/main/java/gregtech/loaders/postload/recipes/RecipeRemover.java index 708ffa4cec..8dd51d8272 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/RecipeRemover.java +++ b/src/main/java/gregtech/loaders/postload/recipes/RecipeRemover.java @@ -42,34 +42,34 @@ public class RecipeRemover implements Runnable { try { GT_Utility.removeSimpleIC2MachineRecipe( GT_Values.NI, - ic2.api.recipe.Recipes.metalformerExtruding.getRecipes(), + Recipes.metalformerExtruding.getRecipes(), ItemList.Cell_Empty.get(3L)); GT_Utility.removeSimpleIC2MachineRecipe( ItemList.IC2_Energium_Dust.get(1L), - ic2.api.recipe.Recipes.compressor.getRecipes(), + Recipes.compressor.getRecipes(), GT_Values.NI); GT_Utility.removeSimpleIC2MachineRecipe( new ItemStack(Items.gunpowder), - ic2.api.recipe.Recipes.extractor.getRecipes(), + Recipes.extractor.getRecipes(), GT_Values.NI); GT_Utility.removeSimpleIC2MachineRecipe( new ItemStack(Blocks.wool, 1, 32767), - ic2.api.recipe.Recipes.extractor.getRecipes(), + Recipes.extractor.getRecipes(), GT_Values.NI); GT_Utility.removeSimpleIC2MachineRecipe( new ItemStack(Blocks.gravel), - ic2.api.recipe.Recipes.oreWashing.getRecipes(), + Recipes.oreWashing.getRecipes(), GT_Values.NI); } catch (Throwable ignored) {} GT_Utility.removeIC2BottleRecipe( GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1), - ic2.api.recipe.Recipes.cannerBottle.getRecipes(), + Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorUraniumSimple", 1, 1)); GT_Utility.removeIC2BottleRecipe( GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1), - ic2.api.recipe.Recipes.cannerBottle.getRecipes(), + Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorMOXSimple", 1, 1)); GT_Utility.removeSimpleIC2MachineRecipe( @@ -117,7 +117,7 @@ public class RecipeRemover implements Runnable { if (!GregTech_API.mIC2Classic) { try { - Map<String, ILiquidHeatExchangerManager.HeatExchangeProperty> tLiqExchange = ic2.api.recipe.Recipes.liquidCooldownManager + Map<String, ILiquidHeatExchangerManager.HeatExchangeProperty> tLiqExchange = Recipes.liquidCooldownManager .getHeatExchangeProperties(); Iterator<Map.Entry<String, ILiquidHeatExchangerManager.HeatExchangeProperty>> tIterator = tLiqExchange .entrySet() @@ -135,7 +135,7 @@ public class RecipeRemover implements Runnable { } try { - Map<String, ILiquidHeatExchangerManager.HeatExchangeProperty> tLiqExchange = ic2.api.recipe.Recipes.liquidHeatupManager + Map<String, ILiquidHeatExchangerManager.HeatExchangeProperty> tLiqExchange = Recipes.liquidHeatupManager .getHeatExchangeProperties(); Iterator<Map.Entry<String, ILiquidHeatExchangerManager.HeatExchangeProperty>> tIterator = tLiqExchange .entrySet() diff --git a/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java index 3c53b565ce..a5ce4e3871 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/TranscendentPlasmaMixerRecipes.java @@ -2,9 +2,6 @@ package gregtech.loaders.postload.recipes; import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sTranscendentPlasmaMixerRecipes; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.MaterialsUEVplus; @@ -18,21 +15,6 @@ public class TranscendentPlasmaMixerRecipes implements Runnable { private static final int EXOTIC_EU_PER_L = 1_073_007_393; private static final int STELLAR_EU_PER_HALF_L = 2_138_383_760; - @Deprecated - private static void addTranscendentPlasmaMixerRecipe(final FluidStack fluidOutput, final int circuitNumber, - final FluidStack[] fluidInput, final int EUPerL) { - sTranscendentPlasmaMixerRecipes.addRecipe( - false, - new ItemStack[] { GT_Utility.getIntegratedCircuit(circuitNumber) }, - null, - null, - fluidInput, - new FluidStack[] { fluidOutput }, - 100, - EUPerL, // NOT EU/T, I am simply using the field for this purpose. - 0); - } - @Override public void run() { diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java index 817b1c5d0b..86d3004009 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java @@ -10,6 +10,11 @@ import static gregtech.api.enums.Mods.PamsHarvestCraft; import static gregtech.api.enums.Mods.Railcraft; import static gregtech.api.enums.Mods.Thaumcraft; import static gregtech.api.enums.Mods.TwilightForest; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; +import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sThermalCentrifugeRecipes; +import static gregtech.api.util.GT_RecipeBuilder.SECONDS; +import static gregtech.api.util.GT_RecipeBuilder.TICKS; import java.util.Locale; @@ -17,7 +22,6 @@ import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidRegistry; @@ -229,24 +233,41 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { ItemList.Depleted_Thorium_4.get(1), false)); - GT_ModHandler.addThermalCentrifugeRecipe( - ItemList.Depleted_Thorium_1.get(1), - 5000, - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Lutetium, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L)); - GT_ModHandler.addThermalCentrifugeRecipe( - ItemList.Depleted_Thorium_2.get(1), - 5000, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lutetium, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 3L)); - GT_ModHandler.addThermalCentrifugeRecipe( - ItemList.Depleted_Thorium_4.get(1), - 5000, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lutetium, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 6L)); + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_Thorium_1.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Lutetium, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L)) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(48) + .addTo(sThermalCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_Thorium_2.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lutetium, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 3L)) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(48) + .addTo(sThermalCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_Thorium_4.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lutetium, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Thorium, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 6L)) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(48) + .addTo(sThermalCentrifugeRecipes); ItemList.Depleted_Naquadah_1 .set(new GT_DepletetCell_Item("NaquadahcellDep", "Fuel Rod (Depleted Naquadah)", 1)); @@ -288,48 +309,53 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { ItemList.Depleted_Naquadah_4.get(1), false)); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Depleted_Naquadah_1.get(1), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Naquadria, 2L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.NaquadahEnriched, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 8L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 500, - 2000); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Depleted_Naquadah_2.get(1), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.NaquadahEnriched, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 18L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 2L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 1000, - 2000); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Depleted_Naquadah_4.get(1), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 2L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.NaquadahEnriched, 8L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 38L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 4L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 2000, - 2000); + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_Naquadah_1.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Naquadria, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.NaquadahEnriched, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 8L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1L)) + .outputChances(10_000, 5_000, 5_000, 2_500, 10_000, 10_000) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(2000) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_Naquadah_2.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.NaquadahEnriched, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 18L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 2L)) + .outputChances(10_000, 5_000, 5_000, 2_500, 10_000, 10_000) + .noFluidInputs() + .noFluidOutputs() + .duration(50 * SECONDS) + .eut(2000) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_Naquadah_4.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadria, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.NaquadahEnriched, 8L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 38L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 4L)) + .outputChances(10_000, 5_000, 5_000, 2_500, 10_000, 10_000) + .noFluidInputs() + .noFluidOutputs() + .duration(100 * SECONDS) + .eut(2000) + .addTo(sCentrifugeRecipes); ItemList.Depleted_MNq_1.set(new GT_DepletetCell_Item("MNqCellDep", "Fuel Rod (Depleted Nq*)", 1)); ItemList.Depleted_MNq_2 @@ -369,48 +395,53 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { ItemList.Depleted_MNq_4.get(1), true)); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Depleted_MNq_1.get(1), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.NaquadahEnriched, 2L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Naquadria, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 8L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 500, - 2000); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Depleted_MNq_2.get(1), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 1L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Naquadria, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 18L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 2L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 1000, - 2000); - GT_Values.RA.addCentrifugeRecipe( - ItemList.Depleted_MNq_4.get(1), - null, - null, - null, - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 2L), - GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Naquadria, 8L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 38L), - GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 4L), - new int[] { 10_000, 5_000, 5_000, 2_500, 10_000, 10_000 }, - 2000, - 2000); + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_MNq_1.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.NaquadahEnriched, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Naquadria, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 8L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 1L)) + .outputChances(10_000, 5_000, 5_000, 2_500, 10_000, 10_000) + .noFluidInputs() + .noFluidOutputs() + .duration(25 * SECONDS) + .eut(2000) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_MNq_2.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 2L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 1L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Naquadria, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 18L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 2L)) + .outputChances(10_000, 5_000, 5_000, 2_500, 10_000, 10_000) + .noFluidInputs() + .noFluidOutputs() + .duration(50 * SECONDS) + .eut(2000) + .addTo(sCentrifugeRecipes); + + GT_Values.RA.stdBuilder() + .itemInputs(ItemList.Depleted_MNq_4.get(1)) + .itemOutputs( + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Naquadah, 4L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.NaquadahEnriched, 2L), + GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Naquadria, 8L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.TungstenSteel, 38L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Platinum, 4L)) + .outputChances(10_000, 5_000, 5_000, 2_500, 10_000, 10_000) + .noFluidInputs() + .noFluidOutputs() + .duration(100 * SECONDS) + .eut(2000) + .addTo(sCentrifugeRecipes); ItemList.Uraniumcell_1.set( new GT_RadioactiveCellIC_Item( @@ -781,11 +812,16 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { .buildAndRegister() .configureMaterials(Materials.Water) .registerBContainers(GT_ModHandler.getIC2Item("steamCell", 1), Materials.Empty.getCells(1)); - GT_Values.RA.addFluidCannerRecipe( - Materials.Empty.getCells(1), - GT_ModHandler.getIC2Item("steamCell", 1), - GT_ModHandler.getSteam(1000), - null); + + GT_Values.RA.stdBuilder() + .itemInputs(Materials.Empty.getCells(1)) + .itemOutputs(GT_ModHandler.getIC2Item("steamCell", 1)) + .fluidInputs(GT_ModHandler.getSteam(1000)) + .noFluidOutputs() + .duration(16 * TICKS) + .eut(1) + .addTo(sFluidCannerRecipes); + Materials.Ice.mGas = Materials.Water.mGas; Materials.Water.mGas.setTemperature(375) .setGaseous(true); @@ -1255,7 +1291,6 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { Dyes.dyeBlue.addFluidDye(GT_FluidFactory.of("indigo", "Indigo Dye", LIQUID, 295)); for (byte i = 0; i < Dyes.VALUES.length; i = (byte) (i + 1)) { Dyes tDye = Dyes.VALUES[i]; - Fluid tFluid; tDye.addFluidDye( GT_FluidFactory.builder( "dye.watermixed." + tDye.name() diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java b/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java index 109efff2bb..bc85770c01 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_OreDictionary.java @@ -383,7 +383,7 @@ public class GT_Loader_OreDictionary implements Runnable { GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.CircuitZPM", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, - Materials.Superconductor, + Materials.SuperconductorUHV, GT_ModHandler.getModItem(NewHorizonsCoreMod.ID, "item.CircuitUV", 1L)); GT_OreDictUnificator.registerOre( OrePrefixes.circuit, diff --git a/src/main/java/gregtech/loaders/preload/GT_PreLoad.java b/src/main/java/gregtech/loaders/preload/GT_PreLoad.java index 9950564953..d9f62bdc45 100644 --- a/src/main/java/gregtech/loaders/preload/GT_PreLoad.java +++ b/src/main/java/gregtech/loaders/preload/GT_PreLoad.java @@ -136,7 +136,7 @@ public class GT_PreLoad { GT_Log.mLogFile = new File(parentFile, "logs/GregTech.log"); if (!GT_Log.mLogFile.exists()) { try { - final boolean ignored = GT_Log.mLogFile.createNewFile(); + GT_Log.mLogFile.createNewFile(); } catch (Throwable ignored) {} } try { @@ -148,7 +148,7 @@ public class GT_PreLoad { GT_Log.mOreDictLogFile = new File(parentFile, "logs/OreDict.log"); if (!GT_Log.mOreDictLogFile.exists()) { try { - final boolean ignored = GT_Log.mOreDictLogFile.createNewFile(); + GT_Log.mOreDictLogFile.createNewFile(); } catch (Throwable ignored) {} } try { @@ -170,7 +170,7 @@ public class GT_PreLoad { GT_Log.mExplosionLog = new File(parentFile, "logs/Explosion.log"); if (!GT_Log.mExplosionLog.exists()) { try { - final boolean ignored = GT_Log.mExplosionLog.createNewFile(); + GT_Log.mExplosionLog.createNewFile(); } catch (Throwable ignored) {} } try { @@ -183,7 +183,7 @@ public class GT_PreLoad { GT_Log.mPlayerActivityLogFile = new File(parentFile, "logs/PlayerActivity.log"); if (!GT_Log.mPlayerActivityLogFile.exists()) { try { - final boolean ignored = GT_Log.mPlayerActivityLogFile.createNewFile(); + GT_Log.mPlayerActivityLogFile.createNewFile(); } catch (Throwable ignored) {} } try { @@ -675,8 +675,6 @@ public class GT_PreLoad { now.get(Calendar.MONTH) == Calendar.APRIL && now.get(Calendar.DAY_OF_MONTH) == 1); GT_Mod.gregtechproxy.mCropNeedBlock = tMainConfig.get("general", "CropNeedBlockBelow", true) .getBoolean(true); - GT_Mod.gregtechproxy.mDisableOldChemicalRecipes = tMainConfig.get("general", "DisableOldChemicalRecipes", false) - .getBoolean(false); GT_Mod.gregtechproxy.mAMHInteraction = tMainConfig.get("general", "AllowAutoMaintenanceHatchInteraction", false) .getBoolean(false); GregTech_API.mOutputRF = GregTech_API.sOPStuff.get(ConfigCategories.general, "OutputRF", true); @@ -689,8 +687,7 @@ public class GT_PreLoad { .get(ConfigCategories.machineconfig, "forceFreeFace", true); GT_Mod.gregtechproxy.mBrickedBlastFurnace = tMainConfig.get("general", "BrickedBlastFurnace", true) .getBoolean(true); - GT_Mod.gregtechproxy.mEasierIVPlusCables = tMainConfig.get("general", "EasierEVPlusCables", false) - .getBoolean(false); + GT_Mod.gregtechproxy.mMixedOreOnlyYieldsTwoThirdsOfPureOre = tMainConfig .get("general", "MixedOreOnlyYieldsTwoThirdsOfPureOre", false) .getBoolean(false); |