diff options
author | GlodBlock <60341015+GlodBlock@users.noreply.github.com> | 2021-07-22 00:03:26 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-22 00:03:26 +0800 |
commit | 41044b43def2259f87c1a5e0a3bc67dcfaea52cd (patch) | |
tree | c3f9d0f31be4faa8afeff55d0c1f8ae5893de5b7 /src/main/java/gregtech/api/util | |
parent | 9a09386e6a2a693eea18e9e52309f3630f7530e0 (diff) | |
download | GT5-Unofficial-41044b43def2259f87c1a5e0a3bc67dcfaea52cd.tar.gz GT5-Unofficial-41044b43def2259f87c1a5e0a3bc67dcfaea52cd.tar.bz2 GT5-Unofficial-41044b43def2259f87c1a5e0a3bc67dcfaea52cd.zip |
change it into hashset back
Diffstat (limited to 'src/main/java/gregtech/api/util')
-rw-r--r-- | src/main/java/gregtech/api/util/GT_Recipe.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/main/java/gregtech/api/util/GT_Recipe.java b/src/main/java/gregtech/api/util/GT_Recipe.java index 5db314ed30..5a337922d3 100644 --- a/src/main/java/gregtech/api/util/GT_Recipe.java +++ b/src/main/java/gregtech/api/util/GT_Recipe.java @@ -366,6 +366,9 @@ public class GT_Recipe implements Comparable<GT_Recipe> { public static boolean GTppRecipeHelper; public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, boolean aDontCheckStackSizes, FluidStack[] aFluidInputs, ItemStack... aInputs) { + + HashSet<Integer> isVisited = new HashSet<>(); + if (mFluidInputs.length > 0 && aFluidInputs == null) return false; int amt; for (FluidStack tFluid : mFluidInputs) @@ -389,8 +392,6 @@ public class GT_Recipe implements Comparable<GT_Recipe> { if (mInputs.length > 0 && aInputs == null) return false; - ConcurrentHashMap<Integer, Boolean> isUsed = new ConcurrentHashMap<>(); - for (ItemStack tStack : mInputs) { ItemStack unified_tStack = GT_OreDictUnificator.get_nocopy(true, tStack); if (unified_tStack != null) { @@ -399,8 +400,8 @@ public class GT_Recipe implements Comparable<GT_Recipe> { int it = 0; for (ItemStack aStack : aInputs) { it ++; - if (GT_OreDictUnificator.isInputStackEqual(aStack, unified_tStack) && !isUsed.containsKey(it)) { - isUsed.put(it, true); + if (GT_OreDictUnificator.isInputStackEqual(aStack, unified_tStack) && !isVisited.contains(it)) { + isVisited.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)) |