aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api
diff options
context:
space:
mode:
authorGlodBlock <60341015+GlodBlock@users.noreply.github.com>2021-07-10 13:25:03 +0800
committerGitHub <noreply@github.com>2021-07-10 13:25:03 +0800
commit8000dcecab1d731893b0be4637fc3316ca2d1550 (patch)
treea27328bfb32db3293d1f191f69b0309205dea32f /src/main/java/gregtech/api
parent4cacc1f809298f341c904f0749a965befd3c0dd9 (diff)
downloadGT5-Unofficial-8000dcecab1d731893b0be4637fc3316ca2d1550.tar.gz
GT5-Unofficial-8000dcecab1d731893b0be4637fc3316ca2d1550.tar.bz2
GT5-Unofficial-8000dcecab1d731893b0be4637fc3316ca2d1550.zip
fix recipe check
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r--src/main/java/gregtech/api/util/GT_Recipe.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main/java/gregtech/api/util/GT_Recipe.java b/src/main/java/gregtech/api/util/GT_Recipe.java
index aa54b55277..315d70a522 100644
--- a/src/main/java/gregtech/api/util/GT_Recipe.java
+++ b/src/main/java/gregtech/api/util/GT_Recipe.java
@@ -388,13 +388,18 @@ public class GT_Recipe implements Comparable<GT_Recipe> {
if (mInputs.length > 0 && aInputs == null) return false;
+ HashSet<Integer> isUsed = new HashSet<>();
+
for (ItemStack tStack : mInputs) {
ItemStack unified_tStack = GT_OreDictUnificator.get_nocopy(true, tStack);
if (unified_tStack != null) {
amt = tStack.stackSize;
boolean temp = true;
+ int it = 0;
for (ItemStack aStack : aInputs) {
- if (GT_OreDictUnificator.isInputStackEqual(aStack, unified_tStack)) {
+ it ++;
+ if (GT_OreDictUnificator.isInputStackEqual(aStack, unified_tStack) && !isUsed.contains(it)) {
+ isUsed.add(it);
if (GTppRecipeHelper) {//remove once the fix is out
if (GT_Utility.areStacksEqual(aStack, Ic2Items.FluidCell.copy(), true) || GT_Utility.areStacksEqual(aStack, ItemList.Tool_DataStick.get(1L), true) || GT_Utility.areStacksEqual(aStack, ItemList.Tool_DataOrb.get(1L), true)) {
if (!GT_Utility.areStacksEqual(aStack, tStack, false))