From f5802a3e40cccae431b7863f0a2e56bd6afe55e4 Mon Sep 17 00:00:00 2001 From: Yaman Qalieh Date: Thu, 2 Dec 2021 00:12:53 -0500 Subject: [PATCH] Pull some parent node vars for stairs and slabs Co-authored-by: tenplus1 --- mods/stairs/init.lua | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua index 89e0d24a..4ba854fa 100644 --- a/mods/stairs/init.lua +++ b/mods/stairs/init.lua @@ -57,13 +57,24 @@ local function warn_if_exists(nodename) end end +-- get node settings to use for stairs +local function get_node_vars(nodename) + + local def = minetest.registered_nodes[nodename] + + if def then + return def.light_source, def.use_texture_alpha, def.sunlight_propagates + end + + return nil, nil, nil +end -- Register stair -- Node will be called stairs:stair_ function stairs.register_stair(subname, recipeitem, groups, images, description, sounds, worldaligntex) - local src_def = minetest.registered_nodes[recipeitem] + local light_source, texture_alpha, sunlight = get_node_vars(recipeitem) -- Set backface culling and world-aligned textures local stair_images = {} @@ -93,7 +104,9 @@ function stairs.register_stair(subname, recipeitem, groups, images, description, description = description, drawtype = "nodebox", tiles = stair_images, - use_texture_alpha = src_def and src_def.use_texture_alpha, + use_texture_alpha = texture_alpha, + sunlight_propagates = sunlight, + light_source = light_source, paramtype = "light", paramtype2 = "facedir", is_ground_content = false, @@ -165,7 +178,7 @@ end function stairs.register_slab(subname, recipeitem, groups, images, description, sounds, worldaligntex) - local src_def = minetest.registered_nodes[recipeitem] + local light_source, texture_alpha, sunlight = get_node_vars(recipeitem) -- Set world-aligned textures local slab_images = {} @@ -191,7 +204,9 @@ function stairs.register_slab(subname, recipeitem, groups, images, description, description = description, drawtype = "nodebox", tiles = slab_images, - use_texture_alpha = src_def and src_def.use_texture_alpha, + use_texture_alpha = texture_alpha, + sunlight_propagates = sunlight, + light_source = light_source, paramtype = "light", paramtype2 = "facedir", is_ground_content = false, @@ -303,7 +318,7 @@ end function stairs.register_stair_inner(subname, recipeitem, groups, images, description, sounds, worldaligntex, full_description) - local src_def = minetest.registered_nodes[recipeitem] + local light_source, texture_alpha, sunlight = get_node_vars(recipeitem) -- Set backface culling and world-aligned textures local stair_images = {} @@ -338,7 +353,9 @@ function stairs.register_stair_inner(subname, recipeitem, groups, images, description = description, drawtype = "nodebox", tiles = stair_images, - use_texture_alpha = src_def and src_def.use_texture_alpha, + use_texture_alpha = texture_alpha, + sunlight_propagates = sunlight, + light_source = light_source, paramtype = "light", paramtype2 = "facedir", is_ground_content = false, @@ -393,7 +410,7 @@ end function stairs.register_stair_outer(subname, recipeitem, groups, images, description, sounds, worldaligntex, full_description) - local src_def = minetest.registered_nodes[recipeitem] + local light_source, texture_alpha, sunlight = get_node_vars(recipeitem) -- Set backface culling and world-aligned textures local stair_images = {} @@ -428,7 +445,9 @@ function stairs.register_stair_outer(subname, recipeitem, groups, images, description = description, drawtype = "nodebox", tiles = stair_images, - use_texture_alpha = src_def and src_def.use_texture_alpha, + use_texture_alpha = texture_alpha, + sunlight_propagates = sunlight, + light_source = light_source, paramtype = "light", paramtype2 = "facedir", is_ground_content = false,