1
0
mirror of https://github.com/mt-mods/plantlife_modpack.git synced 2025-07-19 08:10:31 +02:00

Merge remote-tracking branch 'upstream/master'

This commit is contained in:
2023-06-07 22:23:22 +02:00
41 changed files with 488 additions and 6 deletions

View File

@ -13,6 +13,25 @@ assert(abstract_ferns.config.enable_giant_treefern == true)
local S = minetest.get_translator("ferns")
-- lot of code, lot to load
function abstract_ferns.can_grow_giant_tree_fern(pos)
local node_name = minetest.get_node(pos).name
if node_name ~= "air" and node_name ~= "ferns:sapling_giant_tree_fern" and node_name ~= "default:junglegrass" then
return false
end
local below_name = minetest.get_node(vector.new(pos.x, pos.y - 1, pos.z)).name
if minetest.get_item_group(below_name, "soil") == 0 and minetest.get_item_group(below_name, "sand") == 0 then
return false
end
local light = minetest.get_node_light(pos, 0.5)
if light <= 8 then
return false
end
return true
end
abstract_ferns.grow_giant_tree_fern = function(pos)
local pos_aux = {x = pos.x, y = pos.y + 1, z = pos.z}
local name = minetest.get_node(pos_aux).name
@ -181,6 +200,7 @@ minetest.register_node("ferns:tree_fern_leave_big_end", {
paramtype = "light",
paramtype2 = "facedir",
tiles = { "ferns_tree_fern_leave_big_end.png" },
use_texture_alpha = "clip",
walkable = false,
node_box = {
type = "fixed",
@ -213,6 +233,7 @@ minetest.register_node("ferns:fern_trunk_big_top", {
"ferns_fern_trunk_big_top.png^ferns_tree_fern_leave_big_cross.png",
"ferns_fern_trunk_big.png"
},
use_texture_alpha = "clip",
node_box = {
type = "fixed",
-- {left, bottom, front, right, top, back }
@ -250,6 +271,7 @@ minetest.register_node("ferns:fern_trunk_big", {
"ferns_fern_trunk_big_top.png",
"ferns_fern_trunk_big.png"
},
use_texture_alpha = "clip",
node_box = {
type = "fixed",
fixed = {-1/4, -1/2, -1/4, 1/4, 1/2, 1/4},
@ -296,7 +318,9 @@ minetest.register_abm({
interval = 1000,
chance = 4,
action = function(pos, node, _, _)
abstract_ferns.grow_giant_tree_fern({x = pos.x, y = pos.y-1, z = pos.z})
if abstract_ferns.can_grow_giant_tree_fern(pos) then
abstract_ferns.grow_giant_tree_fern({x = pos.x, y = pos.y-1, z = pos.z})
end
end
})