1 Commits

Author SHA1 Message Date
2ef75a2f94 flux things 2022-11-05 21:10:46 -04:00
7 changed files with 278 additions and 283 deletions

View File

@ -14,7 +14,6 @@ globals = {
"default", "default",
"dump", "dump",
"moretrees", "moretrees",
"ethereal",
} }
read_globals = { read_globals = {

View File

@ -131,10 +131,7 @@ moretrees.willow_biome = {
} }
moretrees.rubber_tree_biome = { moretrees.rubber_tree_biome = {
surface = { surface = "default:dirt_with_grass",
"default:dirt_with_grass",
"default:sand",
},
avoid_nodes = moretrees.avoidnodes, avoid_nodes = moretrees.avoidnodes,
avoid_radius = 10, avoid_radius = 10,
seed_diff = 338, seed_diff = 338,

View File

@ -62,20 +62,6 @@ if io.open(worldpath.."/moretrees_settings.txt","r") then
dofile(worldpath.."/moretrees_settings.txt") dofile(worldpath.."/moretrees_settings.txt")
end end
-- Validate that if ethereal exists, that it's version is greater than 20220424.
-- Lower versions of ethereal clear registered biomes and decorations during
-- initialization which results in lost content from this mod (and others)
-- depending on where they are in the mod load order.
minetest.register_on_mods_loaded(function()
if minetest.global_exists("ethereal") then
local ethereal_ver = tonumber(ethereal.version)
if (ethereal_ver and ethereal_ver < 20220424) then
error("[moretrees] The version of ethereal detected can result " ..
"in parts of this mod and others disappearing due to mod " ..
"load order. Please update ethereal.");
end
end
end)
-- infinite stacks checking -- infinite stacks checking
@ -170,8 +156,8 @@ if moretrees.enable_palm then
end end
if moretrees.enable_date_palm then if moretrees.enable_date_palm then
minetest.register_decoration(translate_biome_defs(moretrees.date_palm_biome, "date_palm", 1)) minetest.register_decoration(translate_biome_defs(moretrees.date_palm_biome, "palm", 1))
minetest.register_decoration(translate_biome_defs(moretrees.date_palm_biome_2, "date_palm", 2)) minetest.register_decoration(translate_biome_defs(moretrees.date_palm_biome_2, "palm", 2))
end end
if moretrees.enable_cedar then if moretrees.enable_cedar then
@ -179,7 +165,7 @@ if moretrees.enable_cedar then
end end
if moretrees.enable_rubber_tree then if moretrees.enable_rubber_tree then
minetest.register_decoration(translate_biome_defs(moretrees.rubber_tree_biome, "rubber_tree")) minetest.register_decoration(translate_biome_defs(moretrees.rubber_tree_biome, "ruber"))
end end
if moretrees.enable_willow then if moretrees.enable_willow then
@ -206,26 +192,21 @@ if moretrees.enable_fir then
end end
if moretrees.enable_poplar then if moretrees.enable_poplar then
minetest.register_decoration(translate_biome_defs(moretrees.poplar_biome, "poplar", 1)) minetest.register_decoration(translate_biome_defs(moretrees.poplar_biome, "popular", 1))
minetest.register_decoration(translate_biome_defs(moretrees.poplar_biome_2, "poplar", 2)) minetest.register_decoration(translate_biome_defs(moretrees.poplar_biome_2, "popular", 2))
minetest.register_decoration(translate_biome_defs(moretrees.poplar_biome_3, "poplar", 3)) minetest.register_decoration(translate_biome_defs(moretrees.poplar_biome_3, "popular", 3))
minetest.register_decoration(translate_biome_defs(moretrees.poplar_small_biome, "poplar_small", 4)) minetest.register_decoration(translate_biome_defs(moretrees.poplar_small_biome, "popular", 4))
minetest.register_decoration(translate_biome_defs(moretrees.poplar_small_biome_2, "poplar_small", 5)) minetest.register_decoration(translate_biome_defs(moretrees.poplar_small_biome_2, "popular", 5))
end end
--[[ for k, v in pairs(deco_ids) do
this is purposefully wrapped in a on mods loaded callback to that it gets the proper ids deco_ids[k] = minetest.get_decoration_id(v)
if other mods clear the registered decorations end
]] minetest.set_gen_notify("decoration", deco_ids)
minetest.register_on_mods_loaded(function()
for k, v in pairs(deco_ids) do
deco_ids[k] = minetest.get_decoration_id(v)
end
minetest.set_gen_notify("decoration", deco_ids)
end)
minetest.register_on_generated(function(minp, maxp, blockseed) minetest.register_on_generated(function(minp, maxp, blockseed)
local g = minetest.get_mapgen_object("gennotify") local g = minetest.get_mapgen_object("gennotify")
--minetest.chat_send_all(dump(g))
local locations = {} local locations = {}
for _, id in pairs(deco_ids) do for _, id in pairs(deco_ids) do
local deco_locations = g["decoration#" .. id] or {} local deco_locations = g["decoration#" .. id] or {}
@ -236,8 +217,10 @@ minetest.register_on_generated(function(minp, maxp, blockseed)
if #locations == 0 then return end if #locations == 0 then return end
for _, pos in ipairs(locations) do for _, pos in ipairs(locations) do
--minetest.chat_send_all("yay")
local timer = minetest.get_node_timer({x=pos.x, y=pos.y+1, z=pos.z}) local timer = minetest.get_node_timer({x=pos.x, y=pos.y+1, z=pos.z})
timer:start(math.random(2,10)) timer:start(math.random(2,10))
--minetest.set_node(pos, {name="default:stone"})
end end
end) end)

View File

@ -1,11 +1,11 @@
# textdomain: moretrees # textdomain: moretrees
# Translation by Carlos Barraza, improvements by David Leal. # Translation by Carlos Barraza
### cocos_palm.lua ### ### cocos_palm.lua ###
Coconut=Coco Coconut=Coco
Coconut Flower=Flor de Coco Coconut Flower=
### crafts.lua ### ### crafts.lua ###
@ -17,8 +17,8 @@ Date & nut snack=Datilera y Nueces
Date-nut cake=Pastel de Datilera Date-nut cake=Pastel de Datilera
Date-nut cake batter=Pasta de torta de Datilera Date-nut cake batter=Pasta de torta de Datilera
Date-nut energy bar=Barra energetica de Datilera Date-nut energy bar=Barra energetica de Datilera
Raw Coconut=Coco Crudo Raw Coconut=Coco crudo
Roasted Cedar Cone Nuts=Coco de Álamo Tostado Roasted Cedar Cone Nuts=Coco de Alamo Tostado
Roasted Fir Cone Nuts=Cono de Abeto Tostado Roasted Fir Cone Nuts=Cono de Abeto Tostado
Roasted Spruce Cone Nuts=Cono de Picea Tostado Roasted Spruce Cone Nuts=Cono de Picea Tostado
@ -30,182 +30,182 @@ Dates=Datilera
### node_defs.lua ### ### node_defs.lua ###
@1 (fast growth)=@1 (crecimiento rápido) @1 (fast growth)=
Acorn=Bellota Acorn=Bellota
Apple Tree=Árbol de manzana Apple Tree=
Apple Tree Fence=Valla de manzano Apple Tree Fence=
Apple Tree Fence Gate=Puerta de Valla de Manzano Apple Tree Fence Gate=
Apple Tree Fence Rail=Riel de Valla de Manzano Apple Tree Fence Rail=
Apple Tree Leaves=Hojas de Árbol de Manzana Apple Tree Leaves=Hojas de Arbol de Manzana
Apple Tree Planks=Madera de Árbol de Manzana Apple Tree Planks=Madera de Arbol de Manzana
Apple Tree Planks Slab=Losa de Tablones de Manzano Apple Tree Planks Slab=
Apple Tree Planks Stair=Escalera de Tablones de Manzano Apple Tree Planks Stair=
Apple Tree Sapling=Retoño de Árbol de Manzana Apple Tree Sapling=Retoño de Arbol de Manzana
Apple Tree Trunk=Tronco de Árbol de Manzana Apple Tree Trunk=Tronco de Arbol de Manzana
Apple Tree Trunk Slab=Losa de Tronco de Manzano Apple Tree Trunk Slab=
Apple Tree Trunk Stair=Escalera de Tronco de Manzano Apple Tree Trunk Stair=
Beech Tree=Haya Beech Tree=
Beech Tree Fence=Valla de Haya Beech Tree Fence=
Beech Tree Fence Gate=Puerta de Valla de Haya Beech Tree Fence Gate=
Beech Tree Fence Rail=Riel de Valla de Haya Beech Tree Fence Rail=
Beech Tree Leaves=Hojas de Arbol de Haya Beech Tree Leaves=Hojas de Arbol de Haya
Beech Tree Planks=Madera de Arbol de Haya Beech Tree Planks=Madera de Arbol de Haya
Beech Tree Planks Slab=Losa de Tablones de Haya Beech Tree Planks Slab=
Beech Tree Planks Stair=Escalera de Tablones de Haya Beech Tree Planks Stair=
Beech Tree Sapling=Retoño de Árbol de Haya Beech Tree Sapling=Retoño de Arbol de Haya
Beech Tree Trunk=Tronco de Árbol de Haya Beech Tree Trunk=Tronco de Arbol de Haya
Beech Tree Trunk Slab=Losa de Tronco de Haya Beech Tree Trunk Slab=
Beech Tree Trunk Stair=Escalera de Tronco de Haya Beech Tree Trunk Stair=
Birch Tree=Abedul Birch Tree=
Birch Tree Fence=Valla de Abedul Birch Tree Fence=
Birch Tree Fence Gate=Puerta de Valla de Abedul Birch Tree Fence Gate=
Birch Tree Fence Rail=Riel de Valla de Abedul Birch Tree Fence Rail=
Birch Tree Leaves=Hojas de Arbol de Abedul Birch Tree Leaves=Hojas de Arbol de Abedul
Birch Tree Planks=Madera de Arbol de Abedul Birch Tree Planks=Madera de Arbol de Abedul
Birch Tree Planks Slab=Losa de Tablones de Abedul Birch Tree Planks Slab=
Birch Tree Planks Stair=Escalera de Tablones de Abedul Birch Tree Planks Stair=
Birch Tree Sapling=Retoño de Árbol de Abedul Birch Tree Sapling=Retoño de Arbol de Abedul
Birch Tree Trunk=Tronco de Árbol de Abedul Birch Tree Trunk=Tronco de Arbol de Abedul
Birch Tree Trunk Slab=Losa de Tronco de Abedul Birch Tree Trunk Slab=
Birch Tree Trunk Stair=Escalera de Tronco de Abedul Birch Tree Trunk Stair=
Cedar Cone=Coco de Álamo Cedar Cone=Coco de Alamo
Cedar Tree=Árbol de Cedro Cedar Tree=
Cedar Tree Fence=Valla de Árbol de Cedro Cedar Tree Fence=
Cedar Tree Fence Gate=Puerta de Valla de Árbol de Cedro Cedar Tree Fence Gate=
Cedar Tree Fence Rail=Riel de Valla de Árbol de Cedro Cedar Tree Fence Rail=
Cedar Tree Leaves=Hojas de Árbol de Cedro Cedar Tree Leaves=Hojas de Arbol de Cedro
Cedar Tree Planks=Madera de Árbol de Cedro Cedar Tree Planks=Madera de Arbol de Cedro
Cedar Tree Planks Slab=Losa de Tablones de Árbol de Cedro Cedar Tree Planks Slab=
Cedar Tree Planks Stair=Escalera de Tablones de Árbol de Cedro Cedar Tree Planks Stair=
Cedar Tree Sapling=Retoño de Árbol de Cedro Cedar Tree Sapling=Retoño de Arbol de Cedro
Cedar Tree Trunk=Tronco de Árbol de Cedro Cedar Tree Trunk=Tronco de Arbol de Cedro
Cedar Tree Trunk Slab=Losa de Tronco de Árbol de Cedro Cedar Tree Trunk Slab=
Cedar Tree Trunk Stair=Escalera de Tronco de Árbol de Cedro Cedar Tree Trunk Stair=
Date Palm Tree=Palmera Datilera Date Palm Tree=
Date Palm Tree Fence=Valla de Palmera Datilera Date Palm Tree Fence=
Date Palm Tree Fence Gate=Puerta de Valla de Palmera Datilera Date Palm Tree Fence Gate=
Date Palm Tree Fence Rail=Riel de Valla de Palmera Datilera Date Palm Tree Fence Rail=
Date Palm Tree Leaves=Hojas de Palmera Datilera Date Palm Tree Leaves=
Date Palm Tree Planks=Madera de Palmera Datilera Date Palm Tree Planks=Madera de Palmera Datilera
Date Palm Tree Planks Slab=Losa de Tablones de Palmera Datilera Date Palm Tree Planks Slab=
Date Palm Tree Planks Stair=Escalera de Tablones de Palmera Datilera Date Palm Tree Planks Stair=
Date Palm Tree Sapling=Retoño de Palmera Datilera Date Palm Tree Sapling=
Date Palm Tree Trunk=Tronco de Palmera Datilera Date Palm Tree Trunk=Tronco de Palmera Datilera
Date Palm Tree Trunk Slab=Losa de Tronco de Palmera Datilera Date Palm Tree Trunk Slab=
Date Palm Tree Trunk Stair=Escalera de Tronco de Palmera Datilera Date Palm Tree Trunk Stair=
Douglas Fir=Árbol de Abeto de Douglas Douglas Fir=
Douglas Fir Fence=Valla de Árbol de Abeto de Douglas Douglas Fir Fence=
Douglas Fir Fence Gate=Puerta de Valla de Árbol de Abeto de Douglas Douglas Fir Fence Gate=
Douglas Fir Fence Rail=Riel de Valla de Árbol de Abeto de Douglas Douglas Fir Fence Rail=
Douglas Fir Leaves=Hojas de Árbol de Abeto de Douglas Douglas Fir Leaves=Hojas de Arbol de Abeto de Douglas
Douglas Fir Leaves (Bright)=Hojas de Árbol de Abeto de Douglas (Brillante) Douglas Fir Leaves (Bright)=Hojas de Arbol de Abeto de Douglas (Brillante)
Douglas Fir Planks=Madera de Árbol de Abeto de Douglas Douglas Fir Planks=Madera de Arbol de Abeto de Douglas
Douglas Fir Planks Slab=Losa de Tablones de Árbol de Abeto de Douglas Douglas Fir Planks Slab=
Douglas Fir Planks Stair=Escalera de Tablones de Árbol de Abeto de Douglas Douglas Fir Planks Stair=
Douglas Fir Sapling=Retoño de Árbol de Abeto de Douglas Douglas Fir Sapling=Retoño de Arbol de Abeto de Douglas
Douglas Fir Trunk=Tronco de Árbol de Abeto de Douglas Douglas Fir Trunk=Tronco de Arbol de Abeto de Douglas
Douglas Fir Trunk Slab=Losa de Tronco de Árbol de Abeto de Douglas Douglas Fir Trunk Slab=
Douglas Fir Trunk Stair=Escalera de Tronco de Árbol de Abeto de Douglas Douglas Fir Trunk Stair=
Fir Cone=Coco de Abeto Fir Cone=Coco de Abeto
Giant Sequoia=Secuoya Gigante Giant Sequoia=
Giant Sequoia Fence=Valla de Secuoya Gigante Giant Sequoia Fence=
Giant Sequoia Fence Gate=Puerta de Valla de Secuoya Gigante Giant Sequoia Fence Gate=
Giant Sequoia Fence Rail=Riel de Valla de Secuoya Gigante Giant Sequoia Fence Rail=
Giant Sequoia Leaves=Hojas de Secuoya Gigante Giant Sequoia Leaves=Hojas de Sequoia Gigante
Giant Sequoia Planks=Madera de Secuoya Gigante Giant Sequoia Planks=Madera de Sequoia Gigante
Giant Sequoia Planks Slab=Losa de Tablones de Secuoya Gigante Giant Sequoia Planks Slab=
Giant Sequoia Planks Stair=Escalera de Tablones de Secuoya Gigante Giant Sequoia Planks Stair=
Giant Sequoia Sapling=Retoño de Árbol de Secuoya Gigante Giant Sequoia Sapling=Retoño de Arbol de Sequoia Gigante
Giant Sequoia Trunk=Tronco de Secuoya Gigante Giant Sequoia Trunk=Tronco de Sequoia Gigante
Giant Sequoia Trunk Slab=Losa de Tronco de Secuoya Gigante Giant Sequoia Trunk Slab=
Giant Sequoia Trunk Stair=Escalera de Tronco de Secuoya Gigante Giant Sequoia Trunk Stair=
Jungle Tree=Árbol de la Selva Jungle Tree=Tronco de Arbol de Arbol de la Selva
Jungle Tree Fence=Valla de Árbol de la Selva Jungle Tree Fence=
Jungle Tree Fence Gate=Puerta de Valla de Árbol de la Selva Jungle Tree Fence Gate=
Jungle Tree Fence Rail=Riel de Valla de Árbol de la Selva Jungle Tree Fence Rail=
Jungle Tree Leaves=Hojas de Árbol de la Selva Jungle Tree Leaves=Hojas de Arbol de la Selva
Jungle Tree Leaves (@1)=Hojas de Árbol de la Selva (@1) Jungle Tree Leaves (@1)=Hojas de Arbol de la Selva (@1)
Jungle Tree Planks=Madera de Árbol de la Selva Jungle Tree Planks=
Jungle Tree Planks Slab=Losa de Tablones de Árbol de la Selva Jungle Tree Planks Slab=
Jungle Tree Planks Stair=Escalera de Tablones de Árbol de la Selva Jungle Tree Planks Stair=
Jungle Tree Sapling=Retoño de Árbol de la Selva Jungle Tree Sapling=
Jungle Tree Trunk=Tronco de Árbol de Árbol de la Selva Jungle Tree Trunk=
Jungle Tree Trunk Slab=Losa de Tronco de Árbol de la Selva Jungle Tree Trunk Slab=
Jungle Tree Trunk Stair=Escalera de Tronco de Árbol de la Selva Jungle Tree Trunk Stair=
Oak Tree=Árbol de Roble Oak Tree=
Oak Tree Fence=Valla de Árbol de Roble Oak Tree Fence=
Oak Tree Fence Gate=Puerta de Valla de Árbol de Roble Oak Tree Fence Gate=
Oak Tree Fence Rail=Riel de Valla de Árbol de Roble Oak Tree Fence Rail=
Oak Tree Leaves=Hojas de Árbol de Roble Oak Tree Leaves=Hojas de Arbol de Roble
Oak Tree Planks=Madera de Árbol de Roble Oak Tree Planks=Madera de Arbol de Roble
Oak Tree Planks Slab=Losa de Tablones de Árbol de Roble Oak Tree Planks Slab=
Oak Tree Planks Stair=Escalera de Tablones de Árbol de Roble Oak Tree Planks Stair=
Oak Tree Sapling=Retoño de Árbol de Roble Oak Tree Sapling=Retoño de Arbol de Roble
Oak Tree Trunk=Tronco de Árbol de Roble Oak Tree Trunk=Tronco de Arbol de Roble
Oak Tree Trunk Slab=Losa de Tronco de Árbol de Roble Oak Tree Trunk Slab=
Oak Tree Trunk Stair=Escalera de Tronco de Árbol de Roble Oak Tree Trunk Stair=
Palm Tree=Palmera Palm Tree=
Palm Tree Fence=Valla de Palmera Palm Tree Fence=
Palm Tree Fence Gate=Puerta de Valla de Palmera Palm Tree Fence Gate=
Palm Tree Fence Rail=Riel de Valla de Palmera Palm Tree Fence Rail=
Palm Tree Leaves=Hojas de Palmera Palm Tree Leaves=Hojas de Palmera
Palm Tree Planks=Madera de Palmera Palm Tree Planks=Madera de Palmera
Palm Tree Planks Slab=Losa de Tablones de Palmera Palm Tree Planks Slab=
Palm Tree Planks Stair=Escalera de Tablones de Palmera Palm Tree Planks Stair=
Palm Tree Sapling=Retoño de Palmera Palm Tree Sapling=Retoño de Palmera
Palm Tree Trunk=Tronco de Palmera Palm Tree Trunk=Tronco de Palmera
Palm Tree Trunk Slab=Losa de Troncos de Palmera Palm Tree Trunk Slab=
Palm Tree Trunk Stair=Escalera de Troncos de Palmera Palm Tree Trunk Stair=
Poplar Tree=Árbol de Alamo Poplar Tree=
Poplar Tree Fence=Valla de Árbol de Alamo Poplar Tree Fence=
Poplar Tree Fence Gate=Puerta de Valla de Árbol de Alamo Poplar Tree Fence Gate=
Poplar Tree Fence Rail=Riel de Valla de Árbol de Alamo Poplar Tree Fence Rail=
Poplar Tree Leaves=Hojas de Arbol de Alamo Poplar Tree Leaves=Hojas de Arbol de Alamo
Poplar Tree Planks=Madera de Árbol de Alamo Poplar Tree Planks=Madera de Arbol de Alamo
Poplar Tree Planks Slab=Losa de Tablones de Árbol de Alamo Poplar Tree Planks Slab=
Poplar Tree Planks Stair=Escalera de Tablones de Árbol de Alamo Poplar Tree Planks Stair=
Poplar Tree Sapling=Retoño de Árbol de Alamo Poplar Tree Sapling=Retoño de Arbol de Alamo
Poplar Tree Trunk=Tronco de Árbol de Alamo Poplar Tree Trunk=Tronco de Arbol de Alamo
Poplar Tree Trunk Slab=Losa de Tronco de Árbol de Alamo Poplar Tree Trunk Slab=
Poplar Tree Trunk Stair=Escalera de Tronco de Árbol de Alamo Poplar Tree Trunk Stair=
Red=Rojo Red=Roja
Rubber Tree=Árbol del Caucho Rubber Tree=
Rubber Tree Fence=Valla de Árbol del Caucho Rubber Tree Fence=
Rubber Tree Fence Gate=Puerta de Valla de Árbol del Caucho Rubber Tree Fence Gate=
Rubber Tree Fence Rail=Riel de Valla de Árbol del Caucho Rubber Tree Fence Rail=
Rubber Tree Leaves=Hojas de Árbol de Árbol del Caucho Rubber Tree Leaves=Hojas de Arbol de Arbol de Goma
Rubber Tree Planks=Madera de Árbol de Árbol del Caucho Rubber Tree Planks=Madera de Arbol de Arbol de Goma
Rubber Tree Planks Slab=Losa de Tablones de Árbol del Caucho Rubber Tree Planks Slab=
Rubber Tree Planks Stair=Escalera de Tablones de Árbol del Caucho Rubber Tree Planks Stair=
Rubber Tree Sapling=Retoño de Árbol de Árbol del Caucho Rubber Tree Sapling=Retoño de Arbol de Arbol de Goma
Rubber Tree Trunk=Tronco de Árbol de Árbol del Caucho Rubber Tree Trunk=Tronco de Arbol de Arbol de Goma
Rubber Tree Trunk (Empty)=Tronco de Árbol del Caucho (Vacío) Rubber Tree Trunk (Empty)=Tronco de Arbol de Goma (Vacio)
Rubber Tree Trunk Slab=Losa de Tronco de Árbol del Caucho Rubber Tree Trunk Slab=
Rubber Tree Trunk Stair=Escalera de Tronco de Árbol del Caucho Rubber Tree Trunk Stair=
Small poplar Tree Sapling=Pequeño Retoño de Álamo Small poplar Tree Sapling=
Spruce Cone=Coco de Picea Spruce Cone=Coco de Picea
Spruce Tree=Árbol de Abeto Spruce Tree=
Spruce Tree Fence=Valla de Árbol de Abeto Spruce Tree Fence=
Spruce Tree Fence Gate=Puerta de Valla de Árbol de Abeto Spruce Tree Fence Gate=
Spruce Tree Fence Rail=Riel de Valla de Árbol de Abeto Spruce Tree Fence Rail=
Spruce Tree Leaves=Hojas de Árbol de Abeto Spruce Tree Leaves=Hojas de Arbol de Abeto
Spruce Tree Planks=Madera de Árbol de Abeto Spruce Tree Planks=Madera de Arbol de Abeto
Spruce Tree Planks Slab=Losa de Tablones de Árbol de Abeto Spruce Tree Planks Slab=
Spruce Tree Planks Stair=Escalera de Tablones de Árbol de Abeto Spruce Tree Planks Stair=
Spruce Tree Sapling=Retoño de Árbol de Abeto Spruce Tree Sapling=Retoño de Arbol de Abeto
Spruce Tree Trunk=Tronco de Árbol de Abeto Spruce Tree Trunk=Tronco de Arbol de Abeto
Spruce Tree Trunk Slab=Losa de Tronco de Árbol de Abeto Spruce Tree Trunk Slab=
Spruce Tree Trunk Stair=Escalera de Tronco de Árbol de Abeto Spruce Tree Trunk Stair=
Willow Tree=Árbol de Sauce Willow Tree=
Willow Tree Fence=Valla de Árbol de Sauce Willow Tree Fence=
Willow Tree Fence Gate=Puerta de Valla de Árbol de Sauce Willow Tree Fence Gate=
Willow Tree Fence Rail=Riel de Valla de Árbol de Sauce Willow Tree Fence Rail=
Willow Tree Leaves=Hojas de Árbol de Sauce Willow Tree Leaves=Hojas de Arbol de Sauce
Willow Tree Planks=Madera de Árbol de Sauce Willow Tree Planks=Madera de Arbol de Sauce
Willow Tree Planks Slab=Losa de Tablones de Árbol de Sauce Willow Tree Planks Slab=
Willow Tree Planks Stair=Escalera de Tablones de Árbol de Sauce Willow Tree Planks Stair=
Willow Tree Sapling=Retoño de Árbol de Sauce Willow Tree Sapling=Retoño de Arbol de Sauce
Willow Tree Trunk=Tronco de Árbol de Sauce Willow Tree Trunk=Tronco de Arbol de Sauce
Willow Tree Trunk Slab=Losa de Tronco de Árbol de Sauce Willow Tree Trunk Slab=
Willow Tree Trunk Stair=Escalera de Tronco de Árbol de Sauce Willow Tree Trunk Stair=
Yellow=Amarillo Yellow=Amarilla

View File

@ -1,4 +1,4 @@
name = moretrees name = moretrees
depends = default, vessels depends = default, vessels
optional_depends = doors, stairs, moreblocks, farming optional_depends = doors, stairs, moreblocks, farming, ethereal
min_minetest_version = 5.2.0 min_minetest_version = 5.2.0

View File

@ -215,7 +215,6 @@ local dirs2 = { 12, 9, 18, 7, 12 }
local moretrees_new_leaves_drawtype = "allfaces_optional" local moretrees_new_leaves_drawtype = "allfaces_optional"
local moretrees_plantlike_leaves_visual_scale = 1 local moretrees_plantlike_leaves_visual_scale = 1
local moretrees_new_leaves_waving = 1
if moretrees.plantlike_leaves then if moretrees.plantlike_leaves then
moretrees_new_leaves_drawtype = "plantlike" moretrees_new_leaves_drawtype = "plantlike"
@ -265,9 +264,9 @@ for i in ipairs(moretrees.treelist) do
decay = moretrees.date_palm_leafdecay_radius decay = moretrees.date_palm_leafdecay_radius
end end
-- dont register planks/nodes for trees from default and small varients for trees if treename ~= "jungletree" -- the default game provides jungle tree and pine trunk/planks nodes.
local split_tn = treename:split("_") and treename ~= "poplar_small"
if treename ~= "jungletree" and treename ~= "pine" and split_tn[2]~="small" then and treename ~= "pine" then
saptex = "moretrees_"..treename.."_sapling.png" saptex = "moretrees_"..treename.."_sapling.png"
@ -293,10 +292,64 @@ for i in ipairs(moretrees.treelist) do
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
}) })
local regular_groups = {snappy=2,dig_immediate=3,flammable=2,attached_node=1,sapling=1}
if minetest.settings:get_bool("creative_mode", false) then
regular_groups["not_in_creative_inventory"]=1
end
minetest.register_node("moretrees:"..treename.."_sapling", {
description = moretrees.treedesc[treename].sapling,
drawtype = "plantlike",
tiles = {saptex},
inventory_image = saptex,
paramtype = "light",
paramtype2 = "waving",
walkable = false,
is_ground_content = true,
selection_box = {
type = "fixed",
fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3}
},
groups = regular_groups,
sounds = default.node_sound_defaults(),
on_place = function(itemstack, placer, pointed_thing)
itemstack = default.sapling_on_place(itemstack, placer, pointed_thing,
"moretrees:" ..treename.. "_sapling",
-- minp, maxp to be checked, relative to sapling pos
-- minp_relative.y = 1 because sapling pos has been checked
{x = -3, y = 1, z = -3},
{x = 3, y = 6, z = 3},
-- maximum interval of interior volume check
4)
return itemstack
end,
on_construct = function(pos)
minetest.get_node_timer(pos):start(300)
end,
on_timer = function(pos, elapsed)
if moretrees.can_grow(pos, treename) then
--moretrees["grow_" .. treename](pos)
minetest.set_node(pos, {name="air"})
if type(moretrees["spawn_" .. treename .. "_object"])=="string" then
local split = moretrees["spawn_" .. treename .. "_object"]:split(".")
moretrees[split[2]](pos)
else
minetest.spawn_tree(pos, moretrees["spawn_" .. treename .. "_object"])
end
else
minetest.get_node_timer(pos):start(300)
end
end,
})
local moretrees_leaves_inventory_image = nil local moretrees_leaves_inventory_image = nil
local moretrees_new_leaves_waving = nil
if moretrees.plantlike_leaves then if moretrees.plantlike_leaves then
moretrees_leaves_inventory_image = minetest.inventorycube("moretrees_"..treename.."_leaves.png") moretrees_leaves_inventory_image = minetest.inventorycube("moretrees_"..treename.."_leaves.png")
else
moretrees_new_leaves_waving = 1
end end
minetest.register_node("moretrees:"..treename.."_leaves", { minetest.register_node("moretrees:"..treename.."_leaves", {
@ -415,69 +468,16 @@ for i in ipairs(moretrees.treelist) do
end end
end end
-- the default game provides jungle tree and pine saplings.
if treename~="jungletree" and treename ~= "pine" then
local regular_groups = {snappy=2,dig_immediate=3,flammable=2,attached_node=1,sapling=1}
if minetest.settings:get_bool("creative_mode", false) then
regular_groups["not_in_creative_inventory"]=1
end
minetest.register_node("moretrees:"..treename.."_sapling", {
description = moretrees.treedesc[treename].sapling,
drawtype = "plantlike",
tiles = {split_tn[2] and split_tn[2]=="small" and "moretrees_" .. treename .. "_sapling.png" or saptex},
inventory_image = split_tn[2] and split_tn[2]=="small" and "moretrees_" .. treename .. "_sapling.png" or saptex,
paramtype = "light",
paramtype2 = "waving",
walkable = false,
is_ground_content = true,
selection_box = {
type = "fixed",
fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3}
},
groups = regular_groups,
sounds = default.node_sound_defaults(),
on_place = function(itemstack, placer, pointed_thing)
itemstack = default.sapling_on_place(itemstack, placer, pointed_thing,
"moretrees:" ..treename.. "_sapling",
-- minp, maxp to be checked, relative to sapling pos
-- minp_relative.y = 1 because sapling pos has been checked
{x = -3, y = 1, z = -3},
{x = 3, y = 6, z = 3},
-- maximum interval of interior volume check
4)
return itemstack
end,
on_construct = function(pos)
minetest.get_node_timer(pos):start(300)
end,
on_timer = function(pos, elapsed)
if moretrees.can_grow(pos, treename) then
--moretrees["grow_" .. treename](pos)
minetest.set_node(pos, {name="air"})
if type(moretrees["spawn_" .. treename .. "_object"])=="string" then
local split = moretrees["spawn_" .. treename .. "_object"]:split(".")
moretrees[split[2]](pos)
else
minetest.spawn_tree(pos, moretrees["spawn_" .. treename .. "_object"])
end
else
minetest.get_node_timer(pos):start(300)
end
end,
})
end
local ongen_groups = {snappy=2,dig_immediate=3,flammable=2,attached_node=1,sapling=1,not_in_creative_inventory=1} local ongen_groups = {snappy=2,dig_immediate=3,flammable=2,attached_node=1,sapling=1,not_in_creative_inventory=1}
if minetest.settings:get_bool("creative_mode", false) then if minetest.settings:get_bool("creative_mode", false) then
ongen_groups["not_in_creative_inventory"]=nil ongen_groups["not_in_creative_inventory"]=nil
end end
minetest.register_node("moretrees:"..treename.."_sapling_ongen", { minetest.register_node("moretrees:"..treename.."_sapling_ongen", {
description = S("@1 (fast growth)", moretrees.treedesc[treename].sapling), description = S("@1 (fast growth)", moretrees.treedesc[treename].sapling),
drawtype = "plantlike", drawtype = "plantlike",
tiles = {split_tn[2] and split_tn[2]=="small" and "moretrees_" .. treename .. "_sapling.png" or saptex,}, tiles = {saptex},
inventory_image = split_tn[2] and split_tn[2]=="small" and "moretrees_" .. treename .. "_sapling.png" or saptex, inventory_image = saptex,
paramtype = "light", paramtype = "light",
paramtype2 = "waving", paramtype2 = "waving",
walkable = false, walkable = false,
@ -540,11 +540,6 @@ for i in ipairs(moretrees.treelist) do
}, },
groups = {fleshy=3,dig_immediate=3,flammable=2, attached_node=1, leafdecay = 1, leafdecay_drop = 1}, groups = {fleshy=3,dig_immediate=3,flammable=2, attached_node=1, leafdecay = 1, leafdecay_drop = 1},
sounds = default.node_sound_defaults(), sounds = default.node_sound_defaults(),
after_place_node = function(pos, placer)
if placer:is_player() then
minetest.set_node(pos, {name = "moretrees:"..fruit, param2 = 1})
end
end
}) })
end end
@ -577,7 +572,33 @@ for i in ipairs(moretrees.treelist) do
end end
end end
-- poplar saplings leaves -- Add small poplar saplings
local poplar_sapling = minetest.registered_nodes["moretrees:poplar_sapling"]
local poplar_sapling_ongen = minetest.registered_nodes["moretrees:poplar_sapling_ongen"]
local poplar_small_sapling = {}
local poplar_small_sapling_ongen = {}
for k,v in pairs(poplar_sapling) do
poplar_small_sapling[k] = v
end
for k,v in pairs(poplar_sapling_ongen) do
poplar_small_sapling_ongen[k] = v
end
poplar_small_sapling.tiles = {"moretrees_poplar_small_sapling.png"}
poplar_small_sapling.inventory_image = "moretrees_poplar_small_sapling.png"
poplar_small_sapling.is_ground_content = true
poplar_small_sapling_ongen.tiles_ongen = {"moretrees_poplar_small_sapling.png"}
poplar_small_sapling_ongen.inventory_image_ongen = "moretrees_poplar_small_sapling.png"
poplar_small_sapling_ongen.drop = "moretrees:poplar_small_sapling"
poplar_small_sapling_ongen.is_ground_content = true
minetest.register_node("moretrees:poplar_small_sapling", poplar_small_sapling)
minetest.register_node("moretrees:poplar_small_sapling_ongen", poplar_small_sapling_ongen)
if moretrees.spawn_saplings then
table.insert(moretrees.avoidnodes, "moretrees:poplar_sapling")
table.insert(moretrees.avoidnodes, "moretrees:poplar_small_sapling_ongen")
end
local poplar_leaves_drop = minetest.registered_nodes["moretrees:poplar_leaves"].drop local poplar_leaves_drop = minetest.registered_nodes["moretrees:poplar_leaves"].drop
minetest.override_item("moretrees:poplar_leaves", { minetest.override_item("moretrees:poplar_leaves", {
drop = { drop = {
@ -601,6 +622,8 @@ for color = 1, #jungleleaves do
if moretrees.plantlike_leaves then if moretrees.plantlike_leaves then
moretrees_leaves_inventory_image = minetest.inventorycube("moretrees_jungletree_leaves_"..jungleleaves[color]..".png") moretrees_leaves_inventory_image = minetest.inventorycube("moretrees_jungletree_leaves_"..jungleleaves[color]..".png")
else
moretrees_new_leaves_waving = 1
end end
minetest.register_node(leave_name, { minetest.register_node(leave_name, {
@ -628,8 +651,7 @@ end
-- we need our own copy of that node, which moretrees will match against. -- we need our own copy of that node, which moretrees will match against.
local jungle_tree = table.copy(minetest.registered_nodes["default:jungletree"]) local jungle_tree = table.copy(minetest.registered_nodes["default:jungletree"])
jungle_tree.drop = jungle_tree.drop or { items = {} } jungle_tree.drop = "default:jungletree"
table.insert(jungle_tree.drop.items, { items = {"default:jungletree"}})
minetest.register_node("moretrees:jungletree_trunk", jungle_tree) minetest.register_node("moretrees:jungletree_trunk", jungle_tree)
default.register_leafdecay({ default.register_leafdecay({

View File

@ -6,9 +6,6 @@
local dirt_surfaces = { local dirt_surfaces = {
set = true, set = true,
["default:dirt"] = true, ["default:dirt"] = true,
["default:dirt_with_snow"] = true,
["default:dry_dirt"] = true,
["default:dry_dirt_with_dry_grass"] = true,
["default:dirt_with_grass"] = true, ["default:dirt_with_grass"] = true,
["default:dirt_with_dry_grass"] = true, ["default:dirt_with_dry_grass"] = true,
["default:dirt_with_coniferous_litter"] = true, ["default:dirt_with_coniferous_litter"] = true,
@ -16,8 +13,7 @@ local dirt_surfaces = {
["woodsoils:dirt_with_leaves_1"] = true, ["woodsoils:dirt_with_leaves_1"] = true,
["woodsoils:dirt_with_leaves_2"] = true, ["woodsoils:dirt_with_leaves_2"] = true,
["woodsoils:grass_with_leaves_1"] = true, ["woodsoils:grass_with_leaves_1"] = true,
["woodsoils:grass_with_leaves_2"] = true, ["woodsoils:grass_with_leaves_2"] = true
["meditteranean_biome:dirt_with_mediterranean_grass"] = true
} }
local conifer_surfaces = { local conifer_surfaces = {
@ -31,8 +27,7 @@ local conifer_surfaces = {
["woodsoils:dirt_with_leaves_2"] = true, ["woodsoils:dirt_with_leaves_2"] = true,
["woodsoils:grass_with_leaves_1"] = true, ["woodsoils:grass_with_leaves_1"] = true,
["woodsoils:grass_with_leaves_2"] = true, ["woodsoils:grass_with_leaves_2"] = true,
["default:dirt_with_snow"] = true, ["default:dirt_with_snow"] = true
["meditteranean_biome:dirt_with_mediterranean_grass"] = true
} }
local sand_surfaces = { local sand_surfaces = {
@ -40,7 +35,6 @@ local sand_surfaces = {
["default:sand"] = true, ["default:sand"] = true,
["default:desert_sand"] = true, ["default:desert_sand"] = true,
["cottages:loam"] = true, ["cottages:loam"] = true,
["darkage:mud"] = true,
-- note, no silver sand here. -- note, no silver sand here.
-- too cold for a palm, too... well... sandy for anything else. -- too cold for a palm, too... well... sandy for anything else.
} }