From 94e21c0cf664cf383df9aa53b8d75f3e7dbf2729 Mon Sep 17 00:00:00 2001 From: Vanessa Ezekowitz Date: Sat, 2 Nov 2013 19:52:08 -0400 Subject: [PATCH] multiple changes Make bushes use default farming mod's flour for making pies instead of jungle grass, if that mod is installed. Junglegrass will be used if farming is not present. Make bushes mod support farming_plus more completely - either its or bushes' strawberries may be used to make a strawberry pie or a mixed fruit pie - mix and match the two types of strawberries as desired. move clone node function from junglegrass mod to plants_lib so that other mods can use it. --- bushes_classic/cooking.lua | 69 +++++++++++++++++++++++++------------- bushes_classic/depends.txt | 1 + junglegrass/init.lua | 11 +----- plants_lib/init.lua | 9 +++++ 4 files changed, 57 insertions(+), 33 deletions(-) diff --git a/bushes_classic/cooking.lua b/bushes_classic/cooking.lua index 9b8bd0b..66b0128 100644 --- a/bushes_classic/cooking.lua +++ b/bushes_classic/cooking.lua @@ -36,17 +36,27 @@ for i, berry in ipairs(bushes_classic.bushes) do minetest.register_craftitem(":bushes:"..berry, { description = desc, inventory_image = "bushes_"..berry..".png", - groups = {berry = 1}, + groups = {berry = 1, [berry] = 1}, on_use = minetest.item_eat(1), }) - minetest.register_craft({ - output = "bushes:"..berry.."_pie_raw 1", - recipe = { - { "bushes:sugar", "group:junglegrass", "bushes:sugar" }, - { "bushes:"..berry, "bushes:"..berry, "bushes:"..berry }, - }, - }) + if minetest.registered_nodes["farming:soil"] then + minetest.register_craft({ + output = "bushes:"..berry.."_pie_raw 1", + recipe = { + { "bushes:sugar", "farming:flour", "bushes:sugar" }, + { "group:"..berry, "group:"..berry, "group:"..berry }, + }, + }) + else + minetest.register_craft({ + output = "bushes:"..berry.."_pie_raw 1", + recipe = { + { "bushes:sugar", "group:junglegrass", "bushes:sugar" }, + { "group:"..berry, "group:"..berry, "group:"..berry }, + }, + }) + end end -- Cooked pie @@ -90,19 +100,32 @@ for i, berry in ipairs(bushes_classic.bushes) do }) end -minetest.register_craft({ - output = "bushes:strawberry_pie_raw 1", - recipe = { - { "bushes:sugar", "group:junglegrass", "bushes:sugar" }, - { "farming_plus:strawberry_item", "farming_plus:strawberry_item", "farming_plus:strawberry_item" }, - }, -}) +if minetest.registered_nodes["farming_plus:strawberry"] then + minetest.register_craftitem(":farming_plus:strawberry_item", { + description = "Strawberry", + inventory_image = "farming_strawberry.png", + on_use = minetest.item_eat(2), + groups = {berry=1, strawberry=1} + }) +end + +if minetest.registered_nodes["farming:soil"] then + minetest.register_craft({ + output = "bushes:mixed_berry_pie_raw 2", + recipe = { + { "bushes:sugar", "farming:flour", "bushes:sugar" }, + { "group:berry", "group:berry", "group:berry" }, + { "group:berry", "group:berry", "group:berry" }, + }, + }) +else + minetest.register_craft({ + output = "bushes:mixed_berry_pie_raw 2", + recipe = { + { "bushes:sugar", "group:junglegrass", "bushes:sugar" }, + { "group:berry", "group:berry", "group:berry" }, + { "group:berry", "group:berry", "group:berry" }, + }, + }) +end -minetest.register_craft({ - output = "bushes:mixed_berry_pie_raw 2", - recipe = { - { "bushes:sugar", "group:junglegrass", "bushes:sugar" }, - { "group:berry", "group:berry", "group:berry" }, - { "group:berry", "group:berry", "group:berry" }, - }, -}) diff --git a/bushes_classic/depends.txt b/bushes_classic/depends.txt index c8f7251..828c9f9 100644 --- a/bushes_classic/depends.txt +++ b/bushes_classic/depends.txt @@ -1 +1,2 @@ plants_lib +farming_plus? diff --git a/junglegrass/init.lua b/junglegrass/init.lua index 7f0b4c7..0f525a3 100644 --- a/junglegrass/init.lua +++ b/junglegrass/init.lua @@ -14,15 +14,6 @@ local grasses_list = { {"default:junglegrass" , nil} } -function clone_node(name) - node2={} - node=minetest.registered_nodes[name] - for k,v in pairs(node) do - node2[k]=v - end - return node2 -end - if not minetest.registered_nodes["default:junglegrass"] then minetest.register_node(":default:junglegrass", { description = "Jungle Grass", @@ -43,7 +34,7 @@ if not minetest.registered_nodes["default:junglegrass"] then }, }) else - new_junglegrass=clone_node("default:junglegrass") + new_junglegrass=plantslib:clone_node("default:junglegrass") new_junglegrass.groups.junglegrass = 1 minetest.register_node(":default:junglegrass", new_junglegrass) end diff --git a/plants_lib/init.lua b/plants_lib/init.lua index dbaee89..1197039 100644 --- a/plants_lib/init.lua +++ b/plants_lib/init.lua @@ -59,6 +59,15 @@ function plantslib:is_node_loaded(node_pos) return true end +function plantslib:clone_node(name) + node2={} + node=minetest.registered_nodes[name] + for k,v in pairs(node) do + node2[k]=v + end + return node2 +end + function plantslib:dbg(msg) if DEBUG then print("[Plantlife] "..msg)