aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
authorchochem <40274384+chochem@users.noreply.github.com>2023-05-17 18:38:56 +0100
committerGitHub <noreply@github.com>2023-05-17 19:38:56 +0200
commit4323ab8af257370237d8fd312e9e4024bccc67ab (patch)
tree46b51d9db218e6a5b18518f4d42bb0325e729d72 /src/main/java/gregtech/api
parent8e59f92c37c7d035c9c914aff4dbedfb77f0fec9 (diff)
downloadGT5-Unofficial-4323ab8af257370237d8fd312e9e4024bccc67ab.tar.gz
GT5-Unofficial-4323ab8af257370237d8fd312e9e4024bccc67ab.tar.bz2
GT5-Unofficial-4323ab8af257370237d8fd312e9e4024bccc67ab.zip
More RA2 conversion for automatic gt recipes (#2000)
* fully convert all wiremill recipes and clean up unnecessary duplicate code * fully convert all polarizer recipes * fully convert all canner recipes * RA2 for oredict plank recipes * RA2 for oredict stoneCobble recipes * convert some assembler recipes to RA2 * fix * fix2 * remove recipes that were never in the game
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java26
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java31
-rw-r--r--src/main/java/gregtech/api/util/GT_RecipeRegistrator.java230
3 files changed, 184 insertions, 103 deletions
diff --git a/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java b/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java
index 3e65a65275..677ad639c7 100644
--- a/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java
+++ b/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java
@@ -1,9 +1,10 @@
package gregtech.api.items;
import static gregtech.api.enums.GT_Values.D1;
-import static gregtech.api.enums.GT_Values.RA;
import static gregtech.api.enums.Mods.AppleCore;
import static gregtech.api.enums.Mods.GregTech;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sCannerRecipes;
+import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import java.util.ArrayList;
import java.util.Arrays;
@@ -25,6 +26,7 @@ import cpw.mods.fml.common.Optional;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.Mods;
@@ -142,15 +144,19 @@ public abstract class GT_MetaGenerated_Item extends GT_MetaBase_Item implements
setFoodBehavior(mOffset + aID, (IFoodStat) tRandomData);
if (((IFoodStat) tRandomData).getFoodAction(this, rStack) == EnumAction.eat) {
int tFoodValue = ((IFoodStat) tRandomData).getFoodLevel(this, rStack, null);
- if (tFoodValue > 0) RA.addCannerRecipe(
- rStack,
- ItemList.IC2_Food_Can_Empty.get(tFoodValue),
- ((IFoodStat) tRandomData).isRotten(this, rStack, null)
- ? ItemList.IC2_Food_Can_Spoiled.get(tFoodValue)
- : ItemList.IC2_Food_Can_Filled.get(tFoodValue),
- null,
- tFoodValue * 100,
- 1);
+ if (tFoodValue > 0) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(rStack, ItemList.IC2_Food_Can_Empty.get(tFoodValue))
+ .itemOutputs(
+ ((IFoodStat) tRandomData).isRotten(this, rStack, null)
+ ? ItemList.IC2_Food_Can_Spoiled.get(tFoodValue)
+ : ItemList.IC2_Food_Can_Filled.get(tFoodValue))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(tFoodValue * 5 * SECONDS)
+ .eut(1)
+ .addTo(sCannerRecipes);
+ }
}
tUseOreDict = false;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java
index 83e658cbfc..bce5e8f92e 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Frame.java
@@ -1,13 +1,20 @@
package gregtech.api.metatileentity.implementations;
-import static gregtech.api.enums.GT_Values.RA;
+import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sAssemblerRecipes;
+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;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.common.util.ForgeDirection;
-import gregtech.api.enums.*;
+import gregtech.api.enums.Dyes;
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.SubTag;
+import gregtech.api.enums.TierEU;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
@@ -17,6 +24,7 @@ import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_ModHandler.RecipeBits;
import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_Utility;
public class GT_MetaPipeEntity_Frame extends MetaPipeEntity {
@@ -36,14 +44,19 @@ public class GT_MetaPipeEntity_Frame extends MetaPipeEntity {
new Object[] { "SSS", "SwS", "SSS", 'S', OrePrefixes.stick.get(mMaterial) });
}
- if (!aMaterial.contains(SubTag.NO_RECIPES)) {
+ if (!aMaterial.contains(SubTag.NO_RECIPES)
+ && GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1) != null) {
// Auto generate frame box recipe in an assembler.
- RA.addAssemblerRecipe(
- GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 4),
- ItemList.Circuit_Integrated.getWithDamage(0, 4),
- getStackForm(1),
- 64,
- calculateRecipeEU(aMaterial, 7));
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 4),
+ GT_Utility.getIntegratedCircuit(4))
+ .itemOutputs(getStackForm(1))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(3 * SECONDS + 4 * TICKS)
+ .eut(calculateRecipeEU(aMaterial, 7))
+ .addTo(sAssemblerRecipes);
}
}
diff --git a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java
index 819f8240b0..9313f8f2f5 100644
--- a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java
+++ b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java
@@ -4,6 +4,7 @@ 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_Recipe.GT_Recipe_Map.sWiremillRecipes;
import static gregtech.api.util.GT_RecipeBuilder.SECONDS;
import static gregtech.api.util.GT_RecipeBuilder.TICKS;
import static gregtech.api.util.GT_RecipeConstants.UniversalArcFurnace;
@@ -639,90 +640,151 @@ public class GT_RecipeRegistrator {
*/
public static void registerWiremillRecipes(Materials aMaterial, int baseDuration, int aEUt, OrePrefixes prefix1,
OrePrefixes prefix2, int multiplier) {
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 1L),
- GT_Utility.getIntegratedCircuit(1),
- GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, multiplier),
- baseDuration,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 2L / multiplier),
- GT_Utility.getIntegratedCircuit(2),
- GT_OreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L),
- (int) (baseDuration * 1.5f),
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 4L / multiplier),
- GT_Utility.getIntegratedCircuit(4),
- GT_OreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L),
- baseDuration * 2,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 8L / multiplier),
- GT_Utility.getIntegratedCircuit(8),
- GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L),
- (int) (baseDuration * 2.5f),
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 12L / multiplier),
- GT_Utility.getIntegratedCircuit(12),
- GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L),
- baseDuration * 3,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 16L / multiplier),
- GT_Utility.getIntegratedCircuit(16),
- GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L),
- (int) (baseDuration * 3.5f),
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 2L / multiplier),
- GT_Utility.getIntegratedCircuit(1),
- GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L),
- baseDuration / 2,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 4L / multiplier),
- GT_Utility.getIntegratedCircuit(2),
- GT_OreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L),
- baseDuration,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 8L / multiplier),
- GT_Utility.getIntegratedCircuit(4),
- GT_OreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L),
- (int) (baseDuration * 1.5f),
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 16L / multiplier),
- GT_Utility.getIntegratedCircuit(8),
- GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L),
- baseDuration * 2,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 24L / multiplier),
- GT_Utility.getIntegratedCircuit(12),
- GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L),
- (int) (baseDuration * 2.5f),
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 32L / multiplier),
- GT_Utility.getIntegratedCircuit(16),
- GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L),
- baseDuration * 3,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix1, aMaterial, 1L),
- GT_Utility.getIntegratedCircuit(3),
- GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 4L * multiplier),
- baseDuration,
- aEUt);
- GT_Values.RA.addWiremillRecipe(
- GT_OreDictUnificator.get(prefix2, aMaterial, 1L),
- GT_Utility.getIntegratedCircuit(3),
- GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 2L * multiplier),
- baseDuration / 2,
- aEUt);
+ if (GT_OreDictUnificator.get(prefix1, aMaterial, 1L) != null
+ && GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(prefix1, aMaterial, 1L), GT_Utility.getIntegratedCircuit(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, multiplier))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix1, aMaterial, 2L / multiplier),
+ GT_Utility.getIntegratedCircuit(2))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 1.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix1, aMaterial, 4L / multiplier),
+ GT_Utility.getIntegratedCircuit(4))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * 2 * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix1, aMaterial, 8L / multiplier),
+ GT_Utility.getIntegratedCircuit(8))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 2.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix1, aMaterial, 12L / multiplier),
+ GT_Utility.getIntegratedCircuit(12))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * 3 * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix1, aMaterial, 16L / multiplier),
+ GT_Utility.getIntegratedCircuit(16))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 3.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ }
+
+ if (GT_OreDictUnificator.get(prefix2, aMaterial, 1L) != null
+ && GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(prefix2, aMaterial, 1L), GT_Utility.getIntegratedCircuit(1))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 2L / multiplier))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 0.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix2, aMaterial, 4L / multiplier),
+ GT_Utility.getIntegratedCircuit(2))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt02, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix2, aMaterial, 8L / multiplier),
+ GT_Utility.getIntegratedCircuit(4))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt04, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 1.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix2, aMaterial, 16L / multiplier),
+ GT_Utility.getIntegratedCircuit(8))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * 2 * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix2, aMaterial, 24L / multiplier),
+ GT_Utility.getIntegratedCircuit(12))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 2.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ GT_Values.RA.stdBuilder()
+ .itemInputs(
+ GT_OreDictUnificator.get(prefix2, aMaterial, 32L / multiplier),
+ GT_Utility.getIntegratedCircuit(16))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * 3 * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ }
+ if (GT_OreDictUnificator.get(prefix1, aMaterial, 1L) != null
+ && GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(prefix1, aMaterial, 1L), GT_Utility.getIntegratedCircuit(3))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 4L * multiplier))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(baseDuration * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ }
+ if (GT_OreDictUnificator.get(prefix2, aMaterial, 1L) != null
+ && GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 1L) != null) {
+ GT_Values.RA.stdBuilder()
+ .itemInputs(GT_OreDictUnificator.get(prefix2, aMaterial, 1L), GT_Utility.getIntegratedCircuit(3))
+ .itemOutputs(GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 2L * multiplier))
+ .noFluidInputs()
+ .noFluidOutputs()
+ .duration(((int) (baseDuration * 0.5f)) * TICKS)
+ .eut(aEUt)
+ .addTo(sWiremillRecipes);
+ }
}
public static boolean hasVanillaRecipes(Materials materials) {