mirror of
https://github.com/minetest-mods/moreblocks.git
synced 2025-06-28 06:12:05 +02:00
add a few new shapes to the table saw: (#67)
* 1/16 slab, L-shaped (two sides) * 1/16 slab, corner-shaped (three sides) * 1/16 slab, U-shaped (three sides)
This commit is contained in:
committed by
Hugo Locurcio
parent
6f033c1695
commit
0569ff9683
@ -28,6 +28,20 @@ local slabs_defs = {
|
||||
["_2"] = 2,
|
||||
["_14"] = 14,
|
||||
["_15"] = 15,
|
||||
["_two_sides"] = {
|
||||
{ -0.5, -0.5, -0.5, 0.5, -7/16, 7/16 },
|
||||
{ -0.5, -0.5, 7/16, 0.5, 0.5, 0.5 }
|
||||
},
|
||||
["_three_sides"] = {
|
||||
{ -7/16, -0.5, -0.5, 0.5, -7/16, 7/16 },
|
||||
{ -7/16, -0.5, 7/16, 0.5, 0.5, 0.5 },
|
||||
{ -0.5, -0.5, -0.5, -7/16, 0.5, 0.5 }
|
||||
},
|
||||
["_three_sides_u"] = {
|
||||
{ -0.5, -0.5, -0.5, 0.5, 0.5, -7/16 },
|
||||
{ -0.5, -0.5, -7/16, 0.5, -7/16, 7/16 },
|
||||
{ -0.5, -0.5, 7/16, 0.5, 0.5, 0.5 }
|
||||
}
|
||||
}
|
||||
|
||||
function stairsplus:register_slab_alias(modname_old, subname_old, modname_new, subname_new)
|
||||
@ -47,21 +61,36 @@ end
|
||||
function stairsplus:register_slab(modname, subname, recipeitem, fields)
|
||||
local defs = stairsplus.copytable(slabs_defs)
|
||||
local desc_base = S("%s Slab"):format(fields.description)
|
||||
for alternate, num in pairs(defs) do
|
||||
local def = {
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, (num/16)-0.5, 0.5},
|
||||
for alternate, shape in pairs(defs) do
|
||||
|
||||
local def = {}
|
||||
|
||||
if type(shape) ~= "table" then
|
||||
def = {
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -0.5, -0.5, 0.5, (shape/16)-0.5, 0.5},
|
||||
},
|
||||
description = ("%s (%d/16)"):format(desc_base, shape)
|
||||
}
|
||||
else
|
||||
def = {
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = shape,
|
||||
},
|
||||
description = desc_base
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
for k, v in pairs(fields) do
|
||||
def[k] = v
|
||||
end
|
||||
|
||||
def.drawtype = "nodebox"
|
||||
def.paramtype = "light"
|
||||
def.paramtype2 = def.paramtype2 or "facedir"
|
||||
def.on_place = minetest.rotate_node
|
||||
def.description = ("%s (%d/16)"):format(desc_base, num)
|
||||
def.groups = stairsplus:prepare_groups(fields.groups)
|
||||
if fields.drop and not (type(fields.drop) == "table") then
|
||||
def.drop = modname.. ":slab_" .. fields.drop .. alternate
|
||||
|
Reference in New Issue
Block a user