Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Convert fences to NDT_CONNECTED.
This changes the drawtype of fences to NDT_CONNECTED nodebox drawtype.

These nodes are drawn by the client with the needed connections on
the fly as the scene is drawn. There is no logic needed by mods to
modify the nodes.

These fences connect to (1) other fences, (2) planks and (3) tree
trunks, but nothing else. They do not connect to stone, dirt, wool,
etc. This is done by the "connects_to" parameter, which takes groups
and node names.

Due to the way textures are wrapped, we can make these nodes look a
lot better by giving them a special tile.

This change requires minetest/minetest#3503.
  • Loading branch information
sofar authored and paramat committed Mar 13, 2016
1 parent 676822d commit d979293
Show file tree
Hide file tree
Showing 7 changed files with 22 additions and 11 deletions.
23 changes: 17 additions & 6 deletions mods/default/functions.lua
Expand Up @@ -213,16 +213,27 @@ function default.register_fence(name, def)
-- Allow almost everything to be overridden
local default_fields = {
paramtype = "light",
drawtype = "fencelike",
drawtype = "nodebox",
node_box = {
type = "connected",
fixed = {{-1/8, -1/2, -1/8, 1/8, 1/2, 1/8}},
-- connect_top =
-- connect_bottom =
connect_front = {{-1/16,3/16,-1/2,1/16,5/16,-1/8},
{-1/16,-5/16,-1/2,1/16,-3/16,-1/8}},
connect_left = {{-1/2,3/16,-1/16,-1/8,5/16,1/16},
{-1/2,-5/16,-1/16,-1/8,-3/16,1/16}},
connect_back = {{-1/16,3/16,1/8,1/16,5/16,1/2},
{-1/16,-5/16,1/8,1/16,-3/16,1/2}},
connect_right = {{1/8,3/16,-1/16,1/2,5/16,1/16},
{1/8,-5/16,-1/16,1/2,-3/16,1/16}},
},
connects_to = {"group:fence", "group:wood", "group:tree"},
inventory_image = fence_texture,
wield_image = fence_texture,
tiles = { def.texture },
tiles = {def.texture},
sunlight_propagates = true,
is_ground_content = false,
selection_box = {
type = "fixed",
fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7},
},
groups = {},
}
for k, v in pairs(default_fields) do
Expand Down
10 changes: 5 additions & 5 deletions mods/default/nodes.lua
Expand Up @@ -1713,39 +1713,39 @@ minetest.register_node("default:ladder_steel", {
default.register_fence("default:fence_wood", {
description = "Wooden Fence",
texture = "default_wood.png",
texture = "default_fence_wood.png",
material = "default:wood",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = default.node_sound_wood_defaults()
})
default.register_fence("default:fence_acacia_wood", {
description = "Acacia Fence",
texture = "default_acacia_wood.png",
texture = "default_fence_acacia_wood.png",
material = "default:acacia_wood",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = default.node_sound_wood_defaults()
})
default.register_fence("default:fence_junglewood", {
description = "Junglewood Fence",
texture = "default_junglewood.png",
texture = "default_fence_junglewood.png",
material = "default:junglewood",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = default.node_sound_wood_defaults()
})
default.register_fence("default:fence_pine_wood", {
description = "Pine Fence",
texture = "default_pine_wood.png",
texture = "default_fence_pine_wood.png",
material = "default:pine_wood",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = default.node_sound_wood_defaults()
})
default.register_fence("default:fence_aspen_wood", {
description = "Aspen Fence",
texture = "default_aspen_wood.png",
texture = "default_fence_aspen_wood.png",
material = "default:aspen_wood",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = default.node_sound_wood_defaults()
Expand Down
Binary file added mods/default/textures/default_fence_acacia_wood.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added mods/default/textures/default_fence_aspen_wood.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added mods/default/textures/default_fence_junglewood.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added mods/default/textures/default_fence_pine_wood.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added mods/default/textures/default_fence_wood.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit d979293

Please sign in to comment.