diff --git a/build.gradle b/build.gradle index af268a1..d445c05 100644 --- a/build.gradle +++ b/build.gradle @@ -20,7 +20,7 @@ plugins { id "net.minecraftforge.gradle.forge" version "2.0.2" } */ -version = "1.10.2-1.8" +version = "1.10.2-1.8b" group= "wanion.unidict" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "UniDict" diff --git a/src/main/java/wanion/unidict/Config.java b/src/main/java/wanion/unidict/Config.java index 2df8a6a..794ef2c 100644 --- a/src/main/java/wanion/unidict/Config.java +++ b/src/main/java/wanion/unidict/Config.java @@ -32,7 +32,7 @@ private Config() {} private static final Configuration config = new Configuration(new File("." + SLASH + "config" + SLASH + Reference.MOD_NAME + ".cfg"), Reference.MOD_VERSION); // general configs private static final String general = Configuration.CATEGORY_GENERAL; - public static final boolean keepOneEntry = config.getBoolean("keepOneEntry", general, false, "keep only one entry per ore dict entry?\nNote: enabling this also enables inputReplacement."); + public static final boolean keepOneEntry = config.getBoolean("keepOneEntry", general, false, "keep only one entry per ore dict entry?"); public static final boolean inputReplacement = config.getBoolean("inputReplacement", general, false, "Enabling this will remove all non-standard items as input.\nNote: this will only affect machines that doesn't use OreDictionary."); public static final Set keepOneEntryModBlackSet = Collections.unmodifiableSet(Sets.newLinkedHashSet(Arrays.asList(config.getStringList("keepOneEntryModBlackList", general, new String[]{}, "mods listed here will be blacklisted in keepOneEntry.\nmust be the exact modID.")))); public static boolean autoHideInJEI; diff --git a/src/main/java/wanion/unidict/common/Reference.java b/src/main/java/wanion/unidict/common/Reference.java index e9a8642..f0c016f 100644 --- a/src/main/java/wanion/unidict/common/Reference.java +++ b/src/main/java/wanion/unidict/common/Reference.java @@ -14,7 +14,7 @@ public final class Reference { public static final String MOD_ID = "UniDict"; public static final String MOD_NAME = MOD_ID; - public static final String MOD_VERSION = "1.10.2-1.8"; + public static final String MOD_VERSION = "1.10.2-1.8b"; public static final char SLASH = separatorChar; public static final String MC_VERSION = "[1.10.2]"; diff --git a/src/main/java/wanion/unidict/integration/FurnaceIntegration.java b/src/main/java/wanion/unidict/integration/FurnaceIntegration.java index 57a18d9..3e862bb 100644 --- a/src/main/java/wanion/unidict/integration/FurnaceIntegration.java +++ b/src/main/java/wanion/unidict/integration/FurnaceIntegration.java @@ -39,7 +39,7 @@ public String call() private void optimizeFurnaceRecipes() { - if (!(Config.keepOneEntry || Config.inputReplacement)) + if (!Config.inputReplacement) for (final Map.Entry furnaceRecipe : FurnaceRecipes.instance().getSmeltingList().entrySet()) furnaceRecipe.setValue(resourceHandler.getMainItemStack(furnaceRecipe.getValue())); else { @@ -51,11 +51,12 @@ private void optimizeFurnaceRecipes() final Map.Entry furnaceRecipe = furnaceRecipeIterator.next(); final UniResourceContainer inputContainer = resourceHandler.getContainer(furnaceRecipe.getKey()); final UniResourceContainer outputContainer = resourceHandler.getContainer(furnaceRecipe.getValue()); - if (outputContainer != null && inputContainer == null) { - furnaceRecipe.setValue(outputContainer.getMainEntry(furnaceRecipe.getValue().stackSize)); + if (outputContainer == null) continue; - } else if (outputContainer == null) + else if (inputContainer == null) { + furnaceRecipe.setValue(outputContainer.getMainEntry(furnaceRecipe.getValue().stackSize)); continue; + } final int kind = inputContainer.kind; if (!containerKindMap.containsKey(outputContainer)) containerKindMap.put(outputContainer, new TIntHashSet()); @@ -63,8 +64,8 @@ private void optimizeFurnaceRecipes() if (!kindSet.contains(kind)) { kindSet.add(kind); newRecipes.put(inputContainer.getMainEntry(furnaceRecipe.getKey().stackSize), outputContainer.getMainEntry(furnaceRecipe.getValue().stackSize)); - } else - furnaceRecipeIterator.remove(); + } + furnaceRecipeIterator.remove(); } furnaceRecipes.putAll(newRecipes); } diff --git a/src/main/java/wanion/unidict/integration/MekanismIntegration.java b/src/main/java/wanion/unidict/integration/MekanismIntegration.java index 8b2fd7a..7394a42 100644 --- a/src/main/java/wanion/unidict/integration/MekanismIntegration.java +++ b/src/main/java/wanion/unidict/integration/MekanismIntegration.java @@ -104,7 +104,7 @@ private void fixInfusionMekanismRecipes(@Nonnull final Map> correctRecipes = new HashMap<>(initialSize, 1); - if (!(Config.keepOneEntry || Config.inputReplacement)) { + if (!Config.inputReplacement) { final TIntSet uniques = new TIntHashSet(initialSize, 1); for (final Iterator> infusionRecipeIterator = recipes.values().iterator(); infusionRecipeIterator.hasNext(); ) @@ -114,6 +114,8 @@ private void fixInfusionMekanismRecipes(@Nonnull final Map newRecipe = infusionRecipe.copy(); + if (Config.keepOneEntry) + newRecipe.recipeInput.inputStack = resourceHandler.getMainItemStack(newRecipe.recipeInput.inputStack); newRecipe.recipeOutput.output = correctOutput; final int recipeID = MetaItem.getCumulative(newRecipe.recipeOutput.output, newRecipe.recipeInput.inputStack); if (!uniques.contains(recipeID)) { @@ -122,7 +124,7 @@ private void fixInfusionMekanismRecipes(@Nonnull final Map containerKindMap = new IdentityHashMap<>(); for (final Iterator> infusionRecipeIterator = recipes.values().iterator(); infusionRecipeIterator.hasNext(); ) { diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index ba104ce..44dd5db 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "UniDict", "name": "UniDict", "description": "a mod about unifying all the things.", - "version": "1.8", + "version": "1.8b", "mcversion": "${mcversion}", "url": "http://minecraft.curseforge.com/projects/unidict", "updateUrl": "",