From 4f6fbfe8370e514e6629a94d8eb227af46ace2fe Mon Sep 17 00:00:00 2001 From: miozune Date: Tue, 19 Jul 2022 09:16:00 +0900 Subject: Add whitelist to ignore ItemData check for EBF no gas recipe generation (#163) Former-commit-id: 3651df53dd82bd208f88aecd425d50404ed74d2a --- .../bartworks/common/loaders/StaticRecipeChangeLoaders.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java index 28bb257350..ce4811cee3 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/StaticRecipeChangeLoaders.java @@ -79,6 +79,10 @@ public class StaticRecipeChangeLoaders { private static TObjectDoubleHashMap gtEbfGasRecipeTimeMultipliers = null; private static TObjectDoubleHashMap gtEbfGasRecipeConsumptionMultipliers = null; + public static final List whitelistForEBFNoGasRecipeDontCheckItemData = Arrays.asList( + GT_ModHandler.getModItem("TConstruct", "materials", 1L, 12) // Raw Aluminum -> Aluminium Ingot (coremod) + ); + private StaticRecipeChangeLoaders() { } @@ -351,7 +355,14 @@ public class StaticRecipeChangeLoaders { for (GT_Recipe baseRe : base.get(tag)) { if (recipe.mInputs.length == baseRe.mInputs.length && recipe.mOutputs.length == baseRe.mOutputs.length) for (int i = 0; i < recipe.mInputs.length; i++) { - if ((recipe.mFluidInputs == null || recipe.mFluidInputs.length == 0) && BW_Util.checkStackAndPrefix(recipe.mInputs[i]) && BW_Util.checkStackAndPrefix(baseRe.mInputs[i]) && GT_OreDictUnificator.getAssociation(recipe.mInputs[i]).mMaterial.mMaterial.equals(GT_OreDictUnificator.getAssociation(baseRe.mInputs[i]).mMaterial.mMaterial) && GT_Utility.areStacksEqual(recipe.mOutputs[0], baseRe.mOutputs[0])) { + ItemStack tmpInput = recipe.mInputs[i]; + if ( + (recipe.mFluidInputs == null || recipe.mFluidInputs.length == 0) + && whitelistForEBFNoGasRecipeDontCheckItemData.stream().anyMatch(s -> GT_Utility.areStacksEqual(s, tmpInput)) + || (BW_Util.checkStackAndPrefix(recipe.mInputs[i]) + && BW_Util.checkStackAndPrefix(baseRe.mInputs[i]) + && GT_OreDictUnificator.getAssociation(recipe.mInputs[i]).mMaterial.mMaterial.equals(GT_OreDictUnificator.getAssociation(baseRe.mInputs[i]).mMaterial.mMaterial) + && GT_Utility.areStacksEqual(recipe.mOutputs[0], baseRe.mOutputs[0]))) { toAdd.add(recipe.mOutputs[0]); repToAdd.put(tag, recipe); continue recipeLoop; -- cgit