aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/LuVTierEnhancer.java12
-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
3 files changed, 25 insertions, 2 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/LuVTierEnhancer.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/LuVTierEnhancer.java
index dc1d1f7ade..65c677dc55 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/LuVTierEnhancer.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/LuVTierEnhancer.java
@@ -195,15 +195,23 @@ public class LuVTierEnhancer implements Runnable {
GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.mRecipeList.stream()
.filter(gt_recipe ->
gt_recipe.mEUt < BW_Util.getTierVoltage(6) &&
- !BW_Util.checkStackAndPrefix(gt_recipe.mOutputs[0])
+ !BW_Util.checkStackAndPrefix(gt_recipe.mOutputs[0]) &&
+ !isOutputBlackListed(gt_recipe.mOutputs[0])
)
.forEach(replace);
GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList.stream()
- .filter(gt_recipe -> gt_recipe.mEUt <= 6000)
+ .filter(gt_recipe -> gt_recipe.mEUt <= 6000 &&
+ !isOutputBlackListed(gt_recipe.mOutputs[0])
+ )
.forEach(replace);
}
+ private static boolean isOutputBlackListed(ItemStack output) {
+ if (output.isItemEqual(ItemList.Casing_MiningOsmiridium.get(1))) return true;
+ return false;
+ }
+
private static ItemStack[] replaceArrayWith(ItemStack[] stackArray, Materials source, Werkstoff target) {
for (int i = 0; i < stackArray.length; i++) {
ItemStack stack = stackArray[i];
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));
}
}