aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java12
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java3
2 files changed, 15 insertions, 0 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java
index 16cbee2d2f..107dec62c6 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java
@@ -386,6 +386,10 @@ public class Werkstoff implements IColorModulationContainer, ISubTagContainer {
return this.mID;
}
+ public short getMixCircuit() {
+ return this.getGenerationFeatures().mixCircuit;
+ }
+
public Werkstoff.GenerationFeatures getGenerationFeatures() {
return this.generationFeatures;
}
@@ -609,6 +613,7 @@ public class Werkstoff implements IColorModulationContainer, ISubTagContainer {
* Auto add MetalWorking(crafting components) Recipe 10000
*/
public byte extraRecipes;
+ public short mixCircuit = -1;
public Werkstoff.GenerationFeatures setBlacklist(OrePrefixes p) {
this.blacklist |= getPrefixDataRaw(p);
@@ -670,6 +675,13 @@ public class Werkstoff implements IColorModulationContainer, ISubTagContainer {
return this;
}
+ public Werkstoff.GenerationFeatures addMixerRecipes(short aCircuit) {
+ this.extraRecipes = (byte) (this.extraRecipes | 10);
+ if (aCircuit >= 1 && aCircuit <=24)
+ this.mixCircuit = aCircuit;
+ return this;
+ }
+
public boolean hasMixerRecipes() {
return (this.extraRecipes & 10) != 0;
}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java
index 8f79fc85bc..b8b1d7a75e 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/werkstoff_loaders/recipe/DustLoader.java
@@ -148,6 +148,9 @@ public class DustLoader implements IWerkstoffRunnable {
if (werkstoff.getGenerationFeatures().hasMixerRecipes()) {
if (cells > 0)
stOutputs.add(Materials.Empty.getCells(cells));
+ short circuitID = werkstoff.getMixCircuit();
+ ItemStack circuit = circuitID == -1 ? null : GT_Utility.getIntegratedCircuit(circuitID);
+ if (circuit != null) stOutputs.add(circuit);
GT_Recipe.GT_Recipe_Map.sMixerRecipes.add(new BWRecipes.DynamicGTRecipe(true, stOutputs.toArray(new ItemStack[0]), new ItemStack[]{input}, null, null, new FluidStack[]{flOutputs.size() > 0 ? flOutputs.get(0) : null}, null, (int) Math.max(1L, Math.abs(werkstoff.getStats().getMass() / werkstoff.getContents().getValue().size())), Math.min(4, werkstoff.getContents().getValue().size()) * 5, 0));
}
}