From 87368640cacd9cd8956b8c936b70da94ca565d25 Mon Sep 17 00:00:00 2001 From: Dyonovan Date: Wed, 20 Mar 2024 12:17:48 -0400 Subject: [PATCH] Added Broken Spawner recipe. Fixed not being able to add Crimson Cult Banner to Thaumonomicon --- .../java/com/dreammaster/scripts/ScriptEnderIO.java | 6 ++++++ .../com/dreammaster/scripts/ScriptThaumcraft.java | 6 ++++++ .../java/com/dreammaster/thaumcraft/TCHelper.java | 11 +++++++++++ 3 files changed, 23 insertions(+) diff --git a/src/main/java/com/dreammaster/scripts/ScriptEnderIO.java b/src/main/java/com/dreammaster/scripts/ScriptEnderIO.java index 149c874b9..b224e1419 100644 --- a/src/main/java/com/dreammaster/scripts/ScriptEnderIO.java +++ b/src/main/java/com/dreammaster/scripts/ScriptEnderIO.java @@ -1865,6 +1865,12 @@ public void loadRecipes() { GT_Utility.getIntegratedCircuit(17)) .itemOutputs(getModItem(EnderIO.ID, "blockReinforcedObsidian", 1, 0, missing)).duration(30 * SECONDS) .eut(120).addTo(assemblerRecipes); + GT_Values.RA.stdBuilder() + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.DarkSteel, 1L), + createItemStack(DraconicEvolution.ID, "mobSoul", 1, 0, "{Name:\"Any\"}", missing)) + .itemOutputs(getModItem(EnderIO.ID, "itemBrokenSpawner", 1, 0, missing)).duration(90 * SECONDS) + .eut(65536).addTo(assemblerRecipes); GT_Values.RA.stdBuilder().itemInputs(ItemList.Shape_Mold_Anvil.get(0L)) .itemOutputs(getModItem(EnderIO.ID, "blockDarkSteelAnvil", 1, 0, missing)) .fluidInputs(FluidRegistry.getFluidStack("molten.darksteel", 4464)).duration(45 * SECONDS).eut(120) diff --git a/src/main/java/com/dreammaster/scripts/ScriptThaumcraft.java b/src/main/java/com/dreammaster/scripts/ScriptThaumcraft.java index 5401c3e47..4f7d03505 100644 --- a/src/main/java/com/dreammaster/scripts/ScriptThaumcraft.java +++ b/src/main/java/com/dreammaster/scripts/ScriptThaumcraft.java @@ -5641,6 +5641,12 @@ private void eldritch() { getModItem(TaintedMagic.ID, "ItemMaterial", 1, 8, missing), 'd', getModItem(Thaumcraft.ID, "WandRod", 1, 0, missing)); + TCHelper.addResearchPage( + "CRIMSONRITES", + new ResearchPage( + TCHelper.findArcaneRecipe( + getModItem(Thaumcraft.ID, "blockWoodenDevice", 1, 8, missing), + false))); TCHelper.refreshResearchPages("CRIMSONRITES"); TCHelper.refreshResearchPages("ELDRITCHMINOR"); TCHelper.refreshResearchPages("VOIDMETAL"); diff --git a/src/main/java/com/dreammaster/thaumcraft/TCHelper.java b/src/main/java/com/dreammaster/thaumcraft/TCHelper.java index 5a08329ab..786ac25ac 100644 --- a/src/main/java/com/dreammaster/thaumcraft/TCHelper.java +++ b/src/main/java/com/dreammaster/thaumcraft/TCHelper.java @@ -47,6 +47,17 @@ public static IArcaneRecipe findArcaneRecipe(ItemStack stack) { return null; } + public static IArcaneRecipe findArcaneRecipe(ItemStack stack, boolean ignoreNBT) { + for (Object craft : ThaumcraftApi.getCraftingRecipes()) { + if (craft instanceof IArcaneRecipe) { + if (((IArcaneRecipe) craft).getRecipeOutput() != null + && GT_Utility.areStacksEqual(((IArcaneRecipe) craft).getRecipeOutput(), stack, ignoreNBT)) + return (IArcaneRecipe) craft; + } + } + return null; + } + public static CrucibleRecipe findCrucibleRecipe(ItemStack stack) { for (Object craft : ThaumcraftApi.getCraftingRecipes()) { if (craft instanceof CrucibleRecipe) {