diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua index bc436fc5..ecbe9d12 100644 --- a/mods/default/crafting.lua +++ b/mods/default/crafting.lua @@ -300,15 +300,6 @@ minetest.register_craft({ } }) -minetest.register_craft({ - output = "default:mese_post_light 3", - recipe = { - {"", "default:glass", ""}, - {"default:mese_crystal", "default:mese_crystal", "default:mese_crystal"}, - {"", "group:wood", ""}, - } -}) - minetest.register_craft({ output = "default:obsidian", recipe = { diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 3dd7a008..3a4f8fc9 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -421,6 +421,51 @@ function default.register_fence_rail(name, def) minetest.register_node(name, def) end +-- +-- Mese post registration helper +-- + +function default.register_mesepost(name, def) + minetest.register_craft({ + output = name .. " 4", + recipe = { + {'', 'default:glass', ''}, + {'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'}, + {' ', def.material, ''}, + } + }) + + local post_texture = def.texture .. "^default_mese_post_light_side.png^[makealpha:0,0,0" + local post_texture_dark = def.texture .. "^default_mese_post_light_side_dark.png^[makealpha:0,0,0" + -- Allow almost everything to be overridden + local default_fields = { + wield_image = post_texture, + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = { + {-2 / 16, -8 / 16, -2 / 16, 2 / 16, 8 / 16, 2 / 16}, + }, + }, + paramtype = "light", + tiles = {def.texture, def.texture, post_texture_dark, post_texture_dark, post_texture, post_texture}, + light_source = default.LIGHT_MAX, + sunlight_propagates = true, + is_ground_content = false, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + } + for k, v in pairs(default_fields) do + if def[k] == nil then + def[k] = v + end + end + + def.texture = nil + def.material = nil + + minetest.register_node(name, def) +end -- -- Leafdecay diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index d2a29151..4b6fb509 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -221,6 +221,10 @@ default:brick default:meselamp default:mese_post_light +default:mese_post_light_acacia_wood +default:mese_post_light_junglewood +default:mese_post_light_pine_wood +default:mese_post_light_aspen_wood Misc ---- @@ -2836,25 +2840,34 @@ minetest.register_node("default:meselamp", { light_source = default.LIGHT_MAX, }) -minetest.register_node("default:mese_post_light", { - description = S("Mese Post Light"), - tiles = {"default_mese_post_light_top.png", "default_mese_post_light_top.png", - "default_mese_post_light_side_dark.png", "default_mese_post_light_side_dark.png", - "default_mese_post_light_side.png", "default_mese_post_light_side.png"}, - wield_image = "default_mese_post_light_side.png", - drawtype = "nodebox", - node_box = { - type = "fixed", - fixed = { - {-2 / 16, -8 / 16, -2 / 16, 2 / 16, 8 / 16, 2 / 16}, - }, - }, - paramtype = "light", - light_source = default.LIGHT_MAX, - sunlight_propagates = true, - is_ground_content = false, - groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, - sounds = default.node_sound_wood_defaults(), +default.register_mesepost("default:mese_post_light", { + description = S("Apple Wood Mese Post Light"), + texture = "default_fence_wood.png", + material = "default:wood", +}) + +default.register_mesepost("default:mese_post_light_acacia", { + description = S("Acacia Wood Mese Post Light"), + texture = "default_fence_acacia_wood.png", + material = "default:acacia_wood", +}) + +default.register_mesepost("default:mese_post_light_junglewood", { + description = S("Jungle Wood Mese Post Light"), + texture = "default_fence_junglewood.png", + material = "default:junglewood", +}) + +default.register_mesepost("default:mese_post_light_pine_wood", { + description = S("Pine Wood Mese Post Light"), + texture = "default_fence_pine_wood.png", + material = "default:pine_wood", +}) + +default.register_mesepost("default:mese_post_light_aspen_wood", { + description = S("Aspen Wood Mese Post Light"), + texture = "default_fence_aspen_wood.png", + material = "default:aspen_wood", }) -- diff --git a/mods/default/textures/default_mese_post_light_side.png b/mods/default/textures/default_mese_post_light_side.png index c23b551a..a94e8b1b 100644 Binary files a/mods/default/textures/default_mese_post_light_side.png and b/mods/default/textures/default_mese_post_light_side.png differ diff --git a/mods/default/textures/default_mese_post_light_side_dark.png b/mods/default/textures/default_mese_post_light_side_dark.png index c4fc7cea..90983145 100644 Binary files a/mods/default/textures/default_mese_post_light_side_dark.png and b/mods/default/textures/default_mese_post_light_side_dark.png differ diff --git a/mods/default/textures/default_mese_post_light_top.png b/mods/default/textures/default_mese_post_light_top.png deleted file mode 100644 index 365c1a78..00000000 Binary files a/mods/default/textures/default_mese_post_light_top.png and /dev/null differ