aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2022-10-16 18:50:47 +0900
committerGitHub <noreply@github.com>2022-10-16 11:50:47 +0200
commit7a84c71f5aab56f482b229189e0ac40de2f48d2e (patch)
treec4a91081cb3d57d0d9398d43820743343c3b5b29 /src/main
parente9d22462675a982a414b5c46be085bf0ba9a8ca4 (diff)
downloadGT5-Unofficial-7a84c71f5aab56f482b229189e0ac40de2f48d2e.tar.gz
GT5-Unofficial-7a84c71f5aab56f482b229189e0ac40de2f48d2e.tar.bz2
GT5-Unofficial-7a84c71f5aab56f482b229189e0ac40de2f48d2e.zip
Fix oredicted circuit parts preventing CAL recipe generation (#219)
Former-commit-id: b7a314b15f5ba04c9423bbf2bd49d1c49b5f26ff
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java25
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java7
2 files changed, 25 insertions, 7 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java
index 1176712cc7..2abfb4e066 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitImprintLoader.java
@@ -27,6 +27,7 @@ import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler;
import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
import com.github.bartimaeusnek.bartworks.util.BWRecipes;
import com.github.bartimaeusnek.bartworks.util.BW_Util;
+import com.github.bartimaeusnek.bartworks.util.Pair;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.BiMap;
import com.google.common.collect.HashBiMap;
@@ -38,7 +39,10 @@ import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
+import java.util.Arrays;
+import java.util.Collections;
import java.util.HashSet;
+import java.util.List;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
import net.minecraft.item.crafting.IRecipe;
@@ -203,13 +207,32 @@ public class CircuitImprintLoader {
private static void replaceCircuits(
BiMap<ItemList, Short> inversed, GT_Recipe original, ItemStack[] in, int index) {
for (ItemList il : inversed.keySet()) {
- if (GT_Utility.areStacksEqual(il.get(1), original.mInputs[index])) {
+ if (GT_Utility.areStacksEqual(il.get(1), replaceCircuitParts(original.mInputs[index]))) {
in[index] =
BW_Meta_Items.getNEWCIRCUITS().getStack(inversed.get(il), original.mInputs[index].stackSize);
}
}
}
+ private static final List<Pair<ItemStack, ItemStack>> circuitPartsToReplace =
+ Collections.unmodifiableList(Arrays.asList(
+ new Pair<>(ItemList.Circuit_Parts_Resistor.get(1), ItemList.Circuit_Parts_ResistorSMD.get(1)),
+ new Pair<>(ItemList.Circuit_Parts_Diode.get(1), ItemList.Circuit_Parts_DiodeSMD.get(1)),
+ new Pair<>(ItemList.Circuit_Parts_Transistor.get(1), ItemList.Circuit_Parts_TransistorSMD.get(1)),
+ new Pair<>(ItemList.Circuit_Parts_Capacitor.get(1), ItemList.Circuit_Parts_CapacitorSMD.get(1)),
+ new Pair<>(ItemList.Circuit_Parts_Coil.get(1), ItemList.Circuit_Parts_InductorSMD.get(1))));
+
+ private static ItemStack replaceCircuitParts(ItemStack stack) {
+ for (Pair<ItemStack, ItemStack> pair : circuitPartsToReplace) {
+ if (GT_Utility.areStacksEqual(pair.getKey(), stack)) {
+ ItemStack newStack = pair.getValue();
+ newStack.stackSize = stack.stackSize;
+ return newStack;
+ }
+ }
+ return stack;
+ }
+
@SuppressWarnings("deprecation")
private static void replaceComponents(ItemStack[] in, GT_Recipe original, int index)
throws ArrayIndexOutOfBoundsException {
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java
index 648d377e1c..6ba0d7da55 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/CircuitGeneration/CircuitPartLoader.java
@@ -61,12 +61,7 @@ public class CircuitPartLoader implements Runnable {
|| single == Circuit_Integrated
|| single == Circuit_Parts_PetriDish
|| single == Circuit_Parts_Vacuum_Tube
- || single == Circuit_Integrated_Good
- || single == Circuit_Parts_Capacitor
- || single == Circuit_Parts_Diode
- || single == Circuit_Parts_Resistor
- || single == Circuit_Parts_Transistor
- || single == Circuit_Parts_Coil) {
+ || single == Circuit_Integrated_Good) {
CircuitImprintLoader.blacklistSet.add(single.get(1));
}