diff options
author | Glease <4586901+Glease@users.noreply.github.com> | 2021-06-16 16:33:53 +0800 |
---|---|---|
committer | Glease <4586901+Glease@users.noreply.github.com> | 2021-07-30 14:39:32 +0800 |
commit | a47c5003192c87f6960d490abedd1e342acb56bd (patch) | |
tree | a3475f84f3206aeca7fd961c3c46ae48e9618433 | |
parent | 62f04c2893a66c4f80383da1a973fad4708171d4 (diff) | |
download | GT5-Unofficial-a47c5003192c87f6960d490abedd1e342acb56bd.tar.gz GT5-Unofficial-a47c5003192c87f6960d490abedd1e342acb56bd.tar.bz2 GT5-Unofficial-a47c5003192c87f6960d490abedd1e342acb56bd.zip |
make fuel recipe map index building a bit more robust
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
-rw-r--r-- | src/main/java/gregtech/api/util/GT_Recipe.java | 3 | ||||
-rw-r--r-- | src/main/java/gregtech/api/util/GT_Utility.java | 4 |
2 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 a5b263a145..19f46dfd15 100644 --- a/src/main/java/gregtech/api/util/GT_Recipe.java +++ b/src/main/java/gregtech/api/util/GT_Recipe.java @@ -1010,7 +1010,8 @@ public class GT_Recipe implements Comparable<GT_Recipe> { @Override public GT_Recipe add(GT_Recipe aRecipe) { aRecipe = super.add(aRecipe); - if (aRecipe.mInputs != null && aRecipe.mInputs.length == 1 && (aRecipe.mFluidInputs == null || aRecipe.mFluidInputs.length == 0)) { + if (aRecipe.mInputs != null && GT_Utility.getNonnullElementCount(aRecipe.mInputs) == 1 && + (aRecipe.mFluidInputs == null || GT_Utility.getNonnullElementCount(aRecipe.mFluidInputs) == 0)) { FluidStack tFluid = GT_Utility.getFluidForFilledItem(aRecipe.mInputs[0], true); if (tFluid != null) { tFluid.amount = 0; diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java index c7cee8c9c2..bb2c644f95 100644 --- a/src/main/java/gregtech/api/util/GT_Utility.java +++ b/src/main/java/gregtech/api/util/GT_Utility.java @@ -2884,4 +2884,8 @@ public class GT_Utility { dropItem.delayBeforeCanPickup = 0; } } + + public static long getNonnullElementCount(Object[] tArray) { + return Arrays.stream(tArray).filter(Objects::nonNull).count(); + } } |