Compare commits

...

41 Commits

Author SHA1 Message Date
131024ee97 Merge remote-tracking branch 'upstream/master' 2022-05-27 18:28:29 +02:00
804343f7c0 fix large cactus seedling growth 2022-05-08 10:29:10 +01:00
4c50a02a0e change of jungle grass on rainforest litter (thx nixnoxus) 2022-03-19 07:55:03 +00:00
52a3856f26 Merge remote-tracking branch 'upstream/master' 2022-01-22 19:58:01 +01:00
79f9cb3294 support for fern saplings in plantlife mod (thanks nixnoxus) 2022-01-12 08:19:42 +00:00
52ada84c58 Merge remote-tracking branch 'upstream/master' 2021-10-04 21:31:30 +02:00
2d7dbc735c added sunflowers to list 2021-09-28 14:04:25 +01:00
a920032dd5 Merge remote-tracking branch 'upstream/master' 2021-08-31 19:44:56 +02:00
b6b40c558a add giant redwood sapling support 2021-08-20 11:24:56 +01:00
d534523a1d Merge remote-tracking branch 'upstream/master' 2021-06-20 17:03:28 +02:00
75ec006643 dry grass grows on dry dirt 2021-06-20 08:06:35 +01:00
acea1713b7 Merge remote-tracking branch 'upstream/master' 2021-04-17 13:42:29 +02:00
b5819d022e reduce shapeless crafts 2021-04-13 21:00:25 +01:00
1a9c67b1e3 Merge remote-tracking branch 'upstream/master' 2021-04-04 20:56:38 +02:00
05e211a037 can grow cactus and papyrus 2021-04-01 11:51:55 +01:00
fdc62f06b0 Merge remote-tracking branch 'upstream/master' 2021-03-12 12:15:29 +01:00
807388d632 add parsley and artichoke 2021-03-11 09:49:20 +00:00
2658577776 Merge remote-tracking branch 'upstream/master' 2021-02-23 21:14:06 +01:00
634d1496aa ignore xdecor's flowerpots when adding flowers 2021-02-20 15:52:36 +00:00
8fc57f7746 tweak flower addition to wait until mods loaded 2021-02-20 15:33:03 +00:00
7c106254d2 Merge remote-tracking branch 'upstream/master' 2021-01-23 12:53:15 +01:00
308baf3a17 update mod.conf info 2021-01-21 09:53:40 +00:00
b50f533579 Merge remote-tracking branch 'upstream/master' 2021-01-15 21:08:57 +01:00
587e0fbf02 added german translation (thanks rti) 2021-01-13 10:27:02 +00:00
2c90275687 Merge remote-tracking branch 'upstream/master' 2020-12-15 23:25:43 +01:00
30d0c02d8c only use bonemeal items when actually used. 2020-12-13 18:17:11 +00:00
2ec1168292 add vanilla and soy 2020-12-13 10:36:06 +00:00
1aba553059 amend pepper stages 2020-12-13 09:20:21 +00:00
fefe122dc9 added olive and lemon trees 2020-12-12 20:05:25 +00:00
5ce62f46e7 add blackberry and lettuce 2020-12-10 15:35:18 +00:00
93a46c05a6 Merge remote-tracking branch 'upstream/master' 2020-11-10 20:00:23 +01:00
77c02f1b7a added recipe 9x seed = 1x mulch 2020-11-10 18:00:11 +00:00
afc6d7ef12 Merge remote-tracking branch 'upstream/master' 2020-08-30 12:51:47 +02:00
130fffbf97 mt5.x translations added/updated (thanks dacmot) 2020-08-30 08:12:21 +01:00
b604ca39da Merge remote-tracking branch 'upstream/master' 2020-08-04 20:48:01 +02:00
a5a4798aed rename creative check function 2020-08-03 20:27:47 +01:00
97f4b11110 Merge remote-tracking branch 'upstream/master' 2020-07-17 22:45:16 +02:00
ebbec592bf fix loaded translations 2020-07-08 21:10:36 +01:00
19df0b4036 add locales for minetest 5.x translation 2020-07-08 21:06:13 +01:00
e6eaea544c update translation check, added spanish and italian locale 2020-07-08 14:05:34 +01:00
e4a0a9bfe9 add cabbage support 2020-07-01 19:23:47 +01:00
15 changed files with 189 additions and 71 deletions

View File

