Fininshed Mod

master
DonBatman 2016-03-16 05:24:27 -07:00
parent 24a24d3d7f
commit 9df41f1ce9
9 changed files with 294 additions and 49 deletions

8
README.md Normal file
View File

@ -0,0 +1,8 @@
myfences
=========
A Minetest Mod that adds nice fences. There are 4 kinds with 4 colors for each.
License of code: WTFPL

1
description.txt Normal file
View File

@ -0,0 +1 @@
myfences adds nice looking fences to Minetest

View File

@ -1,5 +1,5 @@
local fences = { -- name, desc, item, img
{"wood", "Wood", "group:wood", ""},
{"wood", "Wood", "group:wood", ""},
{"red_wood", "Wood w Red Stain", "group:wood", "^myfences_red.png"},
{"white_wood", "Wood w White Stain", "group:wood", "^myfences_white.png"},
{"green_wood", "Wood w Green Stain", "group:wood", "^myfences_green.png"},
@ -29,12 +29,12 @@ minetest.register_node("myfences:fence_garden_"..name, {
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.1875, -0.375, 0.5, 0.4375}, -- NodeBox1
{0.375, -0.5, 0.1875, 0.5, 0.5, 0.4375}, -- NodeBox8
{-0.5, -0.4375, 0.4375, 0.5, -0.25, 0.5}, -- NodeBox9
{-0.5, -0.1875, 0.4375, 0.5, 0, 0.5}, -- NodeBox10
{-0.5, 0.0625, 0.4375, 0.5, 0.25, 0.5}, -- NodeBox11
{-0.5, 0.3125, 0.4375, 0.5, 0.5, 0.5}, -- NodeBox12
{-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 = {
@ -46,4 +46,47 @@ minetest.register_node("myfences:fence_garden_"..name, {
groups = {choppy = 2, flammable = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("myfences:fence_garden_"..name.."_corner", {
description = desc.." Garden Fence Corner",
drawtype = "nodebox",
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,
},
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.375, 0.4375, 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(),
})
end

View File

@ -2,3 +2,4 @@
dofile(minetest.get_modpath("myfences").."/picket.lua")
dofile(minetest.get_modpath("myfences").."/privacy.lua")
dofile(minetest.get_modpath("myfences").."/garden.lua")
dofile(minetest.get_modpath("myfences").."/post.lua")

1
mod.conf Normal file
View File

@ -0,0 +1 @@
name = myfences

View File

@ -1,8 +1,8 @@
local fences = { -- name, desc, item, img
{"wood", "Wood", "group:wood", ""},
{"red_wood", "Wood w Red Stain", "group:wood", "^myfences_red.png"},
{"white_wood", "Wood w White Stain", "group:wood", "^myfences_white.png"},
{"green_wood", "Wood w Green Stain", "group:wood", "^myfences_green.png"},
{"red_wood", "Wood w Red Stain", "group:wood", "^myfences_red.png"},
{"white_wood", "Wood w White Stain", "group:wood", "^myfences_white.png"},
{"green_wood", "Wood w Green Stain", "group:wood", "^myfences_green.png"},
}
for i in ipairs(fences) do
@ -29,22 +29,14 @@ minetest.register_node("myfences:fence_picketb_"..name, {
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.25, -0.4375, 0.1875, 0.4375}, -- NodeBox1
{0.4375, -0.5, 0.25, 0.5, 0.1875, 0.4375}, -- NodeBox8
{-0.2187, -0.5, 0.4375, -0.0313, 0.375, 0.5}, -- NodeBox9
{0.0312, -0.5, 0.4375, 0.2187, 0.375, 0.5}, -- NodeBox10
{0.2812, -0.5, 0.4375, 0.4687, 0.375, 0.5}, -- NodeBox11
{-0.4687, -0.5, 0.4375, -0.2812, 0.375, 0.5}, -- NodeBox12
-- {-0.5, 0.125, 0.25, 0.5, 0.1875, 0.4375}, -- NodeBox13
-- {-0.5, -0.375, 0.25, 0.5, -0.3125, 0.4375}, -- NodeBox14
-- {-0.4375, 0.375, 0.4375, -0.3125, 0.4375, 0.5}, -- NodeBox15
-- {-0.1875, 0.375, 0.4375, -0.0625, 0.4375, 0.5}, -- NodeBox16
-- {0.0625, 0.375, 0.4375, 0.1875, 0.4375, 0.5}, -- NodeBox17
-- {0.3125, 0.375, 0.4375, 0.4375, 0.4375, 0.5}, -- NodeBox18
-- {-0.4087, 0.4375, 0.4375, -0.3437, 0.5, 0.5}, -- NodeBox19
-- {-0.1562, 0.4375, 0.4375, -0.0937, 0.5, 0.5}, -- NodeBox20
-- {0.0948, 0.4375, 0.4375, 0.1563, 0.5, 0.5}, -- NodeBox21
-- {0.3448, 0.4375, 0.4375, 0.4063, 0.5, 0.5}, -- NodeBox22
{-0.5, -0.5, 0.25, -0.4375, 0.1875, 0.4375},
{0.4375, -0.5, 0.25, 0.5, 0.1875, 0.4375},
{-0.2187, -0.5, 0.4375, -0.0313, 0.375, 0.5},
{0.0312, -0.5, 0.4375, 0.2187, 0.375, 0.5},
{0.2812, -0.5, 0.4375, 0.4687, 0.375, 0.5},
{-0.4687, -0.5, 0.4375, -0.2812, 0.375, 0.5},
{-0.5, 0.125, 0.25, 0.5, 0.1875, 0.4375},
{-0.5, -0.375, 0.25, 0.5, -0.3125, 0.4375},
}
},
selection_box = {
@ -75,22 +67,22 @@ minetest.register_node("myfences:fence_picket_"..name, {
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.25, -0.4375, 0.1875, 0.4375}, -- NodeBox1
{0.4375, -0.5, 0.25, 0.5, 0.1875, 0.4375}, -- NodeBox8
{-0.2187, -0.5, 0.4375, -0.0313, 0.375, 0.5}, -- NodeBox9
{0.0312, -0.5, 0.4375, 0.2187, 0.375, 0.5}, -- NodeBox10
{0.2812, -0.5, 0.4375, 0.4687, 0.375, 0.5}, -- NodeBox11
{-0.4687, -0.5, 0.4375, -0.2812, 0.375, 0.5}, -- NodeBox12
{-0.5, 0.125, 0.25, 0.5, 0.1875, 0.4375}, -- NodeBox13
{-0.5, -0.375, 0.25, 0.5, -0.3125, 0.4375}, -- NodeBox14
{-0.4375, 0.375, 0.4375, -0.3125, 0.4375, 0.5}, -- NodeBox15
{-0.1875, 0.375, 0.4375, -0.0625, 0.4375, 0.5}, -- NodeBox16
{0.0625, 0.375, 0.4375, 0.1875, 0.4375, 0.5}, -- NodeBox17
{0.3125, 0.375, 0.4375, 0.4375, 0.4375, 0.5}, -- NodeBox18
{-0.4087, 0.4375, 0.4375, -0.3437, 0.5, 0.5}, -- NodeBox19
{-0.1562, 0.4375, 0.4375, -0.0937, 0.5, 0.5}, -- NodeBox20
{0.0948, 0.4375, 0.4375, 0.1563, 0.5, 0.5}, -- NodeBox21
{0.3448, 0.4375, 0.4375, 0.4063, 0.5, 0.5}, -- NodeBox22
{-0.5, -0.5, 0.25, -0.4375, 0.1875, 0.4375},
{0.4375, -0.5, 0.25, 0.5, 0.1875, 0.4375},
{-0.2187, -0.5, 0.4375, -0.0313, 0.375, 0.5},
{0.0312, -0.5, 0.4375, 0.2187, 0.375, 0.5},
{0.2812, -0.5, 0.4375, 0.4687, 0.375, 0.5},
{-0.4687, -0.5, 0.4375, -0.2812, 0.375, 0.5},
{-0.5, 0.125, 0.25, 0.5, 0.1875, 0.4375},
{-0.5, -0.375, 0.25, 0.5, -0.3125, 0.4375},
{-0.4375, 0.375, 0.4375, -0.3125, 0.4375, 0.5},
{-0.1875, 0.375, 0.4375, -0.0625, 0.4375, 0.5},
{0.0625, 0.375, 0.4375, 0.1875, 0.4375, 0.5},
{0.3125, 0.375, 0.4375, 0.4375, 0.4375, 0.5},
{-0.4087, 0.4375, 0.4375, -0.3437, 0.5, 0.5},
{-0.1562, 0.4375, 0.4375, -0.0937, 0.5, 0.5},
{0.0948, 0.4375, 0.4375, 0.1563, 0.5, 0.5},
{0.3448, 0.4375, 0.4375, 0.4063, 0.5, 0.5},
}
},
selection_box = {
@ -104,5 +96,114 @@ minetest.register_node("myfences:fence_picket_"..name, {
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("myfences:fence_picket_"..name.."_corner", {
description = desc.." Picket Fence Corner",
drawtype = "nodebox",
tiles = {
"myfences_wood.png"..stain,
"myfences_wood.png"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propogates = true,
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.25, -0.4375, 0.1875, 0.4375},
{0.4375, -0.5, 0.25, 0.5, 0.1875, 0.4375},
{-0.2187, -0.5, 0.4375, -0.0313, 0.375, 0.5},
{0.0312, -0.5, 0.4375, 0.2187, 0.375, 0.5},
{0.2812, -0.5, 0.4375, 0.4687, 0.375, 0.5},
{-0.4687, -0.5, 0.4375, -0.2812, 0.375, 0.5},
{-0.5, 0.125, 0.25, 0.5, 0.1875, 0.4375},
{-0.5, -0.375, 0.25, 0.5, -0.3125, 0.4375},
{-0.4375, 0.375, 0.4375, -0.3125, 0.4375, 0.5},
{-0.1875, 0.375, 0.4375, -0.0625, 0.4375, 0.5},
{0.0625, 0.375, 0.4375, 0.1875, 0.4375, 0.5},
{0.3125, 0.375, 0.4375, 0.4375, 0.4375, 0.5},
{-0.4087, 0.4375, 0.4375, -0.3437, 0.5, 0.5},
{-0.1562, 0.4375, 0.4375, -0.0937, 0.5, 0.5},
{0.0948, 0.4375, 0.4375, 0.1563, 0.5, 0.5},
{0.3448, 0.4375, 0.4375, 0.4063, 0.5, 0.5},
{0.25, -0.5, 0.4375, 0.4375, 0.1875, 0.5},
{0.25, -0.5, -0.5, 0.4375, 0.1875, -0.4375},
{0.4375, -0.5, 0.0313, 0.5, 0.375, 0.2187},
{0.4375, -0.5, -0.2187, 0.5, 0.375, -0.0312},
{0.4375, -0.5, -0.4687, 0.5, 0.375, -0.2812},
{0.4375, -0.5, 0.2812, 0.5, 0.375, 0.4687},
{0.25, 0.125, -0.5, 0.4375, 0.1875, 0.5},
{0.25, -0.375, -0.5, 0.4375, -0.3125, 0.5},
{0.4375, 0.375, 0.3125, 0.5, 0.4375, 0.4375},
{0.4375, 0.375, 0.0625, 0.5, 0.4375, 0.1875},
{0.4375, 0.375, -0.1875, 0.5, 0.4375, -0.0625},
{0.4375, 0.375, -0.4375, 0.5, 0.4375, -0.3125},
{0.4375, 0.4375, 0.3437, 0.5, 0.5, 0.4087},
{0.4375, 0.4375, 0.0937, 0.5, 0.5, 0.1562},
{0.4375, 0.4375, -0.1563, 0.5, 0.5, -0.0948},
{0.4375, 0.4375, -0.4063, 0.5, 0.5, -0.3448},
}
},
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:fence_picketb_"..name.."_corner", {
description = desc.." Picket Fence Corner",
drawtype = "nodebox",
tiles = {
"myfences_wood.png"..stain,
"myfences_wood.png"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propogates = true,
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.25, -0.4375, 0.1875, 0.4375},
{0.4375, -0.5, 0.25, 0.5, 0.1875, 0.4375},
{-0.2187, -0.5, 0.4375, -0.0313, 0.375, 0.5},
{0.0312, -0.5, 0.4375, 0.2187, 0.375, 0.5},
{0.2812, -0.5, 0.4375, 0.4687, 0.375, 0.5},
{-0.4687, -0.5, 0.4375, -0.2812, 0.375, 0.5},
{-0.5, 0.125, 0.25, 0.5, 0.1875, 0.4375},
{-0.5, -0.375, 0.25, 0.5, -0.3125, 0.4375},
{0.25, -0.5, 0.4375, 0.4375, 0.1875, 0.5},
{0.25, -0.5, -0.5, 0.4375, 0.1875, -0.4375},
{0.4375, -0.5, 0.0313, 0.5, 0.375, 0.2187},
{0.4375, -0.5, -0.2187, 0.5, 0.375, -0.0312},
{0.4375, -0.5, -0.4687, 0.5, 0.375, -0.2812},
{0.4375, -0.5, 0.2812, 0.5, 0.375, 0.4687},
{0.25, 0.125, -0.5, 0.4375, 0.1875, 0.5},
{0.25, -0.375, -0.5, 0.4375, -0.3125, 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 = {cracky = 2},
sounds = default.node_sound_stone_defaults(),
})
end

45
post.lua Normal file
View File

@ -0,0 +1,45 @@
local fences = { -- name, desc, item, img
{"wood", "Wood", "group:wood", ""},
{"red_wood", "Wood w Red Stain", "group:wood", "^myfences_red.png"},
{"white_wood", "Wood w White Stain", "group:wood", "^myfences_white.png"},
{"green_wood", "Wood w Green Stain", "group:wood", "^myfences_green.png"},
}
for i in ipairs(fences) do
local name = fences[i][1]
local desc = fences[i][2]
local item = fences[i][3]
local stain = fences[i][4]
minetest.register_node("myfences:coorner_post_"..name, {
description = desc.." Post",
drawtype = "nodebox",
tiles = {
"myfences_wood.png"..stain,
"myfences_wood.png"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
},
paramtype = "light",
paramtype2 = "facedir",
sunlight_propogates = true,
node_box = {
type = "fixed",
fixed = {
{0.1875, -0.5, 0.1875, 0.5, 0.5, 0.5},
}
},
selection_box = {
type = "fixed",
fixed = {
{0.1875, -0.5, 0.1875, 0.5, 0.5, 0.5},
}
},
groups = {choppy = 2, flammable = 1},
sounds = default.node_sound_stone_defaults(),
})
end

View File

@ -29,13 +29,13 @@ minetest.register_node("myfences:fence_privacy_"..name, {
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, 0.1875, -0.375, 0.5, 0.4375}, -- NodeBox1
{0.375, -0.5, 0.1875, 0.5, 0.5, 0.4375}, -- NodeBox2
{-0.375, -0.375, 0.3125, 0.375, -0.1875, 0.4375}, -- NodeBox3
{-0.375, 0.1875, 0.3125, 0.375, 0.375, 0.4375}, -- NodeBox4
{-0.4896, -0.5, 0.4375, -0.1772, 0.5, 0.5}, -- NodeBox5
{-0.1458, -0.5, 0.4375, 0.1458, 0.5, 0.5}, -- NodeBox6
{0.1772, -0.5, 0.4375, 0.4896, 0.5, 0.5}, -- NodeBox7
{-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.375, -0.375, 0.3125, 0.375, -0.1875, 0.4375},
{-0.375, 0.1875, 0.3125, 0.375, 0.375, 0.4375},
{-0.4896, -0.5, 0.4375, -0.1772, 0.5, 0.5},
{-0.1458, -0.5, 0.4375, 0.1458, 0.5, 0.5},
{0.1772, -0.5, 0.4375, 0.4896, 0.5, 0.5},
}
},
selection_box = {
@ -47,4 +47,49 @@ minetest.register_node("myfences:fence_privacy_"..name, {
groups = {choppy = 2, flammable = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("myfences:fence_privacy_"..name.."_corner", {
description = desc.." Privacy Fence Corner",
drawtype = "nodebox",
tiles = {
"myfences_wood.png"..stain,
"myfences_wood.png"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
"myfences_wood.png^[transformR90"..stain,
},
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.5, 0.1875, 0.4375, 0.5, 0.4375},
{-0.375, -0.375, 0.3125, 0.375, -0.1875, 0.4375},
{-0.375, 0.1875, 0.3125, 0.375, 0.375, 0.4375},
{-0.4896, -0.5, 0.4375, -0.1772, 0.5, 0.5},
{-0.1458, -0.5, 0.4375, 0.1458, 0.5, 0.5},
{0.1772, -0.5, 0.4375, 0.4896, 0.5, 0.5},
--{0.1875, -0.5, 0.375, 0.4375, 0.5, 0.5},
{0.1875, -0.5, -0.5, 0.4375, 0.5, -0.375},
{0.3125, -0.375, -0.375, 0.4375, -0.1875, 0.375},
{0.3125, 0.1875, -0.375, 0.4375, 0.375, 0.375},
{0.4375, -0.5, 0.1772, 0.5, 0.5, 0.4896},
{0.4375, -0.5, -0.1458, 0.5, 0.5, 0.1458},
{0.4375, -0.5, -0.4896, 0.5, 0.5, -0.1772},
}
},
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(),
})
end

BIN
screenshot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 KiB