From 25250e6eea257b699f7c1edc4a508477b62ada10 Mon Sep 17 00:00:00 2001 From: flux Date: Thu, 3 Oct 2019 18:13:57 +0000 Subject: [PATCH] add optional fences and gates --- default_settings.txt | 8 ++++++-- node_defs.lua | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/default_settings.txt b/default_settings.txt index 3b7ce86..a0fae22 100644 --- a/default_settings.txt +++ b/default_settings.txt @@ -25,12 +25,16 @@ moretrees.enable_beech = false moretrees.spawn_saplings = true -- Set this to true to allow defining stairs/slabs/etc. If Moreblocks is --- installed, this will use that mod's Stairs Plus component. Otherwise, it +-- installed, this will use that mod's Stairs Plus component. Otherwise, it -- will use the default stairs mod in minetest_game, if present moretrees.enable_stairs = true --- Set this to true if you want the plantlike drawtype for leaves, which +-- If this variable is set to true, register fences for moretrees wood + +moretrees.enable_fences = false + +-- Set this to true if you want the plantlike drawtype for leaves, which -- improves some peoples' framerates without resorting to making leaf nodes opaque. -- Affects default leaves and default jungle leaves also. diff --git a/node_defs.lua b/node_defs.lua index d2c246f..9fb4225 100644 --- a/node_defs.lua +++ b/node_defs.lua @@ -209,6 +209,41 @@ for i in ipairs(moretrees.treelist) do end end + + if moretrees.enable_fences then + local planks_name = "moretrees:" .. treename .. "_planks" + local planks_tile = "moretrees_" .. treename .. "_wood.png" + default.register_fence("moretrees:" .. treename .. "_fence", { + description = S(treedesc.." Fence"), + texture = planks_tile, + inventory_image = "default_fence_overlay.png^" .. planks_tile .. + "^default_fence_overlay.png^[makealpha:255,126,126", + wield_image = "default_fence_overlay.png^" .. planks_tile .. + "^default_fence_overlay.png^[makealpha:255,126,126", + material = planks_name, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = default.node_sound_wood_defaults() + }) + default.register_fence_rail("moretrees:" .. treename .. "_fence_rail", { + description = S(treedesc.." Fence Rail"), + texture = planks_tile, + inventory_image = "default_fence_rail_overlay.png^" .. planks_tile .. + "^default_fence_rail_overlay.png^[makealpha:255,126,126", + wield_image = "default_fence_rail_overlay.png^" .. planks_tile .. + "^default_fence_rail_overlay.png^[makealpha:255,126,126", + material = planks_name, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = default.node_sound_wood_defaults() + }) + if minetest.global_exists("doors") then + doors.register_fencegate("moretrees:" .. treename .. "_gate", { + description = S(treedesc .. " Fence Gate"), + texture = planks_tile, + material = planks_name, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2} + }) + end + end end minetest.register_node("moretrees:"..treename.."_sapling_ongen", {