@ -33,5 +33,6 @@ Changelog:
- 1.1 - Added {can_bonemeal=1} group for special nodes - 1.1 - Added {can_bonemeal=1} group for special nodes
- 1.2 - Added support for minetest 5.0 cactus seedling, blueberry bush sapling and emergent jungle tree saplings, additional flowers and pine bush sapling. - 1.2 - Added support for minetest 5.0 cactus seedling, blueberry bush sapling and emergent jungle tree saplings, additional flowers and pine bush sapling.
- 1.3 - Ability to craft dye from mulch, bonemeal and fertiliser (thanks orbea) - 1.3 - Ability to craft dye from mulch, bonemeal and fertiliser (thanks orbea)
- 1.4 - Add support for fern saplings from plantlife mod (thanks nixnoxus)
Lucky Blocks: 6 Lucky Blocks: 6

View File

@ -7,3 +7,5 @@ technic_worldgen?
lucky_block? lucky_block?
flowers? flowers?
dye? dye?
ferns?
dryplants?

122
init.lua
View File

@ -6,12 +6,13 @@ local min, max, random = math.min, math.max, math.random
-- Load support for intllib. -- Load support for intllib.
local S, NS = dofile(path .. "/intllib.lua") local S = minetest.get_translator and minetest.get_translator("bonemeal") or
dofile(path .. "/intllib.lua")
-- creative check -- creative check
local creative_mode_cache = minetest.settings:get_bool("creative_mode") local creative_mode_cache = minetest.settings:get_bool("creative_mode")
function is_creative(name) function bonemeal.is_creative(name)
return creative_mode_cache or minetest.check_player_privs(name, {creative = true}) return creative_mode_cache or minetest.check_player_privs(name, {creative = true})
end end
@ -36,6 +37,17 @@ local function pine_grow(pos)
end end
-- special function for cactus growth
local function cactus_grow(pos)
default.grow_cactus(pos, minetest.get_node(pos))
end
-- special function for papyrus growth
local function papyrus_grow(pos)
default.grow_papyrus(pos, minetest.get_node(pos))
end
-- default saplings -- default saplings
local saplings = { local saplings = {
{"default:sapling", default.grow_new_apple_tree, "soil"}, {"default:sapling", default.grow_new_apple_tree, "soil"},
@ -48,7 +60,9 @@ local saplings = {
{"default:acacia_bush_sapling", default.grow_acacia_bush, "soil"}, {"default:acacia_bush_sapling", default.grow_acacia_bush, "soil"},
{"default:large_cactus_seedling", default.grow_large_cactus, "sand"}, {"default:large_cactus_seedling", default.grow_large_cactus, "sand"},
{"default:blueberry_bush_sapling", default.grow_blueberry_bush, "soil"}, {"default:blueberry_bush_sapling", default.grow_blueberry_bush, "soil"},
{"default:pine_bush_sapling", default.grow_pine_bush, "soil"} {"default:pine_bush_sapling", default.grow_pine_bush, "soil"},
{"default:cactus", cactus_grow, "sand"},
{"default:papyrus", papyrus_grow, "soil"}
} }
-- helper tables ( "" denotes a blank item ) -- helper tables ( "" denotes a blank item )
@ -62,31 +76,32 @@ local dry_grass = {
"default:dry_grass_5", "", "" "default:dry_grass_5", "", ""
} }
-- add all in-game flowers except waterlily -- loads mods then add all in-game flowers except waterlily
local flowers = {} local flowers = {}
for node, def in pairs(minetest.registered_nodes) do minetest.after(0.1, function()
if def.groups.flower and not node:find("waterlily") then for node, def in pairs(minetest.registered_nodes) do
if def.groups
and def.groups.flower
and not node:find("waterlily")
and not node:find("xdecor:potted_") then
flowers[#flowers + 1] = node flowers[#flowers + 1] = node
end end
end end
end)
-- add additional bakedclay flowers if enabled
if minetest.get_modpath("bakedclay") then
flowers[#flowers + 1] = "bakedclay:delphinium"
flowers[#flowers + 1] = "bakedclay:thistle"
flowers[#flowers + 1] = "bakedclay:lazarus"
flowers[#flowers + 1] = "bakedclay:mannagrass"
flowers[#flowers + 1] = ""
end
-- default biomes deco -- default biomes deco
local deco = { local deco = {
{"default:dry_dirt", dry_grass, {}},
{"default:dry_dirt_with_dry_grass", dry_grass, {}},
{"default:dirt_with_dry_grass", dry_grass, flowers}, {"default:dirt_with_dry_grass", dry_grass, flowers},
{"default:sand", {}, {"default:dry_shrub", "", "", ""} }, {"default:sand", {}, {"default:dry_shrub", "", "", ""} },
{"default:desert_sand", {}, {"default:dry_shrub", "", "", ""} }, {"default:desert_sand", {}, {"default:dry_shrub", "", "", ""} },
{"default:silver_sand", {}, {"default:dry_shrub", "", "", ""} }, {"default:silver_sand", {}, {"default:dry_shrub", "", "", ""} },
{"default:dirt_with_rainforest_litter", {}, {"default:junglegrass", "", "", ""}}
} }
@ -180,7 +195,7 @@ local function check_sapling(pos, nodename)
if can_grow then if can_grow then
particle_effect(pos) particle_effect(pos)
grow_tree(pos, saplings[n][2]) grow_tree(pos, saplings[n][2])
return return true
end end
end end
end end
@ -215,7 +230,7 @@ local function check_crops(pos, nodename, strength)
particle_effect(pos) particle_effect(pos)
return return true
end end
end end
end end
@ -437,13 +452,13 @@ function bonemeal:on_use(pos, strength, node)
default.grow_papyrus(pos, node) default.grow_papyrus(pos, node)
particle_effect(pos) particle_effect(pos)
return return true
elseif node.name == "default:cactus" then elseif node.name == "default:cactus" then
default.grow_cactus(pos, node) default.grow_cactus(pos, node)
particle_effect(pos) particle_effect(pos)
return return true
end end
-- grow grass and flowers -- grow grass and flowers
@ -451,7 +466,7 @@ function bonemeal:on_use(pos, strength, node)
or minetest.get_item_group(node.name, "sand") > 0 or minetest.get_item_group(node.name, "sand") > 0
or minetest.get_item_group(node.name, "can_bonemeal") > 0 then or minetest.get_item_group(node.name, "can_bonemeal") > 0 then
check_soil(pos, node.name, strength) check_soil(pos, node.name, strength)
return return true
end end
-- light check depending on strength (strength of 4 = no light needed) -- light check depending on strength (strength of 4 = no light needed)
@ -460,14 +475,17 @@ function bonemeal:on_use(pos, strength, node)
end end
-- check for tree growth if pointing at sapling -- check for tree growth if pointing at sapling
if minetest.get_item_group(node.name, "sapling") > 0 if (minetest.get_item_group(node.name, "sapling") > 0
or node.name == "default:large_cactus_seedling")
and random(5 - strength) == 1 then and random(5 - strength) == 1 then
check_sapling(pos, node.name) check_sapling(pos, node.name)
return return true
end end
-- check for crop growth -- check for crop growth
check_crops(pos, node.name, strength) if check_crops(pos, node.name, strength) then
return true
end
end end
@ -493,13 +511,14 @@ minetest.register_craftitem("bonemeal:mulch", {
return return
end end
-- call global on_use function with strength of 1
if bonemeal:on_use(pointed_thing.under, 1) then
-- take item if not in creative -- take item if not in creative
if not is_creative(user:get_player_name()) then if not bonemeal.is_creative(user:get_player_name()) then
itemstack:take_item() itemstack:take_item()
end end
end
-- call global on_use function with strength of 1
bonemeal:on_use(pointed_thing.under, 1)
return itemstack return itemstack
end end
@ -523,13 +542,14 @@ minetest.register_craftitem("bonemeal:bonemeal", {
return return
end end
-- call global on_use function with strength of 2
if bonemeal:on_use(pointed_thing.under, 2) then
-- take item if not in creative -- take item if not in creative
if not is_creative(user:get_player_name()) then if not bonemeal.is_creative(user:get_player_name()) then
itemstack:take_item() itemstack:take_item()
end end
end
-- call global on_use function with strength of 2
bonemeal:on_use(pointed_thing.under, 2)
return itemstack return itemstack
end end
@ -553,13 +573,14 @@ minetest.register_craftitem("bonemeal:fertiliser", {
return return
end end
-- call global on_use function with strength of 3
if bonemeal:on_use(pointed_thing.under, 3) then
-- take item if not in creative -- take item if not in creative
if not is_creative(user:get_player_name()) then if not bonemeal.is_creative(user:get_player_name()) then
itemstack:take_item() itemstack:take_item()
end end
end
-- call global on_use function with strength of 3
bonemeal:on_use(pointed_thing.under, 3)
return itemstack return itemstack
end end
@ -601,41 +622,45 @@ minetest.register_craft({
-- bonemeal (from bone) -- bonemeal (from bone)
minetest.register_craft({ minetest.register_craft({
type = "shapeless",
output = "bonemeal:bonemeal 2", output = "bonemeal:bonemeal 2",
recipe = {"group:bone"} recipe = {{"group:bone"}}
}) })
-- bonemeal (from player bones) -- bonemeal (from player bones)
minetest.register_craft({ minetest.register_craft({
type = "shapeless",
output = "bonemeal:bonemeal 4", output = "bonemeal:bonemeal 4",
recipe = {"bones:bones"} recipe = {{"bones:bones"}}
}) })
-- bonemeal (from coral skeleton) -- bonemeal (from coral skeleton)
minetest.register_craft({ minetest.register_craft({
type = "shapeless",
output = "bonemeal:bonemeal 2", output = "bonemeal:bonemeal 2",
recipe = {"default:coral_skeleton"} recipe = {{"default:coral_skeleton"}}
}) })
-- mulch -- mulch
minetest.register_craft({ minetest.register_craft({
type = "shapeless",
output = "bonemeal:mulch 4", output = "bonemeal:mulch 4",
recipe = { recipe = {
"group:tree", "group:leaves", "group:leaves", {"group:tree", "group:leaves", "group:leaves"},
"group:leaves", "group:leaves", "group:leaves", {"group:leaves", "group:leaves", "group:leaves"},
"group:leaves", "group:leaves", "group:leaves" {"group:leaves", "group:leaves", "group:leaves"}
}
})
minetest.register_craft({
output = "bonemeal:mulch",
recipe = {
{"group:seed", "group:seed", "group:seed"},
{"group:seed", "group:seed", "group:seed"},
{"group:seed", "group:seed", "group:seed"}
} }
}) })
-- fertiliser -- fertiliser
minetest.register_craft({ minetest.register_craft({
type = "shapeless",
output = "bonemeal:fertiliser 2", output = "bonemeal:fertiliser 2",
recipe = {"bonemeal:bonemeal", "bonemeal:mulch"} recipe = {{"bonemeal:bonemeal", "bonemeal:mulch"}}
}) })
@ -662,4 +687,5 @@ end
dofile(path .. "/mods.lua") dofile(path .. "/mods.lua")
dofile(path .. "/lucky_block.lua") dofile(path .. "/lucky_block.lua")
print (S("[MOD] bonemeal loaded"))
print ("[MOD] bonemeal loaded")

7
locale/bonemeal.de.tr Normal file
View File

@ -0,0 +1,7 @@
# textdomain:bonemeal
[MOD] bonemeal loaded=[MOD] bonemeal geladen
Bone=Knochen
Bone Meal=Knochenmehl
Fertiliser=Dünger
Gelatin Powder=Gelatinepulver
Mulch=Mulch

7
locale/bonemeal.en.tr Normal file
View File

@ -0,0 +1,7 @@
# textdomain:bonemeal
#[MOD] bonemeal loaded=
#Bone=
#Bone Meal=
#Fertiliser=
#Gelatin Powder=
#Mulch=

7
locale/bonemeal.es.tr Normal file
View File

@ -0,0 +1,7 @@
# textdomain:bonemeal
[MOD] bonemeal loaded=[MOD] bonemeal cargado
Bone=Hueso
Bone Meal=Comida de hueso
Fertiliser=Fertilizante
#Gelatin Powder=
Mulch=Mantillo

7
locale/bonemeal.fr.tr Normal file
View File

@ -0,0 +1,7 @@
# textdomain:bonemeal
[MOD] bonemeal loaded=[MOD] bonemeal chargé
Bone=Os
Bone Meal=Poudre d'os
Fertiliser=Engrais
Gelatin Powder=Poudre de gélatine
Mulch=Paillis

7
locale/bonemeal.it.tr Normal file
View File

@ -0,0 +1,7 @@
# textdomain:bonemeal
[MOD] bonemeal loaded=[MOD] bonemeal caricata
Bone=Ossa
Bone Meal=Pasto osseo
Fertiliser=Fertilizzante
#Gelatin Powder=
Mulch=Pacciame

7
locale/bonemeal.ru.tr Normal file
View File

@ -0,0 +1,7 @@
# textdomain:bonemeal
[MOD] bonemeal loaded=[MOD] костная мука загружена
Bone=Кость
Bone Meal=Костная Мука
Fertiliser=Удобрение
#Gelatin Powder=
Mulch=Мульча

7
locale/es.txt Normal file
View File

@ -0,0 +1,7 @@
# init.lua
Mulch = Mantillo
Bone Meal = Comida de hueso
Fertiliser = Fertilizante
Bone = Hueso
[MOD] bonemeal loaded = [MOD] bonemeal cargado

7
locale/it.txt Normal file
View File

@ -0,0 +1,7 @@
# init.lua
Mulch = Pacciame
Bone Meal = Pasto osseo
Fertiliser = Fertilizzante
Bone = Ossa
[MOD] bonemeal loaded = [MOD] bonemeal caricata

View File

@ -4,4 +4,4 @@ Mulch =
Bone Meal = Bone Meal =
Fertiliser = Fertiliser =
Bone = Bone =
[bonemeal] loaded = [MOD] bonemeal loaded =

View File

@ -22,8 +22,7 @@ if minetest.get_modpath("lucky_block") then
{"nod", "default:chest", 0, { {"nod", "default:chest", 0, {
{name = "bonemeal:mulch", max = 20}, {name = "bonemeal:mulch", max = 20},
{name = "bonemeal:bonemeal", max = 15}, {name = "bonemeal:bonemeal", max = 15},
{name = "bonemeal:fertiliser", max = 10}, {name = "bonemeal:fertiliser", max = 10}
}}, }}
}) })
end end

View File

@ -1 +1,4 @@
name = bonemeal name = bonemeal
depends = default
optional_depends = intllib, lucky_block, farming, ethereal, moretrees, technic_worldgen, flowers, dye, ferns, dryplants
description = Adds bone and bonemeal giving the ability to quickly grow plants and saplings.

View File

@ -3,9 +3,8 @@
if minetest.get_modpath("animalmaterials") then if minetest.get_modpath("animalmaterials") then
minetest.register_craft({ minetest.register_craft({
type = "shapeless",
output = "bonemeal:bonemeal 2", output = "bonemeal:bonemeal 2",
recipe = {"animalmaterials:bone"} recipe = {{"animalmaterials:bone"}}
}) })
end end
@ -32,14 +31,22 @@ if farming and farming.mod and farming.mod == "redo" then
{"farming:chili_", 8}, {"farming:chili_", 8},
{"farming:garlic_", 5}, {"farming:garlic_", 5},
{"farming:onion_", 5}, {"farming:onion_", 5},
{"farming:pepper_", 5}, {"farming:pepper_", 7},
{"farming:pineapple_", 8}, {"farming:pineapple_", 8},
{"farming:pea_", 5}, {"farming:pea_", 5},
{"farming:beetroot_", 5}, {"farming:beetroot_", 5},
{"farming:rye_", 8}, {"farming:rye_", 8},
{"farming:oat_", 8}, {"farming:oat_", 8},
{"farming:rice_", 8}, {"farming:rice_", 8},
{"farming:mint_", 4} {"farming:mint_", 4},
{"farming:cabbage_", 6},
{"farming:lettuce_", 5},
{"farming:blackberry_", 4},
{"farming:vanilla_", 8},
{"farming:soy_", 7},
{"farming:artichoke_", 5},
{"farming:parsley_", 3},
{"farming:sunflower_", 8}
}) })
end end
@ -61,10 +68,13 @@ if minetest.get_modpath("ethereal") then
{"ethereal:mushroom_sapling", ethereal.grow_mushroom_tree, "soil"}, {"ethereal:mushroom_sapling", ethereal.grow_mushroom_tree, "soil"},
{"ethereal:willow_sapling", ethereal.grow_willow_tree, "soil"}, {"ethereal:willow_sapling", ethereal.grow_willow_tree, "soil"},
{"ethereal:redwood_sapling", ethereal.grow_redwood_tree, "soil"}, {"ethereal:redwood_sapling", ethereal.grow_redwood_tree, "soil"},
{"ethereal:giant_redwood_sapling", ethereal.grow_giant_redwood_tree, "soil"},
{"ethereal:orange_tree_sapling", ethereal.grow_orange_tree, "soil"}, {"ethereal:orange_tree_sapling", ethereal.grow_orange_tree, "soil"},
{"ethereal:bamboo_sprout", ethereal.grow_bamboo_tree, "soil"}, {"ethereal:bamboo_sprout", ethereal.grow_bamboo_tree, "soil"},
{"ethereal:birch_sapling", ethereal.grow_birch_tree, "soil"}, {"ethereal:birch_sapling", ethereal.grow_birch_tree, "soil"},
{"ethereal:sakura_sapling", ethereal.grow_sakura_tree, "soil"} {"ethereal:sakura_sapling", ethereal.grow_sakura_tree, "soil"},
{"ethereal:lemon_tree_sapling", ethereal.grow_lemon_tree, "soil"},
{"ethereal:olive_tree_sapling", ethereal.grow_olive_tree, "soil"}
}) })
local grass = {"default:grass_3", "default:grass_4", "default:grass_5", ""} local grass = {"default:grass_3", "default:grass_4", "default:grass_5", ""}
@ -104,13 +114,11 @@ if minetest.get_modpath("moretrees") then
{"moretrees:apple_tree_sapling", moretrees.spawn_apple_tree_object, "soil"}, {"moretrees:apple_tree_sapling", moretrees.spawn_apple_tree_object, "soil"},
{"moretrees:oak_sapling", moretrees.spawn_oak_object, "soil"}, {"moretrees:oak_sapling", moretrees.spawn_oak_object, "soil"},
{"moretrees:sequoia_sapling", moretrees.spawn_sequoia_object, "soil"}, {"moretrees:sequoia_sapling", moretrees.spawn_sequoia_object, "soil"},
--{"moretrees:birch_sapling", moretrees.spawn_birch_object, "soil"},
{"moretrees:birch_sapling", moretrees.grow_birch, "soil"}, {"moretrees:birch_sapling", moretrees.grow_birch, "soil"},
{"moretrees:palm_sapling", moretrees.spawn_palm_object, "soil"}, {"moretrees:palm_sapling", moretrees.spawn_palm_object, "soil"},
{"moretrees:palm_sapling", moretrees.spawn_palm_object, "sand"}, {"moretrees:palm_sapling", moretrees.spawn_palm_object, "sand"},
{"moretrees:date_palm_sapling", moretrees.spawn_date_palm_object, "soil"}, {"moretrees:date_palm_sapling", moretrees.spawn_date_palm_object, "soil"},
{"moretrees:date_palm_sapling", moretrees.spawn_date_palm_object, "sand"}, {"moretrees:date_palm_sapling", moretrees.spawn_date_palm_object, "sand"},
--{"moretrees:spruce_sapling", moretrees.spawn_spruce_object, "soil"},
{"moretrees:spruce_sapling", moretrees.grow_spruce, "soil"}, {"moretrees:spruce_sapling", moretrees.grow_spruce, "soil"},
{"moretrees:cedar_sapling", moretrees.spawn_cedar_object, "soil"}, {"moretrees:cedar_sapling", moretrees.spawn_cedar_object, "soil"},
{"moretrees:poplar_sapling", moretrees.spawn_poplar_object, "soil"}, {"moretrees:poplar_sapling", moretrees.spawn_poplar_object, "soil"},
@ -144,6 +152,29 @@ if minetest.get_modpath("caverealms") then
end end
local function y_func(grow_func)
return function(pos)
grow_func({x = pos.x, y = pos.y - 1, z = pos.z})
end
end
if minetest.get_modpath("ferns") then
bonemeal:add_sapling({
{"ferns:sapling_giant_tree_fern", y_func(abstract_ferns.grow_giant_tree_fern), "soil"},
{"ferns:sapling_giant_tree_fern", y_func(abstract_ferns.grow_giant_tree_fern), "sand"},
{"ferns:sapling_tree_fern", y_func(abstract_ferns.grow_tree_fern), "soil"}
})
end
if minetest.get_modpath("dryplants") then
bonemeal:add_sapling({
{"dryplants:reedmace_sapling", y_func(abstract_dryplants.grow_reedmace), "soil"}
})
end
if minetest.get_modpath("dye") then if minetest.get_modpath("dye") then
local bonemeal_dyes = { local bonemeal_dyes = {