aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2022-12-20 04:26:07 +0900
committerGitHub <noreply@github.com>2022-12-19 20:26:07 +0100
commit0c2cc10fea8f3e09d2e09c926a5134ec4acf4fc7 (patch)
treed53541e495cdafc2f4a492b4b1374d1ad8710684 /src/main/java/gregtech/api
parentd554223fc52408d1a5170cdfbc547fba25b670d3 (diff)
downloadGT5-Unofficial-0c2cc10fea8f3e09d2e09c926a5134ec4acf4fc7.tar.gz
GT5-Unofficial-0c2cc10fea8f3e09d2e09c926a5134ec4acf4fc7.tar.bz2
GT5-Unofficial-0c2cc10fea8f3e09d2e09c926a5134ec4acf4fc7.zip
Adapt SpaceTime and Graphene wire to Wiremill Configuration Circuit support (#1566)
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/util/GT_RecipeRegistrator.java107
1 files changed, 107 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java
index 713380972f..d6751ebd84 100644
--- a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java
+++ b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java
@@ -653,6 +653,113 @@ public class GT_RecipeRegistrator {
}
}
+ /**
+ * Registers wiremill recipes for given material using integrated circuits.
+ * @param aMaterial material to register
+ * @param baseDuration base duration ticks for ingot -> 1x wire recipe
+ * @param aEUt EU/t for recipe
+ */
+ public static void registerWiremillRecipes(Materials aMaterial, int baseDuration, int aEUt) {
+ registerWiremillRecipes(aMaterial, baseDuration, aEUt, OrePrefixes.ingot, OrePrefixes.stick, 2);
+ }
+
+ /**
+ * Registers wiremill recipes for given material using integrated circuits.
+ * @param aMaterial material to register
+ * @param baseDuration base duration ticks for ingot -> 1x wire recipe
+ * @param aEUt EU/t for recipe
+ * @param prefix1 prefix corresponds to ingot
+ * @param prefix2 prefix corresponds to stick
+ * @param multiplier amount of wires created from 1 ingot
+ */
+ 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);
+ }
+
public static boolean hasVanillaRecipes(Materials materials) {
return Arrays.stream(VANILLA_MATS).anyMatch(mat -> mat == materials);
}