Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • Illuna-Minetest/plantlife_modpack
1 result
Show changes
Showing
with 677 additions and 137 deletions
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- Contains code from: biome_lib -- Contains code from: biome_lib
-- Looked at code from: default, flowers, painting, trees -- Looked at code from: default, flowers, painting, trees
-- Dependencies: biome_lib -- Dependencies: biome_lib
-- Supports: dryplants, stoneage, sumpf -- Supports: dryplants, stoneage, sumpf
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- some inspiration from here -- some inspiration from here
-- https://en.wikipedia.org/wiki/Athyrium_yokoscense -- https://en.wikipedia.org/wiki/Athyrium_yokoscense
...@@ -15,6 +15,9 @@ ...@@ -15,6 +15,9 @@
assert(abstract_ferns.config.enable_lady_fern == true) assert(abstract_ferns.config.enable_lady_fern == true)
-- support for i18n
local S = plantlife_i18n.gettext
-- Maintain backward compatibilty -- Maintain backward compatibilty
minetest.register_alias("archaeplantae:fern", "ferns:fern_03") minetest.register_alias("archaeplantae:fern", "ferns:fern_03")
minetest.register_alias("archaeplantae:fern_mid", "ferns:fern_02") minetest.register_alias("archaeplantae:fern_mid", "ferns:fern_02")
...@@ -25,8 +28,8 @@ local nodenames = {} ...@@ -25,8 +28,8 @@ local nodenames = {}
local function create_nodes() local function create_nodes()
local images = { "ferns_fern.png", "ferns_fern_mid.png", "ferns_fern_big.png" } local images = { "ferns_fern.png", "ferns_fern_mid.png", "ferns_fern_big.png" }
local vscales = { 1, 2, 2.2 } local vscales = { 1, math.sqrt(8), math.sqrt(11) }
local descs = { "Lady-fern (Athyrium)", nil, nil } local descs = { S("Lady-fern (Athyrium)"), nil, nil }
for i = 1, 3 do for i = 1, 3 do
local node_on_place = nil local node_on_place = nil
...@@ -40,7 +43,7 @@ local function create_nodes() ...@@ -40,7 +43,7 @@ local function create_nodes()
end end
nodenames[i] = "ferns:fern_"..string.format("%02d", i) nodenames[i] = "ferns:fern_"..string.format("%02d", i)
minetest.register_node(nodenames[i], { minetest.register_node(nodenames[i], {
description = descs[i] or ("Lady-fern (Athyrium) " .. string.format("%02d", i)), description = descs[i] or (S("Lady-fern (Athyrium)").." " .. string.format("%02d", i)),
inventory_image = "ferns_fern.png", inventory_image = "ferns_fern.png",
drawtype = "plantlike", drawtype = "plantlike",
visual_scale = vscales[i], visual_scale = vscales[i],
...@@ -91,8 +94,8 @@ if abstract_ferns.config.lady_ferns_near_tree == true then ...@@ -91,8 +94,8 @@ if abstract_ferns.config.lady_ferns_near_tree == true then
plantlife_limit = -0.9, plantlife_limit = -0.9,
humidity_max = -1.0, humidity_max = -1.0,
humidity_min = 0.4, humidity_min = 0.4,
temp_max = -0.5, -- 55 C (too hot?) temp_max = -0.5, -- 55 °C (too hot?)
temp_min = 0.75, -- -12 C temp_min = 0.75, -- -12 °C
random_facedir = { 0, 179 }, random_facedir = { 0, 179 },
}, },
nodenames nodenames
...@@ -118,8 +121,8 @@ if abstract_ferns.config.lady_ferns_near_rock == true then ...@@ -118,8 +121,8 @@ if abstract_ferns.config.lady_ferns_near_rock == true then
plantlife_limit = -0.9, plantlife_limit = -0.9,
humidity_max = -1.0, humidity_max = -1.0,
humidity_min = 0.4, humidity_min = 0.4,
temp_max = -0.5, -- 55 C (too hot?) temp_max = -0.5, -- 55 °C (too hot?)
temp_min = 0.75, -- -12 C temp_min = 0.75, -- -12 °C
random_facedir = { 0, 179 }, random_facedir = { 0, 179 },
}, },
nodenames nodenames
...@@ -156,8 +159,8 @@ if abstract_ferns.config.lady_ferns_near_ores == true then -- this one causes a ...@@ -156,8 +159,8 @@ if abstract_ferns.config.lady_ferns_near_ores == true then -- this one causes a
plantlife_limit = -0.9, plantlife_limit = -0.9,
humidity_max = -1.0, humidity_max = -1.0,
humidity_min = 0.4, humidity_min = 0.4,
temp_max = -0.5, -- 55 C (too hot?) temp_max = -0.5, -- 55 °C (too hot?)
temp_min = 0.75, -- -12 C temp_min = 0.75, -- -12 °C
random_facedir = { 0, 179 }, random_facedir = { 0, 179 },
}, },
nodenames nodenames
...@@ -187,8 +190,8 @@ if abstract_ferns.config.lady_ferns_in_groups == true then -- this one is meant ...@@ -187,8 +190,8 @@ if abstract_ferns.config.lady_ferns_in_groups == true then -- this one is meant
plantlife_limit = -0.9, plantlife_limit = -0.9,
humidity_max = -1.0, humidity_max = -1.0,
humidity_min = 0.4, humidity_min = 0.4,
temp_max = -0.5, -- 55 C (too hot?) temp_max = -0.5, -- 55 °C (too hot?)
temp_min = 0.75, -- -12 C temp_min = 0.75, -- -12 °C
random_facedir = { 0, 179 }, random_facedir = { 0, 179 },
}, },
nodenames nodenames
......
...@@ -5,11 +5,13 @@ ...@@ -5,11 +5,13 @@
-- License (everything): WTFPL -- License (everything): WTFPL
-- Contains code from: biome_lib -- Contains code from: biome_lib
-- Looked at code from: 4seasons, default -- Looked at code from: 4seasons, default
-- Supports: vines -- Supports: vines
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
assert(abstract_ferns.config.enable_giant_treefern == true) assert(abstract_ferns.config.enable_giant_treefern == true)
-- support for i18n
local S = plantlife_i18n.gettext
-- lot of code, lot to load -- lot of code, lot to load
abstract_ferns.grow_giant_tree_fern = function(pos) abstract_ferns.grow_giant_tree_fern = function(pos)
...@@ -21,7 +23,7 @@ abstract_ferns.grow_giant_tree_fern = function(pos) ...@@ -21,7 +23,7 @@ abstract_ferns.grow_giant_tree_fern = function(pos)
end end
local size = math.random(12,16) -- min of range must be >= 4 local size = math.random(12,16) -- min of range must be >= 4
local leafchecks = { local leafchecks = {
{ {
direction = 3, direction = 3,
...@@ -61,32 +63,39 @@ abstract_ferns.grow_giant_tree_fern = function(pos) ...@@ -61,32 +63,39 @@ abstract_ferns.grow_giant_tree_fern = function(pos)
} }
} }
local brk = false
for i = 1, size-3 do for i = 1, size-3 do
if minetest.get_node({x = pos.x, y = pos.y + i, z = pos.z}).name ~= "air" then
brk = true
break
end
minetest.set_node({x = pos.x, y = pos.y + i, z = pos.z}, {name="ferns:fern_trunk_big"}) minetest.set_node({x = pos.x, y = pos.y + i, z = pos.z}, {name="ferns:fern_trunk_big"})
end end
minetest.set_node({x = pos.x, y = pos.y + size-2, z = pos.z}, {name="ferns:fern_trunk_big_top"}) if not brk then
minetest.set_node({x = pos.x, y = pos.y + size-1, z = pos.z}, {name="ferns:tree_fern_leaves_giant"}) minetest.set_node({x = pos.x, y = pos.y + size-2, z = pos.z}, {name="ferns:fern_trunk_big_top"})
minetest.set_node({x = pos.x, y = pos.y + size-1, z = pos.z}, {name="ferns:tree_fern_leaves_giant"})
-- all the checking for air below is to prevent some ugly bugs (incomplete trunks of neighbouring trees), it's a bit slower, but worth the result -- all the checking for air below is to prevent some ugly bugs (incomplete trunks of neighbouring trees), it's a bit slower, but worth the result
-- assert(#leafchecks == 4) -- assert(#leafchecks == 4)
for i = 1, 4 do for i = 1, 4 do
local positions = leafchecks[i].positions local positions = leafchecks[i].positions
local rot = leafchecks[i].direction local rot = leafchecks[i].direction
local endpos = 4 -- If the loop below adds all intermediate leaves then the "terminating" leaf will be at positions[4] local endpos = 4 -- If the loop below adds all intermediate leaves then the "terminating" leaf will be at positions[4]
-- assert(#positions == 4) -- assert(#positions == 4)
-- add leaves so long as the destination nodes are air -- add leaves so long as the destination nodes are air
for j = 1, 3 do for j = 1, 3 do
if minetest.get_node(positions[j]).name == "air" then if minetest.get_node(positions[j]).name == "air" then
minetest.set_node(positions[j], {name="ferns:tree_fern_leave_big"}) minetest.set_node(positions[j], {name="ferns:tree_fern_leave_big"})
else else
endpos = j endpos = j
break break
end
end
-- add the terminating leaf if required and possible
if endpos == 4 and minetest.get_node(positions[endpos]).name == "air" then
minetest.set_node(positions[endpos], {name="ferns:tree_fern_leave_big_end", param2=rot})
end end
end
-- add the terminating leaf if required and possible
if endpos == 4 and minetest.get_node(positions[endpos]).name == "air" then
minetest.set_node(positions[endpos], {name="ferns:tree_fern_leave_big_end", param2=rot})
end end
end end
end end
...@@ -95,9 +104,9 @@ end ...@@ -95,9 +104,9 @@ end
-- GIANT TREE FERN LEAVES -- GIANT TREE FERN LEAVES
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:tree_fern_leaves_giant", { minetest.register_node("ferns:tree_fern_leaves_giant", {
description = "Tree Fern Crown (Dicksonia)", description = S("Tree Fern Crown (Dicksonia)"),
drawtype = "plantlike", drawtype = "plantlike",
visual_scale = math.sqrt(8), visual_scale = math.sqrt(11),
wield_scale = {x=0.175, y=0.175, z=0.175}, wield_scale = {x=0.175, y=0.175, z=0.175},
paramtype = "light", paramtype = "light",
tiles = {"ferns_fern_tree_giant.png"}, tiles = {"ferns_fern_tree_giant.png"},
...@@ -137,7 +146,7 @@ minetest.register_node("ferns:tree_fern_leaves_giant", { ...@@ -137,7 +146,7 @@ minetest.register_node("ferns:tree_fern_leaves_giant", {
-- GIANT TREE FERN LEAVE PART -- GIANT TREE FERN LEAVE PART
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:tree_fern_leave_big", { minetest.register_node("ferns:tree_fern_leave_big", {
description = "Giant Tree Fern Leaves", description = S("Giant Tree Fern Leaves"),
drawtype = "raillike", drawtype = "raillike",
paramtype = "light", paramtype = "light",
tiles = { tiles = {
...@@ -158,7 +167,7 @@ minetest.register_node("ferns:tree_fern_leave_big", { ...@@ -158,7 +167,7 @@ minetest.register_node("ferns:tree_fern_leave_big", {
-- GIANT TREE FERN LEAVE END -- GIANT TREE FERN LEAVE END
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:tree_fern_leave_big_end", { minetest.register_node("ferns:tree_fern_leave_big_end", {
description = "Giant Tree Fern Leave End", description = S("Giant Tree Fern Leave End"),
drawtype = "nodebox", drawtype = "nodebox",
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
...@@ -187,7 +196,7 @@ minetest.register_node("ferns:tree_fern_leave_big_end", { ...@@ -187,7 +196,7 @@ minetest.register_node("ferns:tree_fern_leave_big_end", {
-- GIANT TREE FERN TRUNK TOP -- GIANT TREE FERN TRUNK TOP
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:fern_trunk_big_top", { minetest.register_node("ferns:fern_trunk_big_top", {
description = "Giant Fern Trunk", description = S("Giant Fern Trunk"),
drawtype = "nodebox", drawtype = "nodebox",
paramtype = "light", paramtype = "light",
tiles = { tiles = {
...@@ -224,7 +233,7 @@ minetest.register_node("ferns:fern_trunk_big_top", { ...@@ -224,7 +233,7 @@ minetest.register_node("ferns:fern_trunk_big_top", {
-- GIANT TREE FERN TRUNK -- GIANT TREE FERN TRUNK
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:fern_trunk_big", { minetest.register_node("ferns:fern_trunk_big", {
description = "Giant Fern Trunk", description = S("Giant Fern Trunk"),
drawtype = "nodebox", drawtype = "nodebox",
paramtype = "light", paramtype = "light",
tiles = { tiles = {
...@@ -244,8 +253,8 @@ minetest.register_node("ferns:fern_trunk_big", { ...@@ -244,8 +253,8 @@ minetest.register_node("ferns:fern_trunk_big", {
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
after_destruct = function(pos,oldnode) after_destruct = function(pos,oldnode)
local node = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}) local node = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z})
if node.name == "ferns:fern_trunk_big" or node.name == "ferns:fern_trunk_big_top" then if node.name == "ferns:fern_trunk_big" or node.name == "ferns:fern_trunk_big_top" then
minetest.dig_node({x=pos.x,y=pos.y+1,z=pos.z}) minetest.dig_node({x=pos.x,y=pos.y+1,z=pos.z})
minetest.add_item(pos,"ferns:fern_trunk_big") minetest.add_item(pos,"ferns:fern_trunk_big")
end end
end, end,
...@@ -255,7 +264,7 @@ minetest.register_node("ferns:fern_trunk_big", { ...@@ -255,7 +264,7 @@ minetest.register_node("ferns:fern_trunk_big", {
-- GIANT TREE FERN SAPLING -- GIANT TREE FERN SAPLING
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:sapling_giant_tree_fern", { minetest.register_node("ferns:sapling_giant_tree_fern", {
description = "Giant Tree Fern Sapling", description = S("Giant Tree Fern Sapling"),
drawtype = "plantlike", drawtype = "plantlike",
paramtype = "light", paramtype = "light",
tiles = {"ferns_sapling_tree_fern_giant.png"}, tiles = {"ferns_sapling_tree_fern_giant.png"},
......
...@@ -6,11 +6,13 @@ ...@@ -6,11 +6,13 @@
-- Contains code from: biome_lib -- Contains code from: biome_lib
-- Looked at code from: default, flowers, trees -- Looked at code from: default, flowers, trees
-- Dependencies: biome_lib -- Dependencies: biome_lib
-- Supports: dryplants, stoneage, sumpf -- Supports: dryplants, stoneage, sumpf
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
assert(abstract_ferns.config.enable_horsetails == true) assert(abstract_ferns.config.enable_horsetails == true)
-- support for i18n
local S = plantlife_i18n.gettext
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- HORSETAIL (EQUISETUM) -- HORSETAIL (EQUISETUM)
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
...@@ -33,13 +35,13 @@ local function create_nodes() ...@@ -33,13 +35,13 @@ local function create_nodes()
local node_drop = "ferns:horsetail_04" local node_drop = "ferns:horsetail_04"
if i == 1 then if i == 1 then
node_desc = "Young Horsetail (Equisetum)" node_desc = S("Young Horsetail (Equisetum)")
node_on_use = minetest.item_eat(1) -- young ones edible https://en.wikipedia.org/wiki/Equisetum node_on_use = minetest.item_eat(1) -- young ones edible https://en.wikipedia.org/wiki/Equisetum
node_drop = node_name node_drop = node_name
elseif i == 4 then elseif i == 4 then
node_desc = "Horsetail (Equisetum)" node_desc = S("Horsetail (Equisetum)")
else else
node_desc = "Horsetail (Equisetum) ".. string.format("%02d", i) node_desc = S("Horsetail (Equisetum)").." ".. string.format("%02d", i)
end end
node_names[i] = node_name node_names[i] = node_name
...@@ -125,8 +127,8 @@ if abstract_ferns.config.enable_horsetails_on_grass == true then ...@@ -125,8 +127,8 @@ if abstract_ferns.config.enable_horsetails_on_grass == true then
near_nodes_count = 1, near_nodes_count = 1,
plantlife_limit = -0.9, plantlife_limit = -0.9,
humidity_min = 0.4, humidity_min = 0.4,
temp_max = -0.5, -- 55 C temp_max = -0.5, -- 55 °C
temp_min = 0.53, -- 0 C, dies back in winter temp_min = 0.53, -- 0 °C, dies back in winter
--random_facedir = { 0, 179 }, --random_facedir = { 0, 179 },
}, },
node_names node_names
...@@ -147,8 +149,8 @@ if abstract_ferns.config.enable_horsetails_on_stones == true then ...@@ -147,8 +149,8 @@ if abstract_ferns.config.enable_horsetails_on_stones == true then
min_elevation = 1, -- above sea level min_elevation = 1, -- above sea level
plantlife_limit = -0.9, plantlife_limit = -0.9,
humidity_min = 0.4, humidity_min = 0.4,
temp_max = -0.5, -- 55 C temp_max = -0.5, -- 55 °C
temp_min = 0.53, -- 0 C, dies back in winter temp_min = 0.53, -- 0 °C, dies back in winter
--random_facedir = { 0, 179 }, --random_facedir = { 0, 179 },
}, },
node_names node_names
......
...@@ -4,11 +4,14 @@ local version = "0.2.0" ...@@ -4,11 +4,14 @@ local version = "0.2.0"
local mname = "ferns" -- former "archaeplantae" local mname = "ferns" -- former "archaeplantae"
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- (by Mossmanikin) -- (by Mossmanikin)
-- License (everything): WTFPL -- License (everything): WTFPL
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
abstract_ferns = {} abstract_ferns = {}
-- support for i18n
local S = plantlife_i18n.gettext
dofile(minetest.get_modpath("ferns").."/settings.lua") dofile(minetest.get_modpath("ferns").."/settings.lua")
if abstract_ferns.config.enable_lady_fern == true then if abstract_ferns.config.enable_lady_fern == true then
......
...@@ -4,9 +4,12 @@ ...@@ -4,9 +4,12 @@
-- by Mossmanikin -- by Mossmanikin
-- License (everything): WTFPL -- License (everything): WTFPL
-- Contains code from: biome_lib -- Contains code from: biome_lib
-- Looked at code from: default , trees -- Looked at code from: default , trees
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- support for i18n
local S = plantlife_i18n.gettext
assert(abstract_ferns.config.enable_treefern == true) assert(abstract_ferns.config.enable_treefern == true)
abstract_ferns.grow_tree_fern = function(pos) abstract_ferns.grow_tree_fern = function(pos)
...@@ -17,24 +20,33 @@ abstract_ferns.grow_tree_fern = function(pos) ...@@ -17,24 +20,33 @@ abstract_ferns.grow_tree_fern = function(pos)
and minetest.get_node(pos_01).name ~= "default:junglegrass" then and minetest.get_node(pos_01).name ~= "default:junglegrass" then
return return
end end
local size = math.random(1, 4) + math.random(1, 4) local size = math.random(1, 4) + math.random(1, 4)
if (size > 5) then if (size > 5) then
size = 10 - size size = 10 - size
end end
size = size + 1 size = size + 1
local crown = ({ "ferns:tree_fern_leaves", "ferns:tree_fern_leaves_02" })[math.random(1, 2)] local crown = ({ "ferns:tree_fern_leaves", "ferns:tree_fern_leaves_02" })[math.random(1, 2)]
local i = 1 local i = 1
while (i < size-1) do local brk = false
if minetest.get_node({x = pos.x, y = pos.y + i + 1, z = pos.z}).name ~= "air" then while (i < size) do
print(minetest.get_node({x = pos.x, y = pos.y + i, z = pos.z}).name)
if minetest.get_node({x = pos.x, y = pos.y + i, z = pos.z}).name ~= "air" then
brk = true
print("break!")
break break
end end
print("set trunk node at:")
print(dump({x = pos.x, y = pos.y + i, z = pos.z}))
minetest.set_node({x = pos.x, y = pos.y + i, z = pos.z}, { name = "ferns:fern_trunk" }) minetest.set_node({x = pos.x, y = pos.y + i, z = pos.z}, { name = "ferns:fern_trunk" })
i = i + 1 i = i + 1
end end
if not brk then
minetest.set_node({x = pos.x, y = pos.y + i, z = pos.z}, { name = crown }) print("set crown node at:")
print(dump({x = pos.x, y = pos.y + i, z = pos.z}))
minetest.set_node({x = pos.x, y = pos.y + i - 1, z = pos.z}, { name = crown })
end
end end
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
...@@ -44,9 +56,9 @@ end ...@@ -44,9 +56,9 @@ end
-- TODO: Both of these nodes look the same? -- TODO: Both of these nodes look the same?
minetest.register_node("ferns:tree_fern_leaves", { minetest.register_node("ferns:tree_fern_leaves", {
description = "Tree Fern Crown (Dicksonia)", description = S("Tree Fern Crown (Dicksonia)"),
drawtype = "plantlike", drawtype = "plantlike",
visual_scale = 2, visual_scale = math.sqrt(8),
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
--tiles = {"[combine:32x32:0,0=top_left.png:0,16=bottom_left.png:16,0=top_right.png:16,16=bottom_right.png"}, --tiles = {"[combine:32x32:0,0=top_left.png:0,16=bottom_left.png:16,0=top_right.png:16,16=bottom_right.png"},
...@@ -80,7 +92,7 @@ minetest.register_node("ferns:tree_fern_leaves", { ...@@ -80,7 +92,7 @@ minetest.register_node("ferns:tree_fern_leaves", {
}) })
minetest.register_node("ferns:tree_fern_leaves_02", { minetest.register_node("ferns:tree_fern_leaves_02", {
drawtype = "plantlike", drawtype = "plantlike",
visual_scale = 2, visual_scale = math.sqrt(8),
paramtype = "light", paramtype = "light",
tiles = {"ferns_fern_big.png"}, tiles = {"ferns_fern_big.png"},
walkable = false, walkable = false,
...@@ -113,7 +125,7 @@ minetest.register_node("ferns:tree_fern_leaves_02", { ...@@ -113,7 +125,7 @@ minetest.register_node("ferns:tree_fern_leaves_02", {
-- FERN TRUNK -- FERN TRUNK
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:fern_trunk", { minetest.register_node("ferns:fern_trunk", {
description = "Fern Trunk (Dicksonia)", description = S("Fern Trunk (Dicksonia)"),
drawtype = "nodebox", drawtype = "nodebox",
paramtype = "light", paramtype = "light",
tiles = { tiles = {
...@@ -133,8 +145,8 @@ minetest.register_node("ferns:fern_trunk", { ...@@ -133,8 +145,8 @@ minetest.register_node("ferns:fern_trunk", {
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
after_destruct = function(pos,oldnode) after_destruct = function(pos,oldnode)
local node = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}) local node = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z})
if node.name == "ferns:fern_trunk" then if node.name == "ferns:fern_trunk" then
minetest.dig_node({x=pos.x,y=pos.y+1,z=pos.z}) minetest.dig_node({x=pos.x,y=pos.y+1,z=pos.z})
minetest.add_item(pos,"ferns:fern_trunk") minetest.add_item(pos,"ferns:fern_trunk")
end end
end, end,
...@@ -144,7 +156,7 @@ minetest.register_node("ferns:fern_trunk", { ...@@ -144,7 +156,7 @@ minetest.register_node("ferns:fern_trunk", {
-- TREE FERN SAPLING -- TREE FERN SAPLING
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
minetest.register_node("ferns:sapling_tree_fern", { minetest.register_node("ferns:sapling_tree_fern", {
description = "Tree Fern Sapling (Dicksonia)", description = S("Tree Fern Sapling (Dicksonia)"),
drawtype = "plantlike", drawtype = "plantlike",
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
......
biome_lib biome_lib
plantlife_i18n
farming? farming?
flowers? flowers?
local S = biome_lib.intllib -- support for i18n
local S = plantlife_i18n.gettext
-- This file supplies a few additional plants and some related crafts -- This file supplies a few additional plants and some related crafts
-- for the plantlife modpack. Last revision: 2013-04-24 -- for the plantlife modpack. Last revision: 2013-04-24
...@@ -42,7 +43,7 @@ for i in ipairs(lilies_list) do ...@@ -42,7 +43,7 @@ for i in ipairs(lilies_list) do
minetest.register_node(":flowers:waterlily"..deg1, { minetest.register_node(":flowers:waterlily"..deg1, {
description = S("Waterlily"), description = S("Waterlily"),
drawtype = "nodebox", drawtype = "nodebox",
tiles = { tiles = {
"flowers_waterlily"..deg2..".png", "flowers_waterlily"..deg2..".png",
"flowers_waterlily"..deg2..".png^[transformFY" "flowers_waterlily"..deg2..".png^[transformFY"
}, },
...@@ -80,7 +81,7 @@ for i in ipairs(lilies_list) do ...@@ -80,7 +81,7 @@ for i in ipairs(lilies_list) do
if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then
if under_node.name ~= "default:water_source" then if under_node.name ~= "default:water_source" then
place_pos = pt.under place_pos = pt.under
elseif top_node.name ~= "default:water_source" elseif top_node.name ~= "default:water_source"
and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then
place_pos = top_pos place_pos = top_pos
else else
...@@ -139,11 +140,11 @@ for i in ipairs(algae_list) do ...@@ -139,11 +140,11 @@ for i in ipairs(algae_list) do
num = "_"..algae_list[i][1] num = "_"..algae_list[i][1]
algae_groups = { snappy = 3,flammable=2,flower=1, not_in_creative_inventory=1 } algae_groups = { snappy = 3,flammable=2,flower=1, not_in_creative_inventory=1 }
end end
minetest.register_node(":flowers:seaweed"..num, { minetest.register_node(":flowers:seaweed"..num, {
description = S("Seaweed"), description = S("Seaweed"),
drawtype = "nodebox", drawtype = "nodebox",
tiles = { tiles = {
"flowers_seaweed"..num..".png", "flowers_seaweed"..num..".png",
"flowers_seaweed"..num..".png^[transformFY" "flowers_seaweed"..num..".png^[transformFY"
}, },
...@@ -162,9 +163,9 @@ for i in ipairs(algae_list) do ...@@ -162,9 +163,9 @@ for i in ipairs(algae_list) do
node_box = { node_box = {
type = "fixed", type = "fixed",
fixed = { -0.5, -0.49, -0.5, 0.5, -0.49, 0.5 }, fixed = { -0.5, -0.49, -0.5, 0.5, -0.49, 0.5 },
}, },
buildable_to = true, buildable_to = true,
liquids_pointable = true, liquids_pointable = true,
drop = "flowers:seaweed", drop = "flowers:seaweed",
on_place = function(itemstack, placer, pointed_thing) on_place = function(itemstack, placer, pointed_thing)
...@@ -180,7 +181,7 @@ for i in ipairs(algae_list) do ...@@ -180,7 +181,7 @@ for i in ipairs(algae_list) do
if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then
if under_node.name ~= "default:water_source" then if under_node.name ~= "default:water_source" then
place_pos = pt.under place_pos = pt.under
elseif top_node.name ~= "default:water_source" elseif top_node.name ~= "default:water_source"
and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then
place_pos = top_pos place_pos = top_pos
else else
...@@ -227,12 +228,12 @@ local box = { ...@@ -227,12 +228,12 @@ local box = {
} }
local sunflower_drop = "farming:seed_wheat" local sunflower_drop = "farming:seed_wheat"
if minetest.registered_items["farming:seed_spelt"] then if minetest.registered_items["farming:seed_spelt"] then
sunflower_drop = "farming:seed_spelt" sunflower_drop = "farming:seed_spelt"
end end
minetest.register_node(":flowers:sunflower", { minetest.register_node(":flowers:sunflower", {
description = "Sunflower", description = S("Sunflower"),
drawtype = "mesh", drawtype = "mesh",
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
...@@ -291,7 +292,7 @@ flowers_plus.grow_waterlily = function(pos) ...@@ -291,7 +292,7 @@ flowers_plus.grow_waterlily = function(pos)
if lilies_list[i][1] ~= nil then if lilies_list[i][1] ~= nil then
ext = "_"..lilies_list[i][1] ext = "_"..lilies_list[i][1]
end end
if chance == num then if chance == num then
minetest.set_node(right_here, {name="flowers:waterlily"..ext, param2=math.random(0,3)}) minetest.set_node(right_here, {name="flowers:waterlily"..ext, param2=math.random(0,3)})
end end
...@@ -469,7 +470,7 @@ biome_lib:spawn_on_surfaces({ ...@@ -469,7 +470,7 @@ biome_lib:spawn_on_surfaces({
-- cotton wads -> string (can be crafted into wool blocks) -- cotton wads -> string (can be crafted into wool blocks)
-- potted cotton plants -> potted white dandelions -- potted cotton plants -> potted white dandelions
minetest.register_alias("flowers:cotton_plant", "farming:cotton_8") minetest.register_alias("flowers:cotton_plant", "farming:cotton_8")
minetest.register_alias("flowers:flower_cotton", "farming:cotton_8") minetest.register_alias("flowers:flower_cotton", "farming:cotton_8")
minetest.register_alias("flowers:flower_cotton_pot", "flowers:potted_dandelion_white") minetest.register_alias("flowers:flower_cotton_pot", "flowers:potted_dandelion_white")
minetest.register_alias("flowers:potted_cotton_plant", "flowers:potted_dandelion_white") minetest.register_alias("flowers:potted_cotton_plant", "flowers:potted_dandelion_white")
......
# Translation by Xanthin
Waterlily = Seerose
Seaweed = Seetang
Potted Rose = Eingetopfte Rose
Potted Tulip = Eingetopfte Tulpe
Potted Yellow Dandelion = Eingetopfter Loewenzahn
Potted White Dandelion = Eingetopfte Pusteblume
Potted Blue Geranium = Eingetopfte blaue Geranie
Potted Viola = Eingetopftes Veilchen
Flower Pot = Blumentopf
[Flowers] Loaded. = [Flowers] Geladen.
# Template
Waterlily = Nénuphar
Seaweed = Algues
Potted Rose = Rose en pot
Potted Tulip = Tulipe en pot
Potted Yellow Dandelion = Pissenlit jaune en pot
Potted White Dandelion = Pissenlit blanc en pot
Potted Blue Geranium = Géranium bleu en pot
Potted Viola = Violette en pot
Flower Pot = Fleurs en pot
[Flowers] Loaded. = [Fleurs] Chargées.
# Template
Waterlily =
Seaweed =
Potted Rose =
Potted Tulip =
Potted Yellow Dandelion =
Potted White Dandelion =
Potted Blue Geranium =
Potted Viola =
Flower Pot =
[Flowers] Loaded. =
# Turkish translation
# mahmutelmas06@hotmail.com
Waterlily = Nilüfer
Seaweed = Deniz yosunu
Potted Rose = Saksı gülü
Potted Tulip = Saksı lalesi
Potted Yellow Dandelion = Sarı hindiba
Potted White Dandelion = Beyaz hindiba
Potted Blue Geranium = Mavi hindiba
Potted Viola = Saksı Menekşesi
Flower Pot = Saksı
[Flowers] Loaded. = [Flowers] yüklendi.
default default
biome_lib plantlife_i18n
\ No newline at end of file biome_lib
...@@ -10,6 +10,8 @@ abstract_molehills = {} ...@@ -10,6 +10,8 @@ abstract_molehills = {}
dofile(minetest.get_modpath("molehills").."/molehills_settings.txt") dofile(minetest.get_modpath("molehills").."/molehills_settings.txt")
-- support for i18n
local S = plantlife_i18n.gettext
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- NoDe -- NoDe
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
...@@ -22,7 +24,7 @@ local mh_cbox = { ...@@ -22,7 +24,7 @@ local mh_cbox = {
minetest.register_node("molehills:molehill",{ minetest.register_node("molehills:molehill",{
drawtype = "mesh", drawtype = "mesh",
mesh = "molehill_molehill.obj", mesh = "molehill_molehill.obj",
description = "Mole Hill", description = S("Mole Hill"),
inventory_image = "molehills_side.png", inventory_image = "molehills_side.png",
tiles = { "molehills_dirt.png" }, tiles = { "molehills_dirt.png" },
paramtype = "light", paramtype = "light",
...@@ -74,5 +76,5 @@ biome_lib:register_generate_plant({ ...@@ -74,5 +76,5 @@ biome_lib:register_generate_plant({
) )
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
print("[Mod] "..title.." ["..version.."] ["..mname.."] Loaded...") print("[Mod] "..title.." ["..version.."] ["..mname.."]"..S("Loaded..."))
----------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------
-- support for i18n
local S = plantlife_i18n.gettext
-- Blossoms and such -- Blossoms and such
local function spawn_apple_under(pos) local function spawn_apple_under(pos)
...@@ -12,15 +14,21 @@ local function spawn_apple_under(pos) ...@@ -12,15 +14,21 @@ local function spawn_apple_under(pos)
end end
minetest.register_node(":"..nature.blossom_node, { minetest.register_node(":"..nature.blossom_node, {
description = "Apple blossoms", description = S("Apple blossoms"),
drawtype = "allfaces_optional", drawtype = "allfaces_optional",
tiles = nature.blossom_textures, tiles = nature.blossom_textures,
paramtype = "light", paramtype = "light",
groups = { snappy = 3, leafdecay = 3, flammable = 2, leafdecay = 3 }, groups = nature.blossom_groups,
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
waving = 1 waving = 1
}) })
default.register_leafdecay({
trunks = { nature.blossom_trunk },
leaves = { nature.blossom_node, nature.blossom_leaves },
radius = nature.blossom_decay,
})
minetest.register_craft({ minetest.register_craft({
type = "fuel", type = "fuel",
recipe = nature.blossom_node, recipe = nature.blossom_node,
......
default default
plantlife_i18n
moretrees? moretrees?
...@@ -6,17 +6,26 @@ ...@@ -6,17 +6,26 @@
local current_mod_name = minetest.get_current_modname() local current_mod_name = minetest.get_current_modname()
nature = {} nature = {}
-- support for i18n
local S = plantlife_i18n.gettext
nature.blossomqueue = {} nature.blossomqueue = {}
nature.blossomqueue_max = 1000 nature.blossomqueue_max = 1000
nature.blossom_decay = 2
nature.blossom_trunk = "default:tree"
nature.blossom_node = "nature:blossom" nature.blossom_node = "nature:blossom"
nature.blossom_leaves = "default:leaves" nature.blossom_leaves = "default:leaves"
nature.blossom_textures = { "default_leaves.png^nature_blossom.png" } nature.blossom_textures = { "default_leaves.png^nature_blossom.png" }
nature.blossom_groups = { snappy = 3, leafdecay = 1, leaves = 1, flammable = 2 }
if minetest.get_modpath("moretrees") then if minetest.get_modpath("moretrees") then
nature.blossom_decay = moretrees.leafdecay_radius
nature.blossom_trunk = "moretrees:apple_tree_trunk"
nature.blossom_node = "moretrees:apple_blossoms" nature.blossom_node = "moretrees:apple_blossoms"
nature.blossom_leaves = "moretrees:apple_tree_leaves" nature.blossom_leaves = "moretrees:apple_tree_leaves"
nature.blossom_textures = { "moretrees_apple_tree_leaves.png^nature_blossom.png" } nature.blossom_textures = { "moretrees_apple_tree_leaves.png^nature_blossom.png" }
nature.blossom_groups = { snappy = 3, leafdecay = 1, leaves = 1, flammable = 2, moretrees_leaves = 1 },
minetest.register_alias("nature:blossom", "default:leaves") minetest.register_alias("nature:blossom", "default:leaves")
end end
...@@ -38,4 +47,4 @@ dofile(minetest.get_modpath(current_mod_name) .. "/config.lua") ...@@ -38,4 +47,4 @@ dofile(minetest.get_modpath(current_mod_name) .. "/config.lua")
dofile(minetest.get_modpath(current_mod_name) .. "/global_function.lua") dofile(minetest.get_modpath(current_mod_name) .. "/global_function.lua")
dofile(minetest.get_modpath(current_mod_name) .. "/blossom.lua") dofile(minetest.get_modpath(current_mod_name) .. "/blossom.lua")
minetest.log("info", "[Nature Classic] loaded!") minetest.log("info", S("[Nature Classic] loaded!"))
intllib?
-- This file intentionally left blank.
plantlife_i18n = { }
local MP = minetest.get_modpath(minetest.get_current_modname())
plantlife_i18n.gettext, plantlife_i18n.ngettext = dofile(MP.."/intllib.lua")
-- Fallback functions for when `intllib` is not installed.
-- Code released under Unlicense <http://unlicense.org>.
-- Get the latest version of this file at:
-- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua
local function format(str, ...)
local args = { ... }
local function repl(escape, open, num, close)
if escape == "" then
local replacement = tostring(args[tonumber(num)])
if open == "" then
replacement = replacement..close
end
return replacement
else
return "@"..open..num..close
end
end
return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl))
end
local gettext, ngettext
if minetest.get_modpath("intllib") then
if intllib.make_gettext_pair then
-- New method using gettext.
gettext, ngettext = intllib.make_gettext_pair()
else
-- Old method using text files.
gettext = intllib.Getter()
end
end
-- Fill in missing functions.
gettext = gettext or function(msgid, ...)
return format(msgid, ...)
end
ngettext = ngettext or function(msgid, msgid_plural, n, ...)
return format(n==1 and msgid or msgid_plural, ...)
end
return gettext, ngettext
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-08-03 11:09+0200\n"
"PO-Revision-Date: 2017-08-03 11:32+0200\n"
"Last-Translator: Xanthin\n"
"Language-Team: \n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.12\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../bushes/init.lua
msgid "Young Tree 2 (bottom)"
msgstr ""
#: ../bushes/init.lua
msgid "Bush Branches @1"
msgstr ""
#: ../bushes/init.lua
msgid "Bush Leaves @1"
msgstr ""
#: ../bushes_classic/cooking.lua
msgid "Sugar"
msgstr "Zucker"
#: ../bushes_classic/init.lua
msgid "Basket with Strawberry pies"
msgstr "Korb mit Erdbeertorten"
#: ../bushes_classic/init.lua
msgid "Cooked Strawberry pie"
msgstr "Erdbeertorte"
#: ../bushes_classic/init.lua
msgid "Raw Strawberry pie"
msgstr "Rohe Erdbeertorte"
#: ../bushes_classic/init.lua
msgid "Slice of Strawberry pie"
msgstr "Erdbeertortenstueck"
#: ../bushes_classic/init.lua
msgid "Strawberry"
msgstr "Erdbeere"
#: ../bushes_classic/init.lua
msgid "Strawberry Bush"
msgstr "Erdbeerbusch"
#: ../bushes_classic/init.lua
msgid "Basket with Blackberry pies"
msgstr "Korb mit Brombeertorten"
#: ../bushes_classic/init.lua
msgid "Blackberry"
msgstr "Brombeere"
#: ../bushes_classic/init.lua
msgid "Blackberry Bush"
msgstr "Brombeerbusch"
#: ../bushes_classic/init.lua
msgid "Cooked Blackberry pie"
msgstr "Brombeertorte"
#: ../bushes_classic/init.lua
msgid "Raw Blackberry pie"
msgstr "Rohe Brombeertorte"
#: ../bushes_classic/init.lua
msgid "Slice of Blackberry pie"
msgstr "Brombeertortenstueck"
#: ../bushes_classic/init.lua
msgid "Basket with Blueberry pies"
msgstr "Korb mit Blaubeertorten"
#: ../bushes_classic/init.lua
msgid "Blueberry"
msgstr "Blaubeere"
#: ../bushes_classic/init.lua
msgid "Blueberry Bush"
msgstr "Blaubeerbusch"
#: ../bushes_classic/init.lua
msgid "Cooked Blueberry pie"
msgstr "Blaubeertorte"
#: ../bushes_classic/init.lua
msgid "Raw Blueberry pie"
msgstr "Rohe Blaubeertorte"
#: ../bushes_classic/init.lua
msgid "Slice of Blueberry pie"
msgstr "Blaubeertortenstueck"
#: ../bushes_classic/init.lua
msgid "Basket with Raspberry pies"
msgstr "Korb mit Himbeertorten"
#: ../bushes_classic/init.lua
msgid "Cooked Raspberry pie"
msgstr "Himbeertorte"
#: ../bushes_classic/init.lua
msgid "Raspberry"
msgstr "Himbeere"
#: ../bushes_classic/init.lua
msgid "Raspberry Bush"
msgstr "Himbeerbusch"
#: ../bushes_classic/init.lua
msgid "Raw Raspberry pie"
msgstr "Rohe Himbeertorte"
#: ../bushes_classic/init.lua
msgid "Slice of Raspberry pie"
msgstr "Himbeertortenstueck"
#: ../bushes_classic/init.lua
msgid "Basket with Gooseberry pies"
msgstr "Korb mit Stachelbeertorten"
#: ../bushes_classic/init.lua
msgid "Cooked Gooseberry pie"
msgstr "Stachelbeertorte"
#: ../bushes_classic/init.lua
msgid "Gooseberry"
msgstr "Stachelbeere"
#: ../bushes_classic/init.lua
msgid "Gooseberry Bush"
msgstr "Stachelbeerbusch"
#: ../bushes_classic/init.lua
msgid "Raw Gooseberry pie"
msgstr "Rohe Stachelbeertorte"
#: ../bushes_classic/init.lua
msgid "Slice of Gooseberry pie"
msgstr "Stachelbeertortenstueck"
#: ../bushes_classic/init.lua
msgid "Basket with Mixed Berry pies"
msgstr "Korb mit Beerenmixtorten"
#: ../bushes_classic/init.lua
msgid "Cooked Mixed Berry pie"
msgstr "Beerenmixtorte"
#: ../bushes_classic/init.lua
#, fuzzy
msgid "Currently fruitless Bush"
msgstr "zur Zeit fruechteloser"
#: ../bushes_classic/init.lua
msgid "Mixed Berry"
msgstr "Beerenmix"
#: ../bushes_classic/init.lua
msgid "Raw Mixed Berry pie"
msgstr "Rohe Beerenmixtorte"
#: ../bushes_classic/init.lua
msgid "Slice of Mixed Berry pie"
msgstr "Beerenmixtortenstueck"
#: ../bushes_classic/init.lua
msgid "[Bushes] Loaded."
msgstr "[Bushes] Geladen."
#: ../bushes_classic/nodes.lua
msgid "Basket"
msgstr "Korb"
#: ../cavestuff/nodes.lua
msgid "Pebble"
msgstr ""
#: ../cavestuff/nodes.lua
msgid "Desert Pebble"
msgstr ""
#: ../cavestuff/nodes.lua
msgid "Stalactite"
msgstr ""
#: ../dryplants/init.lua
msgid "Sickle"
msgstr ""
#: ../dryplants/init.lua
msgid "Cut Grass"
msgstr ""
#: ../dryplants/init.lua
msgid "Hay"
msgstr ""
#: ../dryplants/init.lua
msgid "Short Grass"
msgstr ""
#: ../dryplants/juncus.lua
msgid "Juncus"
msgstr ""
#: ../dryplants/reed.lua
msgid "Wet Reed"
msgstr ""
#: ../dryplants/reed.lua
msgid "Wet Reed Slab"
msgstr ""
#: ../dryplants/reed.lua
msgid "Wet Reed Roof"
msgstr ""
#: ../dryplants/reed.lua
msgid "Wet Reed Roof Corner"
msgstr ""
#: ../dryplants/reed.lua
msgid "Wet Reed Roof Corner 2"
msgstr ""
#: ../dryplants/reed.lua
msgid "Reed"
msgstr ""
#: ../dryplants/reed.lua
msgid "Reed Slab"
msgstr ""
#: ../dryplants/reed.lua
msgid "Reed Roof"
msgstr ""
#: ../dryplants/reed.lua
msgid "Reed Roof Corner"
msgstr ""
#: ../dryplants/reed.lua
msgid "Reed Roof Corner 2"
msgstr ""
#: ../dryplants/reedmace.lua
msgid "Reedmace"
msgstr ""
#: ../dryplants/reedmace.lua
msgid "Reedmace, height: 1"
msgstr ""
#: ../dryplants/reedmace.lua
msgid "Reedmace, height: 2"
msgstr ""
#: ../dryplants/reedmace.lua
msgid "Reedmace, height: 3"
msgstr ""
#: ../dryplants/reedmace.lua
msgid "Reedmace, height: 3 & Spikes"
msgstr ""
#: ../ferns/crafting.lua
msgid "Fiddlehead"
msgstr ""
#: ../ferns/crafting.lua
msgid "Roasted Fiddlehead"
msgstr ""
#: ../ferns/crafting.lua
msgid "Fern Tuber"
msgstr ""
#: ../ferns/crafting.lua
msgid "Roasted Fern Tuber"
msgstr ""
#: ../ferns/fern.lua
msgid "Lady-fern (Athyrium)"
msgstr ""
#: ../ferns/gianttreefern.lua ../ferns/treefern.lua
msgid "Tree Fern Crown (Dicksonia)"
msgstr ""
#: ../ferns/gianttreefern.lua
msgid "Giant Tree Fern Leaves"
msgstr ""
#: ../ferns/gianttreefern.lua
msgid "Giant Tree Fern Leave End"
msgstr ""
#: ../ferns/gianttreefern.lua
msgid "Giant Fern Trunk"
msgstr ""
#: ../ferns/gianttreefern.lua
msgid "Giant Tree Fern Sapling"
msgstr ""
#: ../ferns/horsetail.lua
msgid "Young Horsetail (Equisetum)"
msgstr ""
#: ../ferns/horsetail.lua
msgid "Horsetail (Equisetum)"
msgstr ""
#: ../ferns/treefern.lua
msgid "Fern Trunk (Dicksonia)"
msgstr ""
#: ../ferns/treefern.lua
msgid "Tree Fern Sapling (Dicksonia)"
msgstr ""
#: ../flowers_plus/init.lua
msgid "Waterlily"
msgstr "Seerose"
#: ../flowers_plus/init.lua
msgid "Seaweed"
msgstr "Seetang"
#: ../flowers_plus/init.lua
msgid "Sunflower"
msgstr "Sonnenblume"
#: ../flowers_plus/init.lua
msgid "[Flowers] Loaded."
msgstr "[Flowers] Geladen."
#: ../molehills/init.lua
msgid "Mole Hill"
msgstr ""
#: ../molehills/init.lua
msgid "Loaded..."
msgstr ""
#: ../nature_classic/blossom.lua
msgid "Apple blossoms"
msgstr ""
#: ../nature_classic/init.lua
msgid "[Nature Classic] loaded!"
msgstr ""
#: ../poisonivy/init.lua
msgid "Poison ivy (seedling)"
msgstr "Giftefeu (Saemling)"
#: ../poisonivy/init.lua
msgid "Poison ivy (sproutling)"
msgstr "Giftefeu (Sproessling)"
#: ../poisonivy/init.lua
msgid "Poison ivy (climbing plant)"
msgstr "Giftefeu (Kletterpflanze)"
#: ../poisonivy/init.lua
msgid "[Poison Ivy] Loaded."
msgstr "[Poison Ivy] Geladen."
#: ../trunks/nodes.lua
msgid "Twig"
msgstr ""
#: ../trunks/nodes.lua
msgid "Moss"
msgstr ""
#: ../trunks/nodes.lua
msgid "Moss with Fungus"
msgstr ""
#: ../trunks/nodes.lua
msgid "Twigs Block"
msgstr ""
#: ../trunks/nodes.lua
msgid "Twigs Slab"
msgstr ""
#: ../trunks/nodes.lua
msgid "Twigs Roof"
msgstr ""
#: ../trunks/nodes.lua
msgid "Twigs Roof Corner 1"
msgstr ""
#: ../trunks/nodes.lua
msgid "Twigs Roof Corner 2"
msgstr ""
#: ../trunks/nodes.lua
msgid "Root"
msgstr ""
#: ../vines/crafts.lua ../vines/vines.lua
msgid "Vines"
msgstr ""
#: ../vines/functions.lua
msgid "Matured"
msgstr ""
#: ../vines/init.lua
msgid "[Vines] Loaded!"
msgstr ""
#: ../vines/nodes.lua
msgid "Rope"
msgstr ""
#: ../vines/shear.lua
msgid "Shears"
msgstr ""
#: ../vines/vines.lua
msgid "Roots"
msgstr ""
#: ../vines/vines.lua
msgid "Jungle Vines"
msgstr ""
#: ../vines/vines.lua
msgid "Willow Vines"
msgstr ""
#: ../woodsoils/nodes.lua
msgid "Forest Soil 1"
msgstr ""
#: ../woodsoils/nodes.lua
msgid "Forest Soil 2"
msgstr ""
#: ../woodsoils/nodes.lua
msgid "Forest Soil 3"
msgstr ""
#: ../woodsoils/nodes.lua
msgid "Forest Soil 4"
msgstr ""
#: ../youngtrees/init.lua
msgid "Young Bamboo Tree"
msgstr ""
#: ../youngtrees/init.lua
msgid "Young Tree 2 (middle)"
msgstr ""
#: ../youngtrees/init.lua
msgid "Young Tree (top)"
msgstr ""
#: ../youngtrees/init.lua
msgid "Young Tree (middle)"
msgstr ""
#: ../youngtrees/init.lua
msgid "Young Tree (bottom)"
msgstr ""