-
Notifications
You must be signed in to change notification settings - Fork 1
/
garden.lua
122 lines (114 loc) · 3.19 KB
/
garden.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
local node_garden = {
description = "Garden Fence",
drawtype = "nodebox",
tiles = {
"myfences_wood.png",
"myfences_wood.png",
"myfences_wood.png^[transformR90",
"myfences_wood.png^[transformR90",
"myfences_wood.png",
"myfences_wood.png",
},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propogates = true,
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.1875, -0.375, 0.5, 0.4375},
{0.375, -0.5, 0.1875, 0.5, 0.5, 0.4375},
{-0.5, -0.4375, 0.4375, 0.5, -0.25, 0.5},
{-0.5, -0.1875, 0.4375, 0.5, 0, 0.5},
{-0.5, 0.0625, 0.4375, 0.5, 0.25, 0.5},
{-0.5, 0.3125, 0.4375, 0.5, 0.5, 0.5},
}
},
selection_box = {
type = "fixed",
fixed = {
{-0.5,-0.5,0.25,0.5,0.5,0.5},
}
},
groups = {choppy = 2, flammable = 1},
sounds = default.node_sound_stone_defaults(),
}
minetest.register_node("myfences:garden", node_garden)
local node_garden_corner = {
description = "Garden Fence Corner",
drawtype = "nodebox",
tiles = {
"myfences_wood.png",
"myfences_wood.png",
"myfences_wood.png^[transformR90",
"myfences_wood.png^[transformR90",
"myfences_wood.png",
"myfences_wood.png",
},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propogates = true,
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.1875, -0.375, 0.5, 0.4375},
{0.1875, -0.4375, 0.1875, 0.4375, 0.5, 0.4375},
{-0.5, -0.4375, 0.4375, 0.5, -0.25, 0.5},
{-0.5, -0.1875, 0.4375, 0.5, 0, 0.5},
{-0.5, 0.0625, 0.4375, 0.5, 0.25, 0.5},
{-0.5, 0.3125, 0.4375, 0.5, 0.5, 0.5},
{0.1875, -0.5, -0.5, 0.4375, 0.5, -0.375},
{0.4375, -0.4375, -0.5, 0.5, -0.25, 0.5},
{0.4375, -0.1875, -0.5, 0.5, 0, 0.5},
{0.4375, 0.0625, -0.5, 0.5, 0.25, 0.5},
{0.4375, 0.3125, -0.5, 0.5, 0.5, 0.5},
}
},
selection_box = {
type = "fixed",
fixed = {
{-0.5,-0.5,0.25,0.5,0.5,0.5},
{0.25,-0.5,-0.5,0.5,0.5,0.5},
}
},
groups = {choppy = 2, flammable = 1},
sounds = default.node_sound_stone_defaults(),
}
minetest.register_node("myfences:garden_corner", node_garden_corner)
for _, entry in ipairs(myfences.colors) do
local color = entry[1]
local desc = entry[2]
local stain = "^(myfences_color.png^[colorize:#"..entry[3]..":255)"
local tiles = {
"myfences_wood.png"..stain,
"myfences_wood.png"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png"..stain,
"myfences_wood.png"..stain,
}
local node = table.copy(node_garden)
node.description = desc.." Garden Fence"
node.tiles = tiles
node.drop = "myfences:garden"
node.groups.not_in_creative_inventory = 1
minetest.register_node("myfences:garden_"..color, node)
node = table.copy(node_garden_corner)
node.description = desc.." Garden Fence Corner"
node.tiles = tiles
node.drop = "myfences:garden_corner"
node.groups.not_in_creative_inventory = 1
minetest.register_node("myfences:garden_corner_"..color, node)
end
minetest.register_craft({
output = "myfences:garden",
recipe = {
{"","",""},
{"myfences:board","myfences:board","myfences:board"},
{"default:wood","myfences:board","default:wood"},
}
})
minetest.register_craft({
type = "shapeless",
output = "myfences:fence_garden_corner",
recipe = {"myfences:garden","myfences:garden"},
})