/* SevTech: Ages Improved Backpacks Recipe Script This script handles the recipes for Improved Backpacks. Note: These scripts are created and for the usage in SevTech: Ages and other modpacks curated by DarkPacks. You can use these scripts for reference and for learning but not for copying and pasting and claiming as your own. */ import crafttweaker.item.IItemStack; import crafttweaker.item.IIngredient; import mods.zenstages.Utils; import scripts.crafttweaker.stages.stageZero; import scripts.crafttweaker.stages.stageOne; import scripts.crafttweaker.stages.stageTwo; import scripts.crafttweaker.stages.stageThree; import scripts.crafttweaker.stages.stageFour; import scripts.crafttweaker.stages.stageFive; /* Shaped Recipes */ static shapedRecipes as IIngredient[][][][IItemStack] = { : [ [ [null, , null], [.firstItem, , .firstItem], [null, , null] ] ], : [ [ [null, , null], [, , ], [null, , null] ] ], : [ [ [null, , null], [, , ], [null, , null] ] ], : [ [ [null, , null], [metals.iron.ingot, , metals.iron.ingot], [null, metals.iron.ingot, null] ] ], : [ [ [null, , null], [metals.gold.ingot, , metals.gold.ingot], [null, metals.gold.ingot, null] ] ], : [ [ [null, , null], [, , ], [null, , null] ] ], : [ [ [, , ], [, , ], [, , ] ] ] }; static namedShapedRecipes as IIngredient[][][][string][IItemStack] = { }; /* Mirrored Recipes */ static mirroredRecipes as IIngredient[][][][IItemStack] = { }; static namedMirroredRecipes as IIngredient[][][][string][IItemStack] = { }; /* Shapeless Recipes */ static shapelessRecipes as IIngredient[][][IItemStack] = { }; static namedShapelessRecipes as IIngredient[][][string][IItemStack] = { }; /* Recipe Removals */ static removeRecipes as IItemStack[] = [ ]; static removeFurnace as IIngredient[] = [ ]; function initColourRecipes() { var backpack = ; for i in 0 to 16 { recipes.addShapeless( "ct-improvedbackpacks-backpack-color_" + i, backpack.withTag({Color: i}), [ backpack.marked("bag"), .definition.makeStack(i) ], // Recipe Function function(out, ins, cInfo) { var currentTag = ins.bag.tag; var mergeData = out.tag; var newTag = currentTag.update(mergeData); return out.withTag(newTag); }, // recipeAction (null) null ); } } function init() { // Un-named recipes recipeUtil.process(shapedRecipes, false); recipeUtil.process(mirroredRecipes, true); recipeUtil.process(shapelessRecipes); // Named recipes recipeUtil.processNamed(namedShapedRecipes, false); recipeUtil.processNamed(namedMirroredRecipes, true); recipeUtil.processNamed(namedShapelessRecipes); recipeUtil.removeRecipes(removeRecipes); recipeUtil.removeFurnace(removeFurnace); // Init the colours function. This handles using the correct Dyes we use in the modpack. scripts.crafttweaker.recipes.mods.improvedbackpacks.initColourRecipes(); }