diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java | 996 |
1 files changed, 586 insertions, 410 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java index ed1d90df49..c5e68d6a83 100644 --- a/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java +++ b/src/main/java/com/elisis/gtnhlanth/loader/RecipeLoader.java @@ -160,9 +160,6 @@ import ic2.core.Ic2Items; public class RecipeLoader { - // private static final Materials[] BLACKLIST = null; - - @SuppressWarnings("deprecation") public static void loadAccelerator() { /* Actual Beamline Multiblocks */ @@ -3652,49 +3649,55 @@ public class RecipeLoader { } - // public static void loadZylon - - public static void removeCeriumSources() { - - GT_Log.out.print(Tags.MODID + ": AAAAAA"); - + public static void removeCeriumMacerator() { HashSet<GT_Recipe> remove = new HashSet<>(5000); HashSet<GT_Recipe> reAdd = new HashSet<>(5000); - // For Crusher + GT_Log.out.print(Tags.MODID + ": processing macerator recipes"); for (GT_Recipe recipe : maceratorRecipes.getAllRecipes()) { ItemStack input = recipe.mInputs[0]; - // GT_Log.out.print("\n" + input.getDisplayName()); - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if ((oreName.startsWith("ore") || oreName.startsWith("rawOre") || oreName.startsWith("crushed"))) { - GT_Log.out.print(oreName); - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!(oreName.startsWith("ore") || oreName.startsWith("rawOre") || oreName.startsWith("crushed"))) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + modified = true; + GT_Log.out.println( + "in the recipe of '" + recipe.mInputs[0].getDisplayName() + + "', replacing Cerium dust by Cerium Rich Mixture dust"); + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + modified = true; + GT_Log.out.println( + "in the recipe of '" + recipe.mInputs[0].getDisplayName() + + "', replacing Samarium dust by Samarium Ore Concentrate dust"); } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; + } + } maceratorRecipes.getBackend() .removeRecipes(remove); @@ -3702,497 +3705,654 @@ public class RecipeLoader { maceratorRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Crusher done!\n"); + GT_Log.out.print(Tags.MODID + ": macerator recipes done!"); + } + + public static void removeCeriumWasher() { + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); - // For Washer + GT_Log.out.println(Tags.MODID + ": processing orewasher recipes"); for (GT_Recipe recipe : oreWasherRecipes.getAllRecipes()) { ItemStack input = recipe.mInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - if (OreDictionary.getOreName(oreDictID) - .startsWith("crushed") /* && OreDictionary.getOreName(oreDictID).contains("Cerium") */) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + if (!OreDictionary.getOreName(oreDictID) + .startsWith("crushed")) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input: " + + input.getDisplayName() + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input: " + + input.getDisplayName() + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } + + GT_Log.out.println(Tags.MODID + ": regenerating ore washer recipes"); oreWasherRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(oreWasherRecipes::add); oreWasherRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Washer done!\n"); + GT_Log.out.println(Tags.MODID + ": ore washer recipes done!"); + } + + public static void removeCeriumThermalCentrifuge() { + + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); - // For Thermal Centrifuge + GT_Log.out.println(Tags.MODID + ": processing thermal centrifuge recipes"); for (GT_Recipe recipe : thermalCentrifugeRecipes.getAllRecipes()) { ItemStack input = recipe.mInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - if ((OreDictionary.getOreName(oreDictID) - .startsWith("crushed") - || OreDictionary.getOreName(oreDictID) - .startsWith("purified")) /* && OreDictionary.getOreName(oreDictID).contains("Cerium") */) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + if (!(OreDictionary.getOreName(oreDictID) + .startsWith("crushed") + || OreDictionary.getOreName(oreDictID) + .startsWith("purified"))) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input " + + input.getDisplayName() + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input " + + input.getDisplayName() + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } + + GT_Log.out.println(Tags.MODID + ": regenerating thermal centrifuge recipes"); thermalCentrifugeRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(thermalCentrifugeRecipes::add); thermalCentrifugeRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Thermal Centrifuge done!\n"); + GT_Log.out.println(Tags.MODID + ": thermal centrifuge recipes done!"); + } + + public static void removeCeriumCentrifuge() { - // For Centrifuge + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + GT_Log.out.println(Tags.MODID + ": processing centrifuge recipes"); for (GT_Recipe recipe : centrifugeRecipes.getAllRecipes()) { ItemStack input = null; - FluidStack fluidInput = null; if (recipe.mInputs.length > 0) input = recipe.mInputs[0]; - if (recipe.mFluidInputs.length > 0) fluidInput = recipe.mFluidInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("dust") - && (!oreName.contains("Dephosphated")) /* - * oreName.startsWith("dustPureCerium") - * || oreName.startsWith( - * "dustImpureCerium") || - * oreName.startsWith("dustSpace") || - * oreName.startsWith("dustCerium") - */) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustTiny(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustTiny, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustSmall(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustSmall, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustTiny(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustTiny, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustSmall(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustSmall, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!(oreName.startsWith("dust") && (!oreName.contains("Dephosphated")))) { + continue; + } + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustTiny(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustTiny, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium tiny dust turned into Cerium Rich Mixture tiny dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustSmall(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustSmall, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium small dust turned into Cerium Rich Mixture small dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustTiny(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustTiny, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate tiny dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustSmall(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustSmall, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate small dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } - /* - * GT_Recipe tRecipe = recipe.copy(); if (GT_Utility.isStackValid(fluidInput)) { if - * (fluidInput.getLocalizedName() == MyMaterial.plutoniumBasedLiquidFuel.getDefaultName()) { - * tRecipe.mOutputs[1] = GT_Utility.copyAmount(tRecipe.mOutputs[1].stackSize * 2, - * WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); reAdd.add(tRecipe); - * remove.add(tRecipe); } } - */ } + + GT_Log.out.println(Tags.MODID + ": regenerating centrifuge recipes"); centrifugeRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(centrifugeRecipes::add); centrifugeRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Centrifuge done!\n"); + GT_Log.out.println(Tags.MODID + ": centrifuge recipes done!"); + } + + public static void removeCeriumCentrifugeNonCell() { + + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + GT_Log.out.println(Tags.MODID + ": processing centrifuge non cell recipes"); - // For Centrifuge (PA) for (GT_Recipe recipe : centrifugeNonCellRecipes.getAllRecipes()) { ItemStack input = null; - FluidStack fluidInput = null; if (recipe.mInputs.length > 0) input = recipe.mInputs[0]; - if (recipe.mFluidInputs.length > 0) fluidInput = recipe.mFluidInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("dust") && (!oreName.contains("Dephosphated"))) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustTiny(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustTiny, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustSmall(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustSmall, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustTiny(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustTiny, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustSmall(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustSmall, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!((oreName.startsWith("dust") && (!oreName.contains("Dephosphated"))))) { + continue; + } + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustTiny(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustTiny, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium tiny dust turned into Cerium Rich Mixture tiny dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDustSmall(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dustSmall, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium small dust turned into Cerium Rich Mixture small dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustTiny(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustTiny, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium tiny dust turned into Samarium Ore Concentrate tiny dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDustSmall(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dustSmall, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium small dust turned into Samarium Ore Concentrate small dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } + + GT_Log.out.println(Tags.MODID + ": regenerating centrifuge non cell recipes"); centrifugeNonCellRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(centrifugeNonCellRecipes::add); centrifugeNonCellRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Centrifuge (PA) done!\n"); + GT_Log.out.println(Tags.MODID + ": centrifuge non cell recipes done!"); + } + + public static void removeCeriumHammer() { + + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + + GT_Log.out.println(Tags.MODID + ": processing forge hammer recipes"); - // For Hammer for (GT_Recipe recipe : hammerRecipes.getAllRecipes()) { ItemStack input = recipe.mInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("crushed") /* && oreName.contains("Cerium") */) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize * 2, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!oreName.startsWith("crushed")) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize * 2, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } + + GT_Log.out.println(Tags.MODID + ": regenerating forge hammer recipes"); hammerRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(hammerRecipes::add); hammerRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Hammer done!\n"); + GT_Log.out.println(Tags.MODID + ": forge hammer recipes done!"); + } - // Electrolyzer + public static void removeCeriumElectrolyzer() { + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + GT_Log.out.println(Tags.MODID + ": Processing electrolyzer recipes"); for (GT_Recipe recipe : electrolyzerRecipes.getAllRecipes()) { for (ItemStack input : recipe.mInputs) { - if (GT_Utility.isStackValid(input)) { - GT_Log.out.print(input.getDisplayName() + "\n"); - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("dust") - && (oreName.equals("dustHibonite") || oreName.equals("dustLanthaniteCe") - || oreName.equals("dustZirconolite") - || oreName.equals("dustYttrocerite") - || oreName.equals("dustXenotime") - || oreName.equals("dustBastnasite") - || oreName.equals("dustFlorencite"))) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!(oreName.startsWith("dust") + && (oreName.equals("dustHibonite") || oreName.equals("dustLanthaniteCe") + || oreName.equals("dustZirconolite") + || oreName.equals("dustYttrocerite") + || oreName.equals("dustXenotime") + || oreName.equals("dustBastnasite") + || oreName.equals("dustFlorencite")))) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } } + GT_Log.out.println(Tags.MODID + ": regenerating electrolyzer recipes"); electrolyzerRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(electrolyzerRecipes::add); electrolyzerRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Electrolyzer done!\n"); + GT_Log.out.println(Tags.MODID + ": Electrolyzer recipe done!"); + } - // Electrolyzer (PA) + public static void removeCeriumElectrolyzerNonCell() { + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + GT_Log.out.println(Tags.MODID + ": processing electrolyzer non cell recipes"); for (GT_Recipe recipe : electrolyzerNonCellRecipes.getAllRecipes()) { for (ItemStack input : recipe.mInputs) { - if (GT_Utility.isStackValid(input)) { - GT_Log.out.print(input.getDisplayName() + "\n"); - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("dust") - && (oreName.equals("dustHibonite") || oreName.equals("dustLanthaniteCe") - || oreName.equals("dustZirconolite") - || oreName.equals("dustYttrocerite") - || oreName.equals("dustXenotime") - || oreName.equals("dustBastnasite") - || oreName.equals("dustFlorencite"))) { - GT_Recipe tRecipe = recipe.copy(); - boolean modified = false; - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - modified = true; - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - modified = true; - } - } - if (modified) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!(oreName.startsWith("dust") + && (oreName.equals("dustHibonite") || oreName.equals("dustLanthaniteCe") + || oreName.equals("dustZirconolite") + || oreName.equals("dustYttrocerite") + || oreName.equals("dustXenotime") + || oreName.equals("dustBastnasite") + || oreName.equals("dustFlorencite")))) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + boolean modified = false; + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); + modified = true; + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate dust."); + modified = true; } } + if (modified) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } } + GT_Log.out.println(Tags.MODID + ": regenerating electrolyzer non cell recipes"); electrolyzerNonCellRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(electrolyzerNonCellRecipes::add); electrolyzerNonCellRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Electrolyzer (PA) done!\n"); + GT_Log.out.println(Tags.MODID + ": Electrolyzer non cell recipes done!"); + } - // For Simple Washer + public static void removeCeriumSimpleWasher() { + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + GT_Log.out.println(Tags.MODID + ": processing simple washer recipes."); for (GT_Recipe recipe : simpleWasherRecipes.getAllRecipes()) { ItemStack input = recipe.mInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("dustImpureCerium") || oreName.startsWith("dustImpureSamarium") - || oreName.startsWith("dustPureSamarium") - || oreName.startsWith("dustPureCerium")) { - GT_Recipe tRecipe = recipe.copy(); - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); - } - } - if (!tRecipe.equals(recipe)) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + + if (!(oreName.startsWith("dustImpureCerium") || oreName.startsWith("dustImpureSamarium") + || oreName.startsWith("dustPureSamarium") + || oreName.startsWith("dustPureCerium"))) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); + } else if (tRecipe.mOutputs[i].isItemEqual(Materials.Samarium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 1)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Samarium dust turned into Samarium Ore Concentrate dust."); } } + if (!tRecipe.equals(recipe)) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; } } + + GT_Log.out.println(Tags.MODID + ": regenerating simple washer recipes"); simpleWasherRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(simpleWasherRecipes::add); simpleWasherRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Simple Washer done!\n"); + GT_Log.out.println(Tags.MODID + ": Simple washer recipes done!"); + } + + public static void removeCeriumDehydrator() { + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + GT_Log.out.println(Tags.MODID + ": processing chemical dehydrator recipes."); - // Dehydrator for (GT_Recipe recipe : chemicalDehydratorRecipes.getAllRecipes()) { if (recipe.mInputs.length == 0) { continue; } ItemStack input = recipe.mInputs[0]; - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - final String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.startsWith("dust") - && (oreName.equals("dustCerite") || oreName.equals("dustFluorcaphite") - || oreName.equals("dustZirkelite") - || oreName.equals("dustGadoliniteCe") - || oreName.equals("dustGadoliniteY") - || oreName.equals("dustPolycrase") - || oreName.equals("dustBastnasite"))) { - GT_Recipe tRecipe = recipe.copy(); - for (int i = 0; i < tRecipe.mOutputs.length; i++) { - if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; - if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { - tRecipe.mOutputs[i] = GT_Utility.copyAmount( - tRecipe.mOutputs[i].stackSize, - WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 1)); - } - } - if (!tRecipe.equals(recipe)) { - reAdd.add(tRecipe); - remove.add(recipe); - } - break; + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + final String oreName = OreDictionary.getOreName(oreDictID); + if (!oreName.startsWith("dust")) { + continue; + } + if (!(oreName.equals("dustCerite") || oreName.equals("dustFluorcaphite") + || oreName.equals("dustZirkelite") + || oreName.equals("dustGadoliniteCe") + || oreName.equals("dustGadoliniteY") + || oreName.equals("dustPolycrase") + || oreName.equals("dustBastnasite"))) { + continue; + } + + GT_Recipe tRecipe = recipe.copy(); + for (int i = 0; i < tRecipe.mOutputs.length; i++) { + if (!GT_Utility.isStackValid(tRecipe.mOutputs[i])) continue; + + if (tRecipe.mOutputs[i].isItemEqual(Materials.Cerium.getDust(1))) { + tRecipe.mOutputs[i] = GT_Utility.copyAmount( + tRecipe.mOutputs[i].stackSize, + WerkstoffMaterialPool.CeriumRichMixture + .get(OrePrefixes.dust, tRecipe.mOutputs[i].stackSize)); + GT_Log.out.println( + Tags.MODID + ": recipe with input oredict: " + + oreName + + " get Cerium dust turned into Cerium Rich Mixture dust."); } } + if (!tRecipe.equals(recipe)) { + reAdd.add(tRecipe); + remove.add(recipe); + } + break; + } + } + GT_Log.out.println(Tags.MODID + ": regenerating chemical dehydrator recipes"); chemicalDehydratorRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(chemicalDehydratorRecipes::add); @@ -4204,64 +4364,78 @@ public class RecipeLoader { remove.clear(); reAdd.clear(); - GT_Log.out.print("Dehydrator done!\n"); + GT_Log.out.println(Tags.MODID + ": chemical dehydrator recipes done!"); - /* - * DOES NOT WORK, something to do with load times for sifter recipes or some shit //Sifter for (GT_Recipe recipe - * : sifterRecipes.mRecipeList) { if (recipe.mInputs.length == 0) break; ItemStack input = recipe.mInputs[0]; - * GT_Log.out.print("Sift ore found " + input.getDisplayName() + "\n"); if (GT_Utility.isStackValid(input)) { if - * (true) { GT_Log.out.print("Sift ore found and iffed " + input.getDisplayName() + "\n"); //GT_Recipe tRecipe = - * recipe.copy(); remove.add(recipe); break; } } } sifterRecipes.mRecipeList.removeAll(remove); - * sifterRecipes.mRecipeList.addAll(reAdd); sifterRecipes.reInit(); GT_Log.out.print(Tags.MODID + ": Replace " + - * remove.size() + "! "); remove.clear(); reAdd.clear(); GT_Log.out.print("Sifter done!\n"); - */ - // Chemical Bath + } + + public static void removeCeriumChemicalBath() { + HashSet<GT_Recipe> remove = new HashSet<>(5000); + HashSet<GT_Recipe> reAdd = new HashSet<>(5000); + + GT_Log.out.println(Tags.MODID + ": marking recipes in chem bath for removal!"); for (GT_Recipe recipe : chemicalBathRecipes.getAllRecipes()) { - // ItemStack input = recipe.mInputs[0]; for (ItemStack input : recipe.mInputs) { - GT_Log.out.print(input.getDisplayName() + "\n"); - if (GT_Utility.isStackValid(input)) { - int[] oreDict = OreDictionary.getOreIDs(input); - for (int oreDictID : oreDict) { - String oreName = OreDictionary.getOreName(oreDictID); - if (oreName.equals("dustTin") || oreName.equals("dustRutile")) { - GT_Recipe tRecipe = recipe.copy(); - remove.add(recipe); - break; - } + if (!GT_Utility.isStackValid(input)) { + continue; + } + int[] oreDict = OreDictionary.getOreIDs(input); + for (int oreDictID : oreDict) { + String oreName = OreDictionary.getOreName(oreDictID); + if (oreName.equals("dustTin")) { + GT_Log.out.println(Tags.MODID + ": chem bath recipe with tin dust detected, removing it."); + remove.add(recipe); + break; + } + if (oreName.equals("dustRutile")) { + GT_Log.out.println(Tags.MODID + ": chem bath recipe with rutile dust detected, removing it."); + remove.add(recipe); + break; } } } } + GT_Log.out.println(Tags.MODID + ": regenerating chem bath recipes"); chemicalBathRecipes.getBackend() .removeRecipes(remove); reAdd.forEach(chemicalBathRecipes::add); chemicalBathRecipes.getBackend() .reInit(); - GT_Log.out.print(Tags.MODID + ": Replace " + remove.size() + "! "); - remove.clear(); reAdd.clear(); - GT_Log.out.print("Chemical Bath done!\n"); + GT_Log.out.println("Chemical Bath done!"); + } + + public static void removeCeriumSources() { + + removeCeriumMacerator(); + removeCeriumWasher(); + removeCeriumThermalCentrifuge(); + removeCeriumCentrifuge(); + removeCeriumCentrifugeNonCell(); + removeCeriumHammer(); + removeCeriumElectrolyzer(); + removeCeriumElectrolyzerNonCell(); + removeCeriumSimpleWasher(); + removeCeriumDehydrator(); + removeCeriumChemicalBath(); // For Cauldron Wash + GT_Log.out.println(Tags.MODID + ": processing cauldron washing recipes to replace cerium sources"); registerCauldronCleaningFor(Materials.Cerium, WerkstoffMaterialPool.CeriumRichMixture.getBridgeMaterial()); registerCauldronCleaningFor( Materials.Samarium, WerkstoffMaterialPool.SamariumOreConcentrate.getBridgeMaterial()); - GT_Log.out.print(Tags.MODID + ": Replace 3! "); - GT_Log.out.print("Cauldron Wash done!\n"); + GT_Log.out.println(Tags.MODID + ": processing cauldron washing recipes done!"); // For Crafting Table + GT_Log.out.println(Tags.MODID + ": processing crafting recipes to replace cerium sources"); CraftingManager.getInstance() .getRecipeList() .forEach(RecipeLoader::replaceInCraftTable); - - GT_Log.out.print(Tags.MODID + ": Replace Unknown! "); - GT_Log.out.print("Crafting Table done!\n"); + GT_Log.out.println(Tags.MODID + ": processing crafting recipes done!"); } public static void replaceInCraftTable(Object obj) { @@ -4277,6 +4451,7 @@ public class RecipeLoader { if (PlatinumSludgeOverHaul.checkRecipe(input, Materials.Cerium)) { return; } + GT_Log.out.println("replacing crafting recipe of Cerium dust by Cerium Rich Mixture"); mutableRecipe.gt5u$setRecipeOutputItem(WerkstoffMaterialPool.CeriumRichMixture.get(OrePrefixes.dust, 2)); } else if (GT_Utility.areStacksEqual(result, Materials.Samarium.getDust(1), true)) { if (PlatinumSludgeOverHaul.checkRecipe(input, Materials.Samarium)) { @@ -4284,6 +4459,7 @@ public class RecipeLoader { } mutableRecipe .gt5u$setRecipeOutputItem(WerkstoffMaterialPool.SamariumOreConcentrate.get(OrePrefixes.dust, 2)); + GT_Log.out.println("replacing crafting recipe of Samarium dust by Samarium Ore Concentrate"); } } |