Minify stairs mod, use worldalign
parent
9046210545
commit
81efc3b2de
|
@ -14,16 +14,6 @@ local S = minetest.get_translator("stairs")
|
|||
local T = S
|
||||
|
||||
|
||||
-- Register aliases for new pine node names
|
||||
|
||||
minetest.register_alias("stairs:stair_pinewood", "stairs:stair_pine_wood")
|
||||
minetest.register_alias("stairs:slab_pinewood", "stairs:slab_pine_wood")
|
||||
|
||||
|
||||
-- Get setting for replace ABM
|
||||
|
||||
local replace = minetest.settings:get_bool("enable_stairs_replace_abm")
|
||||
|
||||
local function rotate_and_place(itemstack, placer, pointed_thing)
|
||||
local p0 = pointed_thing.under
|
||||
local p1 = pointed_thing.above
|
||||
|
@ -51,12 +41,6 @@ local function rotate_and_place(itemstack, placer, pointed_thing)
|
|||
return minetest.item_place(itemstack, placer, pointed_thing, param2)
|
||||
end
|
||||
|
||||
local function warn_if_exists(nodename)
|
||||
if minetest.registered_nodes[nodename] then
|
||||
minetest.log("warning", "Overwriting stairs node: " .. nodename)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
-- Register stair
|
||||
-- Node will be called stairs:stair_<subname>
|
||||
|
@ -88,7 +72,6 @@ function stairs.register_stair(subname, recipeitem, groups, images, description,
|
|||
end
|
||||
local new_groups = table.copy(groups)
|
||||
new_groups.stair = 1
|
||||
warn_if_exists("stairs:stair_" .. subname)
|
||||
minetest.register_node(":stairs:stair_" .. subname, {
|
||||
description = description,
|
||||
drawtype = "nodebox",
|
||||
|
@ -114,49 +97,6 @@ function stairs.register_stair(subname, recipeitem, groups, images, description,
|
|||
return rotate_and_place(itemstack, placer, pointed_thing)
|
||||
end,
|
||||
})
|
||||
|
||||
-- for replace ABM
|
||||
if replace then
|
||||
minetest.register_node(":stairs:stair_" .. subname .. "upside_down", {
|
||||
replace_name = "stairs:stair_" .. subname,
|
||||
groups = {slabs_replace = 1},
|
||||
})
|
||||
end
|
||||
|
||||
if recipeitem then
|
||||
-- Recipe matches appearence in inventory
|
||||
minetest.register_craft({
|
||||
output = "stairs:stair_" .. subname .. " 8",
|
||||
recipe = {
|
||||
{"", "", recipeitem},
|
||||
{"", recipeitem, recipeitem},
|
||||
{recipeitem, recipeitem, recipeitem},
|
||||
},
|
||||
})
|
||||
|
||||
-- Use stairs to craft full blocks again (1:1)
|
||||
minetest.register_craft({
|
||||
output = recipeitem .. " 3",
|
||||
recipe = {
|
||||
{"stairs:stair_" .. subname, "stairs:stair_" .. subname},
|
||||
{"stairs:stair_" .. subname, "stairs:stair_" .. subname},
|
||||
},
|
||||
})
|
||||
|
||||
-- Fuel
|
||||
local baseburntime = minetest.get_craft_result({
|
||||
method = "fuel",
|
||||
width = 1,
|
||||
items = {recipeitem}
|
||||
}).time
|
||||
if baseburntime > 0 then
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "stairs:stair_" .. subname,
|
||||
burntime = math.floor(baseburntime * 0.75),
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
@ -186,7 +126,6 @@ function stairs.register_slab(subname, recipeitem, groups, images, description,
|
|||
end
|
||||
local new_groups = table.copy(groups)
|
||||
new_groups.slab = 1
|
||||
warn_if_exists("stairs:slab_" .. subname)
|
||||
minetest.register_node(":stairs:slab_" .. subname, {
|
||||
description = description,
|
||||
drawtype = "nodebox",
|
||||
|
@ -233,68 +172,6 @@ function stairs.register_slab(subname, recipeitem, groups, images, description,
|
|||
end,
|
||||
})
|
||||
|
||||
-- for replace ABM
|
||||
if replace then
|
||||
minetest.register_node(":stairs:slab_" .. subname .. "upside_down", {
|
||||
replace_name = "stairs:slab_".. subname,
|
||||
groups = {slabs_replace = 1},
|
||||
})
|
||||
end
|
||||
|
||||
if recipeitem then
|
||||
minetest.register_craft({
|
||||
output = "stairs:slab_" .. subname .. " 6",
|
||||
recipe = {
|
||||
{recipeitem, recipeitem, recipeitem},
|
||||
},
|
||||
})
|
||||
|
||||
-- Use 2 slabs to craft a full block again (1:1)
|
||||
minetest.register_craft({
|
||||
output = recipeitem,
|
||||
recipe = {
|
||||
{"stairs:slab_" .. subname},
|
||||
{"stairs:slab_" .. subname},
|
||||
},
|
||||
})
|
||||
|
||||
-- Fuel
|
||||
local baseburntime = minetest.get_craft_result({
|
||||
method = "fuel",
|
||||
width = 1,
|
||||
items = {recipeitem}
|
||||
}).time
|
||||
if baseburntime > 0 then
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "stairs:slab_" .. subname,
|
||||
burntime = math.floor(baseburntime * 0.5),
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
-- Optionally replace old "upside_down" nodes with new param2 versions.
|
||||
-- Disabled by default.
|
||||
|
||||
if replace then
|
||||
minetest.register_abm({
|
||||
label = "Slab replace",
|
||||
nodenames = {"group:slabs_replace"},
|
||||
interval = 16,
|
||||
chance = 1,
|
||||
action = function(pos, node)
|
||||
node.name = minetest.registered_nodes[node.name].replace_name
|
||||
node.param2 = node.param2 + 20
|
||||
if node.param2 == 21 then
|
||||
node.param2 = 23
|
||||
elseif node.param2 == 23 then
|
||||
node.param2 = 21
|
||||
end
|
||||
minetest.set_node(pos, node)
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
||||
|
||||
|
@ -333,7 +210,6 @@ function stairs.register_stair_inner(subname, recipeitem, groups, images,
|
|||
else
|
||||
description = "Inner " .. description
|
||||
end
|
||||
warn_if_exists("stairs:stair_inner_" .. subname)
|
||||
minetest.register_node(":stairs:stair_inner_" .. subname, {
|
||||
description = description,
|
||||
drawtype = "nodebox",
|
||||
|
@ -361,30 +237,6 @@ function stairs.register_stair_inner(subname, recipeitem, groups, images,
|
|||
end,
|
||||
})
|
||||
|
||||
if recipeitem then
|
||||
minetest.register_craft({
|
||||
output = "stairs:stair_inner_" .. subname .. " 7",
|
||||
recipe = {
|
||||
{"", recipeitem, ""},
|
||||
{recipeitem, "", recipeitem},
|
||||
{recipeitem, recipeitem, recipeitem},
|
||||
},
|
||||
})
|
||||
|
||||
-- Fuel
|
||||
local baseburntime = minetest.get_craft_result({
|
||||
method = "fuel",
|
||||
width = 1,
|
||||
items = {recipeitem}
|
||||
}).time
|
||||
if baseburntime > 0 then
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "stairs:stair_inner_" .. subname,
|
||||
burntime = math.floor(baseburntime * 0.875),
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
@ -423,7 +275,6 @@ function stairs.register_stair_outer(subname, recipeitem, groups, images,
|
|||
else
|
||||
description = "Outer " .. description
|
||||
end
|
||||
warn_if_exists("stairs:stair_outer_" .. subname)
|
||||
minetest.register_node(":stairs:stair_outer_" .. subname, {
|
||||
description = description,
|
||||
drawtype = "nodebox",
|
||||
|
@ -450,29 +301,6 @@ function stairs.register_stair_outer(subname, recipeitem, groups, images,
|
|||
end,
|
||||
})
|
||||
|
||||
if recipeitem then
|
||||
minetest.register_craft({
|
||||
output = "stairs:stair_outer_" .. subname .. " 6",
|
||||
recipe = {
|
||||
{"", recipeitem, ""},
|
||||
{recipeitem, recipeitem, recipeitem},
|
||||
},
|
||||
})
|
||||
|
||||
-- Fuel
|
||||
local baseburntime = minetest.get_craft_result({
|
||||
method = "fuel",
|
||||
width = 1,
|
||||
items = {recipeitem}
|
||||
}).time
|
||||
if baseburntime > 0 then
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = "stairs:stair_outer_" .. subname,
|
||||
burntime = math.floor(baseburntime * 0.625),
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
@ -516,7 +344,7 @@ my_register_stair_and_slab(
|
|||
"Wooden Stair",
|
||||
"Wooden Slab",
|
||||
lzr_sounds.node_sound_wood_defaults(),
|
||||
false
|
||||
true
|
||||
)
|
||||
|
||||
-- Dummy calls to S() to allow translation scripts to detect the strings.
|
||||
|
|
Loading…
Reference in New Issue