import mods.modularmachinery.RecipeBuilder; import mods.astralsorcery.Utils; mods.astralsorcery.Altar.addTraitAltarRecipe("MeatballCraft:shaped/internal/altar/stromlightaltarupgrade", , 5000, 500, [ , , , , , , , , , , , , , , , , , , , , , , , , , , , , ], "astralsorcery.constellation.aevitas"); val allcrystals = Utils.getCrystalORIngredient(false, false); //as crafttweaker.item.IIngredient val ast1 = RecipeBuilder.newBuilder("ast1","auto_astral_altar",1200); ast1.addEnergyPerTickInput(1000); ast1.addItemInput(*4); ast1.addItemInput(*4); ast1.addItemInput(*2); ast1.addItemInput(); ast1.addItemOutput(); ast1.build(); val ast2 = RecipeBuilder.newBuilder("ast2","auto_astral_altar",1200); ast2.addEnergyPerTickInput(1000); ast2.addItemInput(*8); ast2.addItemInput(*2); ast2.addItemInput(); ast2.addItemOutput(); ast2.build(); val ast3 = RecipeBuilder.newBuilder("ast3","auto_astral_altar",1200); ast3.addEnergyPerTickInput(1000); ast3.addItemInput(*2); ast3.addItemInput(); ast3.addItemInput(); ast3.addItemInput(*2); ast3.addItemInput(); ast3.addItemOutput(); ast3.build(); val ast4 = RecipeBuilder.newBuilder("ast4","auto_astral_altar",1200); ast4.addEnergyPerTickInput(1000); ast4.addItemInput(*2); ast4.addItemInput(*2); ast4.addItemInput(*2); ast4.addItemInput(*5); ast4.addItemInput(); ast4.addItemOutput(); ast4.build(); val ast5 = RecipeBuilder.newBuilder("ast5","auto_astral_altar",1200); ast5.addEnergyPerTickInput(1000); ast5.addItemInput(*4); ast5.addItemInput(); ast5.addItemInput(*2); ast5.addItemInput(*2); ast5.addItemInput(); ast5.addItemOutput(); ast5.build(); val ast6 = RecipeBuilder.newBuilder("ast6","auto_astral_altar",1200); ast6.addEnergyPerTickInput(1000); ast6.addItemInput(); ast6.addItemInput(); ast6.addItemInput(*2); ast6.addItemInput(*2); ast6.addItemInput(); ast6.addItemOutput(); ast6.build(); val ast7 = RecipeBuilder.newBuilder("ast7","auto_astral_altar",1200); ast7.addEnergyPerTickInput(1000); ast7.addItemInput(*4); ast7.addItemInput(*2); ast7.addItemInput(*2); ast7.addItemInput(); ast7.addItemOutput(); ast7.build(); val ast8 = RecipeBuilder.newBuilder("ast8","auto_astral_altar",1200); ast8.addEnergyPerTickInput(1000); ast8.addItemInput(*2); ast8.addItemInput(*4); ast8.addItemInput(*2); ast8.addItemInput(); ast8.addItemOutput(); ast8.build(); val ast9 = RecipeBuilder.newBuilder("ast9","auto_astral_altar",1200); ast9.addEnergyPerTickInput(1000); ast9.addItemInput(); ast9.addItemInput(*2); ast9.addItemInput(*3); ast9.addItemInput(*2); ast9.addItemOutput(); ast9.build(); val ast9b = RecipeBuilder.newBuilder("ast9b","auto_astral_altar",1200); ast9b.addEnergyPerTickInput(1000); ast9b.addItemInput(); ast9b.addItemInput(*2); ast9b.addItemInput(*3); ast9b.addItemInput(*2); ast9b.addItemOutput(); ast9b.build(); val ast10 = RecipeBuilder.newBuilder("ast10","auto_astral_altar",1200); ast10.addEnergyPerTickInput(1000); ast10.addItemInput(*2); ast10.addItemInput(*5); ast10.addItemInput(); ast10.addItemInput(*2); ast10.addItemInput(*4); ast10.addItemOutput(); ast10.build(); val ast11 = RecipeBuilder.newBuilder("ast11","auto_astral_altar",1200); ast11.addEnergyPerTickInput(1000); ast11.addItemInput(*4); ast11.addItemInput(*3); ast11.addItemInput(*2); ast11.addItemInput(*6); ast11.addItemInput(*3); ast11.addItemInput(*4); ast11.addItemOutput(); ast11.build(); val ast12 = RecipeBuilder.newBuilder("ast12","auto_astral_altar",1200); ast12.addEnergyPerTickInput(1000); ast12.addItemInput(*2); ast12.addItemInput(*2); ast12.addItemInput(*4); ast12.addItemInput(); ast12.addItemInput(); ast12.addItemOutput(); ast12.build(); val ast12b = RecipeBuilder.newBuilder("ast12b","auto_astral_altar",1200); ast12b.addEnergyPerTickInput(1000); ast12b.addItemInput(*2); ast12b.addItemInput(*2); ast12b.addItemInput(*4); ast12b.addItemInput(); ast12b.addItemInput(); ast12b.addItemOutput(); ast12b.build(); val ast13 = RecipeBuilder.newBuilder("ast13","auto_astral_altar",1200); ast13.addEnergyPerTickInput(1000); ast13.addItemInput(*2); ast13.addItemInput(); ast13.addItemInput(); ast13.addItemInput(*2); ast13.addItemOutput(); ast13.build(); val ast14 = RecipeBuilder.newBuilder("ast14","auto_astral_altar",1200); ast14.addEnergyPerTickInput(1000); ast14.addItemInput(*2); ast14.addItemInput(*2); ast14.addItemInput(*2); ast14.addItemInput(*2); ast14.addItemOutput(); ast14.build(); val ast15 = RecipeBuilder.newBuilder("ast15","auto_astral_altar",1200); ast15.addEnergyPerTickInput(1000); ast15.addItemInput(); ast15.addItemInput(*2); ast15.addItemInput(*2); ast15.addItemInput(*6); ast15.addItemInput(*2); ast15.addItemInput(); ast15.addItemInput(*2); ast15.addItemInput(.withTag({FluidName: "astralsorcery.liquidstarlight", Amount: 1000})); ast15.addItemOutput(); ast15.build(); val ast16 = RecipeBuilder.newBuilder("ast16","auto_astral_altar",1200); ast16.addEnergyPerTickInput(1000); ast16.addItemInput(*2); ast16.addItemInput(); ast16.addItemInput(); ast16.addItemInput(); ast16.addItemInput(*4); ast16.addItemInput(*4); ast16.addItemOutput(*2); ast16.build(); val ast17 = RecipeBuilder.newBuilder("ast17","auto_astral_altar",1200); ast17.addEnergyPerTickInput(1000); ast17.addItemInput(*4); ast17.addItemInput(); ast17.addItemInput(*2); ast17.addItemInput(*2); ast17.addItemInput(); ast17.addItemInput(*2); ast17.addItemOutput(); ast17.build(); val ast17b = RecipeBuilder.newBuilder("ast17b","auto_astral_altar",1200); ast17b.addEnergyPerTickInput(1000); ast17b.addItemInput(*4); ast17b.addItemInput(); ast17b.addItemInput(*2); ast17b.addItemInput(*2); ast17b.addItemInput(); ast17b.addItemInput(*2); ast17b.addItemOutput(); ast17b.build(); val ast18 = RecipeBuilder.newBuilder("ast18","auto_astral_altar",1200); ast18.addEnergyPerTickInput(1000); ast18.addItemInput(*2); ast18.addItemInput(*3); ast18.addItemInput(); ast18.addItemInput(*2); ast18.addItemInput(*2); ast18.addItemOutput(.withTag({astralsorcery: {crystalProperties: {collectiveCapability: 100, size: 900, fract: 0, purity: 100, sizeOverride: -1}}})); ast18.build(); val ast18b = RecipeBuilder.newBuilder("ast18b","auto_astral_altar",1200); ast18b.addEnergyPerTickInput(1000); ast18b.addItemInput(*2); ast18b.addItemInput(*3); ast18b.addItemInput(); ast18b.addItemInput(*2); ast18b.addItemInput(*2); ast18b.addItemOutput(.withTag({astralsorcery: {crystalProperties: {collectiveCapability: 100, size: 900, fract: 0, purity: 100, sizeOverride: -1}}})); ast18b.build(); val ast19 = RecipeBuilder.newBuilder("ast19","auto_astral_altar",1200); ast19.addEnergyPerTickInput(1000); ast19.addItemInput(*2); ast19.addItemInput(*2); ast19.addItemInput(*2); ast19.addItemInput(); ast19.addItemInput(*4); ast19.addItemInput(*2); ast19.addItemInput(*2); ast19.addItemInput(*4); ast19.addItemOutput(.withTag({astralsorcery: {crystalProperties: {collectiveCapability: 100, size: 900, fract: 0, purity: 100, sizeOverride: -1}}})); ast19.build(); val ast19b = RecipeBuilder.newBuilder("ast19b","auto_astral_altar",1200); ast19b.addEnergyPerTickInput(1000); ast19b.addItemInput(*2); ast19b.addItemInput(*2); ast19b.addItemInput(*2); ast19b.addItemInput(); ast19b.addItemInput(*4); ast19b.addItemInput(*2); ast19b.addItemInput(*2); ast19b.addItemInput(*4); ast19b.addItemOutput(.withTag({astralsorcery: {crystalProperties: {collectiveCapability: 100, size: 900, fract: 0, purity: 100, sizeOverride: -1}}})); ast19b.build(); val ast20 = RecipeBuilder.newBuilder("ast20","auto_astral_altar",1200); ast20.addEnergyPerTickInput(1000); ast20.addItemInput(); ast20.addItemInput(*4); ast20.addItemInput(*3); ast20.addItemInput(*2); ast20.addItemInput(*2); ast20.addItemInput(*2); ast20.addItemOutput(); ast20.build(); val ast20b = RecipeBuilder.newBuilder("ast20b","auto_astral_altar",1200); ast20b.addEnergyPerTickInput(1000); ast20b.addItemInput(); ast20b.addItemInput(*4); ast20b.addItemInput(*3); ast20b.addItemInput(*2); ast20b.addItemInput(*2); ast20b.addItemInput(*2); ast20b.addItemOutput(); ast20b.build(); val ast21 = RecipeBuilder.newBuilder("ast21","auto_astral_altar",1200); ast21.addEnergyPerTickInput(1000); ast21.addItemInput(); ast21.addItemInput(*4); ast21.addItemOutput(); ast21.build(); val ast22 = RecipeBuilder.newBuilder("ast22","auto_astral_altar",1200); ast22.addEnergyPerTickInput(1000); ast22.addItemInput(*4); ast22.addItemInput(*8); ast22.addItemInput(*4); ast22.addItemInput(); ast22.addItemOutput(); ast22.build(); val ast23 = RecipeBuilder.newBuilder("ast23","auto_astral_altar",1200); ast23.addEnergyPerTickInput(1000); ast23.addItemInput(*4); ast23.addItemInput(); ast23.addItemInput(*4); ast23.addItemOutput(); ast23.build(); val ast23a = RecipeBuilder.newBuilder("ast23a","auto_astral_altar",1200); ast23a.addEnergyPerTickInput(1000); ast23a.addItemInput(*6); ast23a.addItemInput(); ast23a.addItemInput(*8); ast23a.addItemOutput(*2); ast23a.build(); val ast23b = RecipeBuilder.newBuilder("ast23b","auto_astral_altar",1200); ast23b.addEnergyPerTickInput(1000); ast23b.addItemInput(*10); ast23b.addItemInput(*2); ast23b.addItemInput(*16); ast23b.addItemOutput(*4); ast23b.build(); val ast23c = RecipeBuilder.newBuilder("ast23c","auto_astral_altar",1200); ast23c.addEnergyPerTickInput(1000); ast23c.addItemInput(*18); ast23c.addItemInput(*2); ast23c.addItemInput(*64); ast23c.addItemOutput(*8); ast23c.build(); val ast24 = RecipeBuilder.newBuilder("ast24","auto_astral_altar",1200); ast24.addEnergyPerTickInput(1000); ast24.addItemInput(*4); ast24.addItemInput(); ast24.addItemInput(*4); ast24.addItemOutput(); ast24.build(); val ast24a = RecipeBuilder.newBuilder("ast24a","auto_astral_altar",1200); ast24a.addEnergyPerTickInput(1000); ast24a.addItemInput(*6); ast24a.addItemInput(); ast24a.addItemInput(*8); ast24a.addItemOutput(*2); ast24a.build(); val ast24b = RecipeBuilder.newBuilder("ast24b","auto_astral_altar",1200); ast24b.addEnergyPerTickInput(1000); ast24b.addItemInput(*10); ast24b.addItemInput(*2); ast24b.addItemInput(*16); ast24b.addItemOutput(*4); ast24b.build(); val ast24c = RecipeBuilder.newBuilder("ast24c","auto_astral_altar",1200); ast24c.addEnergyPerTickInput(1000); ast24c.addItemInput(*18); ast24c.addItemInput(*2); ast24c.addItemInput(*64); ast24c.addItemOutput(*8); ast24c.build(); val ast25 = RecipeBuilder.newBuilder("ast25","auto_astral_altar",1200); ast25.addEnergyPerTickInput(1000); ast25.addItemInput(*4); ast25.addItemInput(); ast25.addItemInput(*4); ast25.addItemOutput(); ast25.build(); val ast25a = RecipeBuilder.newBuilder("ast25a","auto_astral_altar",1200); ast25a.addEnergyPerTickInput(1000); ast25a.addItemInput(*6); ast25a.addItemInput(); ast25a.addItemInput(*8); ast25a.addItemOutput(*2); ast25a.build(); val ast25b = RecipeBuilder.newBuilder("ast25b","auto_astral_altar",1200); ast25b.addEnergyPerTickInput(1000); ast25b.addItemInput(*10); ast25b.addItemInput(*2); ast25b.addItemInput(*16); ast25b.addItemOutput(*4); ast25b.build(); val ast25c = RecipeBuilder.newBuilder("ast25c","auto_astral_altar",1200); ast25c.addEnergyPerTickInput(1000); ast25c.addItemInput(*18); ast25c.addItemInput(*2); ast25c.addItemInput(*64); ast25c.addItemOutput(*8); ast25c.build(); val ast26 = RecipeBuilder.newBuilder("ast26","auto_astral_altar",1200); ast26.addEnergyPerTickInput(1000); ast26.addItemInput(*2); ast26.addItemInput(*2); ast26.addItemInput(); ast26.addItemOutput(*16); ast26.build(); val ast27 = RecipeBuilder.newBuilder("ast27","auto_astral_altar",1200); ast27.addEnergyPerTickInput(1000); ast27.addItemInput(*4); ast27.addItemInput(*4); ast27.addItemInput(*2); ast27.addItemInput(*2); ast27.addItemOutput(.withTag({astralsorcery: {}})); ast27.build(); val ast28 = RecipeBuilder.newBuilder("ast28","auto_astral_altar",1200); ast28.addEnergyPerTickInput(1000); ast28.addItemInput(*2); ast28.addItemInput(); ast28.addItemInput(); ast28.addItemInput(); ast28.addItemOutput(*4); ast28.build(); val ast29 = RecipeBuilder.newBuilder("ast29","auto_astral_altar",1200); ast29.addEnergyPerTickInput(1000); ast29.addItemInput(*4); ast29.addItemInput(); ast29.addItemOutput(*4); ast29.build(); val ast30 = RecipeBuilder.newBuilder("ast30","auto_astral_altar",1200); ast30.addEnergyPerTickInput(1000); ast30.addItemInput(*4); ast30.addItemInput(*8); ast30.addItemInput(*4); ast30.addItemInput(*9); ast30.addItemOutput(); ast30.build(); val ast31 = RecipeBuilder.newBuilder("ast31","auto_astral_altar",1200); ast31.addEnergyPerTickInput(1000); ast31.addItemInput(*4); ast31.addItemInput(*11); ast31.addItemInput(); ast31.addItemInput(*3); ast31.addItemInput(*2); ast31.addItemInput(*3); ast31.addItemOutput(); ast31.build(); val ast31b = RecipeBuilder.newBuilder("ast31b","auto_astral_altar",1200); ast31b.addEnergyPerTickInput(1000); ast31b.addItemInput(*4); ast31b.addItemInput(*11); ast31b.addItemInput(); ast31b.addItemInput(*3); ast31b.addItemInput(*2); ast31b.addItemInput(*3); ast31b.addItemOutput(); ast31b.build(); val ast32 = RecipeBuilder.newBuilder("ast32","auto_astral_altar",1200); ast32.addEnergyPerTickInput(1000); ast32.addItemInput(*2); ast32.addItemInput(*15); ast32.addItemInput(); ast32.addItemInput(*2); ast32.addItemInput(*3); ast32.addItemInput(*3); ast32.addItemOutput(); ast32.build(); val ast32b = RecipeBuilder.newBuilder("ast32b","auto_astral_altar",1200); ast32b.addEnergyPerTickInput(1000); ast32b.addItemInput(*2); ast32b.addItemInput(*15); ast32b.addItemInput(); ast32b.addItemInput(*2); ast32b.addItemInput(*3); ast32b.addItemInput(*3); ast32b.addItemOutput(); ast32b.build(); val ast33 = RecipeBuilder.newBuilder("ast33","auto_astral_altar",1200); ast33.addEnergyPerTickInput(1000); ast33.addItemInput(*4); ast33.addItemInput(*16); ast33.addItemInput(*32); ast33.addItemOutput(*5); ast33.build();