summaryrefslogtreecommitdiff
path: root/technic/machines/register/extractor_recipes.lua
diff options
context:
space:
mode:
Diffstat (limited to 'technic/machines/register/extractor_recipes.lua')
-rw-r--r--technic/machines/register/extractor_recipes.lua59
1 files changed, 59 insertions, 0 deletions
diff --git a/technic/machines/register/extractor_recipes.lua b/technic/machines/register/extractor_recipes.lua
new file mode 100644
index 0000000..1de0ba0
--- /dev/null
+++ b/technic/machines/register/extractor_recipes.lua
@@ -0,0 +1,59 @@
+
+local S = technic.getter
+
+technic.register_recipe_type("extracting", { description = S("Extracting") })
+
+function technic.register_extractor_recipe(data)
+ data.time = data.time or 4
+ technic.register_recipe("extracting", data)
+end
+
+if minetest.get_modpath("dye") then
+ -- check if we are using dye or unifieddyes
+ local unifieddyes = minetest.get_modpath("unifieddyes")
+
+ -- register recipes with the same crafting ratios as `dye` provides
+ local dye_recipes = {
+ {"technic:coal_dust", "dye:black 2"},
+ {"default:grass_1", "dye:green 1"},
+ {"default:dry_shrub", "dye:brown 1"},
+ {"default:junglegrass", "dye:green 2"},
+ {"default:cactus", "dye:green 4"},
+ {"flowers:geranium", "dye:blue 4"},
+ {"flowers:dandelion_white", "dye:white 4"},
+ {"flowers:dandelion_yellow", "dye:yellow 4"},
+ {"flowers:tulip", "dye:orange 4"},
+ {"flowers:rose", "dye:red 4"},
+ {"flowers:viola", "dye:violet 4"},
+ {"bushes:blackberry", unifieddyes and "unifieddyes:magenta_s50 4" or "dye:violet 4"},
+ {"bushes:blueberry", unifieddyes and "unifieddyes:magenta_s50 4" or "dye:magenta 4"},
+ }
+
+ for _, data in ipairs(dye_recipes) do
+ technic.register_extractor_recipe({input = {data[1]}, output = data[2]})
+ end
+
+ -- overwrite the existing crafting recipes
+ local dyes = {"white", "red", "yellow", "blue", "violet", "orange"}
+ for _, color in ipairs(dyes) do
+ minetest.register_craft({
+ type = "shapeless",
+ output = "dye:"..color.." 1",
+ recipe = {"group:flower,color_"..color},
+ })
+
+ end
+ minetest.register_craft({
+ type = "shapeless",
+ output = "dye:black 1",
+ recipe = {"group:coal"},
+ })
+
+ if unifieddyes then
+ minetest.register_craft({
+ type = "shapeless",
+ output = "dye:green 1",
+ recipe = {"default:cactus"},
+ })
+ end
+end