aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--aliases.lua18
-rw-r--r--circular_saw.lua121
-rw-r--r--crafting.lua45
-rw-r--r--init.lua22
-rw-r--r--locale/fr.txt50
-rw-r--r--locale/template.txt70
-rw-r--r--stairsplus.lua43
-rw-r--r--stairsplus/microblocks.lua28
-rw-r--r--stairsplus/panels.lua28
-rw-r--r--stairsplus/slabs.lua32
-rw-r--r--stairsplus/stairs.lua101
-rw-r--r--textures/invisible.pngbin0 -> 151 bytes
12 files changed, 269 insertions, 289 deletions
diff --git a/aliases.lua b/aliases.lua
index 5df0a33..cabe2d9 100644
--- a/aliases.lua
+++ b/aliases.lua
@@ -186,3 +186,21 @@ minetest.register_alias("moreblocks:emptybookshelf", "moreblocks:empty_bookshelf
minetest.register_alias("moreblocks:junglestick", "moreblocks:jungle_stick")
minetest.register_alias("moreblocks:splitstonesquare","moreblocks:split_stone_tile")
minetest.register_alias("moreblocks:allfacestree","moreblocks:all_faces_tree")
+
+-- ABM for Horizontal_tree (fix facedir).
+
+minetest.register_abm({
+ nodenames = {"moreblocks:horizontal_tree","moreblocks:horizontal_jungle_tree"},
+ interval = 1,
+ chance = 1,
+ action = function(pos, node)
+ local convert_facedir={7,12,9,18}
+ if node.name=="moreblocks:horizontal_tree" then
+ node.name="default:tree"
+ else
+ node.name="default:jungletree"
+ end
+ minetest.set_node(pos, {name=node.name,param2=convert_facedir[node.param2+1]})
+ end,
+})
+
diff --git a/circular_saw.lua b/circular_saw.lua
index 85e456c..bc37b21 100644
--- a/circular_saw.lua
+++ b/circular_saw.lua
@@ -13,7 +13,7 @@ circular_saw = {};
circular_saw.known_stairs = {}
--- Register known moreblocks stairs
+-- Register known moreblocks stairs.
for i,v in ipairs({"default:wood", "default:stone", "default:cobble", "default:mossycobble", "default:brick", "default:sandstone",
"default:steelblock", "default:desert_stone", "default:glass", "default:tree", "default:jungletree", "default:stonebrick",
"default:obsidian", "default:obsidian_glass", "default:stone_bricks", "default:junglewood", "default:goldblock",
@@ -32,9 +32,9 @@ end
circular_saw.cost_in_microblocks = { 1, 1, 1, 1, 1, 1, 1, 2,
2, 3, 2, 4, 2, 4, 5, 6,
7, 1, 1, 2, 4, 6, 7, 8,
- 3, 4, 0, 0, 0, 0, 0, 0, };
+ 3, 1, 1, 2, 4, 0, 0, 0, };
--- anz: amount of input material in microblocks
+-- anz: amount of input material in microblocks.
circular_saw.get_stair_output_inv = function(modname, material, anz, max)
local max_offered = 99;
@@ -46,7 +46,7 @@ circular_saw.get_stair_output_inv = function(modname, material, anz, max)
end
- -- If there is nothing inside display empty inventory
+ -- If there is nothing inside display empty inventory.
if(anz < 1) then
return { "", "", "", "", "", "", "",
"", "", "", "", "", "", "",
@@ -84,6 +84,9 @@ circular_saw.get_stair_output_inv = function(modname, material, anz, max)
modname .. ":slab_" .. material .. "_15 " .. math.min(math.floor(anz/8), max_offered),
modname .. ":stair_" .. material .. "_half " .. math.min(math.floor(anz/3), max_offered),
+ modname .. ":stair_" .. material .. "_alt_1 " .. math.min(math.floor(anz/1), max_offered),
+ modname .. ":stair_" .. material .. "_alt_2 " .. math.min(math.floor(anz/1), max_offered),
+ modname .. ":stair_" .. material .. "_alt_4 " .. math.min(math.floor(anz/2), max_offered),
modname .. ":stair_" .. material .. "_alt " .. math.min(math.floor(anz/4), max_offered),
"",
@@ -91,7 +94,7 @@ circular_saw.get_stair_output_inv = function(modname, material, anz, max)
end
--- Reset empty circular_saw after last full block has been taken out (or the circular_saw has been placed the first tiem); note: max_offered is not reset
+-- Reset empty circular_saw after last full block has been taken out (or the circular_saw has been placed the first tiem); note: max_offered is not reset.
circular_saw.reset_circular_saw = function(pos)
local meta = minetest.env:get_meta(pos);
local inv = meta:get_inventory();
@@ -101,11 +104,11 @@ circular_saw.reset_circular_saw = function(pos)
inv:set_list("output", circular_saw.get_stair_output_inv("", "", 0, meta:get_string("max_offered")));
meta:set_int("anz", 0);
- meta:set_string("infotext", "Circular saw, empty (owned by " .. (meta:get_string("owner") or "") .. ")");
+ meta:set_string("infotext", S("Circular saw, empty (owned by %s)"):format((meta:get_string("owner") or "")));
end
--- Player has taken something out of the box or placed something inside; that amounts to count microblocks
+-- Player has taken something out of the box or placed something inside; that amounts to count microblocks.
circular_saw.update_inventory = function(pos, amount)
local meta = minetest.env:get_meta(pos);
local inv = meta:get_inventory();
@@ -122,10 +125,10 @@ circular_saw.update_inventory = function(pos, amount)
end
local stack = inv:get_stack("input", 1);
- -- At least one "normal" block is necessary to see what kind of stairs are requested
+ -- At least one "normal" block is necessary to see what kind of stairs are requested.
if(stack:is_empty()) then
- -- Any microblocks not taken out yet are now lost (covers material loss in the machine)
+ -- Any microblocks not taken out yet are now lost (covers material loss in the machine).
circular_saw.reset_circular_saw(pos);
return;
@@ -135,45 +138,45 @@ circular_saw.update_inventory = function(pos, amount)
local modname = liste[1];
local material = liste[2];
- -- Display as many full blocks as possible
+ -- Display as many full blocks as possible.
inv:set_list("input", { modname.. ":" .. material .. " " .. math.floor( (akt + amount) / 8) });
-- The stairnodes made of default nodes use moreblocks namespace, other mods keep own.
if(modname == "default") then modname = "moreblocks"; end
--print("circular_saw set to " ..modname.. " : " ..material.. " with " .. (akt+amount) .. " microblocks.");
- -- 0-7 microblocks may remain as a rest
+ -- 0-7 microblocks may remain as a rest.
inv:set_list("micro", { modname.. ":micro_" .. material .. "_bottom " .. ((akt + amount) % 8) });
- -- Display
+ -- Display.
inv:set_list("output", circular_saw.get_stair_output_inv(modname, material, (akt + amount), meta:get_string("max_offered")));
- -- Store how many microblocks are available
+ -- Store how many microblocks are available.
meta:set_int("anz", (akt+amount));
- meta:set_string("infotext", "Circular saw, working with " ..material.. " (owned by " .. (meta:get_string("owner") or "") .. ")");
+ meta:set_string("infotext", S("Circular saw, working with %s (owned by %s)"):format(material,(meta:get_string("owner") or "")));
end
--- The amount of items offered per shape can be configured
+-- The amount of items offered per shape can be configured.
circular_saw.on_receive_fields = function(pos, formname, fields, sender)
local meta = minetest.env:get_meta(pos);
if tonumber(fields.max_offered) and tonumber(fields.max_offered) > 0 and tonumber(fields.max_offered) < 99 then
meta:set_string("max_offered", fields.max_offered);
- circular_saw.update_inventory(pos, 0); -- update to show the correct number of items
+ circular_saw.update_inventory(pos, 0); -- Update to show the correct number of items.
end
end
--- Moving the inventory of the circular_saw around is not allowed because it is a fictional inventory
+-- Moving the inventory of the circular_saw around is not allowed because it is a fictional inventory.
circular_saw.allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
- -- Moving inventory around would be rather immpractical and make things more difficult to calculate
+ -- Moving inventory around would be rather immpractical and make things more difficult to calculate.
return 0;
end
--- Only input- and recycle-slot are intended as input slots
+-- Only input- and recycle-slot are intended as input slots.
circular_saw.allow_metadata_inventory_put = function(pos, listname, index, stack, player)
- -- The player is not allowed to put something in there
+ -- The player is not allowed to put something in there.
if(listname == "output" or listname == "micro") then
return 0;
end
@@ -181,12 +184,12 @@ circular_saw.allow_metadata_inventory_put = function(pos, listname, index, stack
local meta = minetest.env:get_meta(pos);
local inv = meta:get_inventory();
- -- Only alow those items that are offered in the output inventory to be recycled
+ -- Only alow those items that are offered in the output inventory to be recycled.
if(listname == "recycle" and not(inv:contains_item("output", stack:get_name()))) then
return 0;
end
- -- Only accept certain blocks as input which are known to be craftable into stairs
+ -- Only accept certain blocks as input which are known to be craftable into stairs.
if(listname == "input") then
for i,v in ipairs(circular_saw.known_stairs) do
@@ -203,16 +206,16 @@ circular_saw.allow_metadata_inventory_put = function(pos, listname, index, stack
return stack:get_count()
end
--- Taking is allowed from all slots (even the internal microblock slot)
+-- Taking is allowed from all slots (even the internal microblock slot).
--- Putting something in is slightly more complicated than taking anything because we have to make sure it is of a suitable material
+-- Putting something in is slightly more complicated than taking anything because we have to make sure it is of a suitable material.
circular_saw.on_metadata_inventory_put = function(pos, listname, index, stack, player)
- -- We need to find out if the circular_saw is already set to a specific material or not
+ -- We need to find out if the circular_saw is already set to a specific material or not.
local meta = minetest.env:get_meta(pos);
local inv = meta:get_inventory();
- -- Putting something into the input slot is only possible if that had been empty before or did contain something of the same material
+ -- Putting something into the input slot is only possible if that had been empty before or did contain something of the same material.
if( listname=="input") then
if( not( inv:is_empty("input"))) then
@@ -223,12 +226,12 @@ circular_saw.on_metadata_inventory_put = function(pos, listname, index, stack, p
end
end
- -- Each new block is worth 8 microblocks
+ -- Each new block is worth 8 microblocks.
circular_saw.update_inventory(pos, 8 * stack:get_count());
elseif(listname=="recycle") then
- -- Lets look which shape this represents
+ -- Lets look which shape this represents.
for i,v in ipairs(inv:get_list("output")) do
if(v:get_name() == stack:get_name()) then
@@ -236,36 +239,36 @@ circular_saw.on_metadata_inventory_put = function(pos, listname, index, stack, p
local value = circular_saw.cost_in_microblocks[ i ] * stack:get_count();
--print("\nRecycling " .. (v:get_name()) .. " into " ..value.. " microblocks.");
- -- We get value microblocks back
+ -- We get value microblocks back.
circular_saw.update_inventory(pos, value);
end
end
end
end
--- The player takes something
+-- The player takes something.
circular_saw.on_metadata_inventory_take = function(pos, listname, index, stack, player)
- -- If it is one of the offered stairs: find out how many microblocks have to be substracted
- if(listname=="output") then
+ -- If it is one of the offered stairs: find out how many microblocks have to be substracted.
+ if (listname=="output") then
- -- We do know how much each block at each position costs
+ -- We do know how much each block at each position costs.
local cost = circular_saw.cost_in_microblocks[ index ] * stack:get_count();
circular_saw.update_inventory(pos, -1 * cost);
- elseif(listname=="mikro") then
+ elseif (listname=="micro") then
- -- Each microblock costs 1 microblock
+ -- Each microblock costs 1 microblock.
circular_saw.update_inventory(pos, -1 * 1 * stack:get_count());
- elseif(listname=="input") then
+ elseif (listname=="input") then
- -- Each normal (= full) block taken costs 8 microblocks
+ -- Each normal (= full) block taken costs 8 microblocks.
circular_saw.update_inventory(pos, -1 * 8 * stack:get_count());
end
- -- The recycle field plays no role here since it is processed immediately
+ -- The recycle field plays no role here since it is processed immediately.
end
@@ -274,9 +277,9 @@ circular_saw.on_construct_init = function(pos, formspec)
local meta = minetest.env:get_meta(pos)
meta:set_string("formspec", formspec);
- meta:set_int( "anz", 0); -- No microblocks inside yet
+ meta:set_int( "anz", 0); -- No microblocks inside yet.
meta:set_string("max_offered", 99); -- How many items of this kind are offered by default?
- meta:set_string("infotext", "Circular saw, empty")
+ meta:set_string("infotext", S("Circular saw, empty"))
local inv = meta:get_inventory()
inv:set_size("input", 1) -- Input slot for full blocks of material x
@@ -310,14 +313,14 @@ minetest.register_node("moreblocks:circular_saw", {
node_box = {
type = "fixed",
fixed = {
- {-0.4, -0.5, -0.4, -0.25, 0.25, -0.25}, -- Leg
- {0.25, -0.5, 0.25, 0.4, 0.25, 0.4}, -- Leg
- {-0.4, -0.5, 0.25, -0.25, 0.25, 0.4}, -- Leg
- {0.25, -0.5, -0.4, 0.4, 0.25, -0.25}, -- Leg
- {-0.5, 0.25, -0.5, 0.5, 0.375, 0.5}, -- Tabletop
- {-0.01, 0.4375, -0.125, 0.01, 0.5, 0.125}, -- Saw blade (top)
- {-0.01, 0.375, -0.1875, 0.01, 0.4375, 0.1875}, -- Saw blade (bottom)
- {-0.25, -0.0625, -0.25, 0.25, 0.25, 0.25}, -- Motor case
+ {-0.4, -0.5, -0.4, -0.25, 0.25, -0.25}, -- leg
+ {0.25, -0.5, 0.25, 0.4, 0.25, 0.4}, -- leg
+ {-0.4, -0.5, 0.25, -0.25, 0.25, 0.4}, -- leg
+ {0.25, -0.5, -0.4, 0.4, 0.25, -0.25}, -- leg
+ {-0.5, 0.25, -0.5, 0.5, 0.375, 0.5}, -- tabletop
+ {-0.01, 0.4375, -0.125, 0.01, 0.5, 0.125}, -- saw blade (top)
+ {-0.01, 0.375, -0.1875, 0.01, 0.4375, 0.1875}, -- saw blade (bottom)
+ {-0.25, -0.0625, -0.25, 0.25, 0.25, 0.25}, -- motor case
},
},
tiles = {"moreblocks_circular_saw_top.png", "moreblocks_circular_saw_bottom.png", "moreblocks_circular_saw_side.png"},
@@ -329,13 +332,13 @@ minetest.register_node("moreblocks:circular_saw", {
return circular_saw.on_construct_init(pos,
"size[10,9]" ..
"list[current_name;input;0,0;1,1;]" ..
- "label[0,0;Input material]" ..
+ "label[0,0;"..S("Input material").."]" ..
"list[current_name;micro;0,1;1,1;]" ..
- "label[0,1;Rest/microblocks]" ..
- "field[0.3,2.5;1,1;max_offered;Max:;${max_offered}]" ..
- "button[1,2;1,1;Set;Set]" ..
+ "label[0,1;"..S("Rest/microblocks").."]" ..
+ "field[0.3,2.5;1,1;max_offered;"..S("Max:")..";${max_offered}]" ..
+ "button[1,2;1,1;Set;"..S("Set").."]" ..
"list[current_name;recycle;0,3;1,1;]" ..
- "label[0,3;Recycle output]" ..
+ "label[0,3;"..S("Recycle output").."]" ..
"list[current_name;output;2,0;8,4;]" ..
"list[current_player;main;1,5;8,4;]");
end,
@@ -344,15 +347,15 @@ minetest.register_node("moreblocks:circular_saw", {
return circular_saw.can_dig(pos, player);
end,
- -- Set owner of this circular saw
+ -- Set owner of this circular saw.
after_place_node = function(pos, placer)
local meta = minetest.env:get_meta(pos);
meta:set_string("owner", (placer:get_player_name() or ""));
- meta:set_string("infotext", "Circular saw is empty (owned by " .. (placer:get_player_name() or "") .. ")");
+ meta:set_string("infotext", S("Circular saw is empty (owned by %s)"):format((placer:get_player_name() or "")));
end,
- -- The amount of items offered per shape can be configured
+ -- The amount of items offered per shape can be configured.
on_receive_fields = function(pos, formname, fields, sender)
return circular_saw.on_receive_fields(pos, formname, fields, sender);
end,
@@ -361,14 +364,14 @@ minetest.register_node("moreblocks:circular_saw", {
return circular_saw.allow_metadata_inventory_move(pos, from_list, from_index, to_list, to_index, count, player);
end,
- -- Only input- and recycle-slot are intended as input slots
+ -- Only input- and recycle-slot are intended as input slots.
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return circular_saw.allow_metadata_inventory_put(pos, listname, index, stack, player);
end,
- -- Taking is allowed from all slots (even the internal microblock slot); moving is forbidden
+ -- Taking is allowed from all slots (even the internal microblock slot); moving is forbidden.
- -- Putting something in is slightly more complicated than taking anything because we have to make sure it is of a suitable material
+ -- Putting something in is slightly more complicated than taking anything because we have to make sure it is of a suitable material.
on_metadata_inventory_put = function(pos, listname, index, stack, player)
return circular_saw.on_metadata_inventory_put(pos, listname, index, stack, player);
end,
diff --git a/crafting.lua b/crafting.lua
index 8019772..3d52161 100644
--- a/crafting.lua
+++ b/crafting.lua
@@ -192,20 +192,6 @@ minetest.register_craft({
})
minetest.register_craft({
- output = "default:wood 4",
- recipe = {
- {"moreblocks:horizontal_tree"},
- }
-})
-
-minetest.register_craft({
- output = "default:junglewood 4",
- recipe = {
- {"moreblocks:horizontal_jungle_tree"},
- }
-})
-
-minetest.register_craft({
output = "moreblocks:plankstone 4",
recipe = {
{"default:stone", "default:wood"},
@@ -359,37 +345,6 @@ minetest.register_craft({
})
minetest.register_craft({
- output = "moreblocks:horizontal_tree 2",
- recipe = {
- {"default:tree", "", "default:tree"},
- }
-})
-
-minetest.register_craft({
- output = "default:tree 2",
- recipe = {
- {"moreblocks:horizontal_tree"},
- {"moreblocks:horizontal_tree"},
- }
-})
-
-minetest.register_craft({
- output = "moreblocks:horizontal_jungle_tree 2",
- recipe = {
- {"default:jungletree", "", "default:jungletree"},
- }
-})
-
-minetest.register_craft({
- output = "default:jungletree 2",
- recipe = {
- {"moreblocks:horizontal_jungle_tree"},
- {"moreblocks:horizontal_jungle_tree"},
- }
-})
-
-
-minetest.register_craft({
output = "moreblocks:circular_saw 1",
recipe = {
{ "", "default:steel_ingot", "" },
diff --git a/init.lua b/init.lua
index a256a2c..9ab695b 100644
--- a/init.lua
+++ b/init.lua
@@ -272,26 +272,6 @@ minetest.register_node("moreblocks:fence_jungle_wood", {
sounds = default.node_sound_wood_defaults(),
})
-minetest.register_node("moreblocks:horizontal_tree", {
- description = S("Horizontal Tree"),
- tiles = {"default_tree.png", "default_tree.png", "default_tree.png^[transformR90",
- "default_tree.png^[transformR90", "default_tree_top.png", "default_tree_top.png"},
- paramtype2 = "facedir",
- groups = {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
- sounds = default.node_sound_wood_defaults(),
- furnace_burntime = 30,
-})
-
-minetest.register_node("moreblocks:horizontal_jungle_tree", {
- description = S("Horizontal Jungle Tree"),
- tiles = {"default_jungletree.png", "default_jungletree.png", "default_jungletree.png^[transformR90",
- "default_jungletree.png^[transformR90", "default_jungletree_top.png", "default_jungletree_top.png"},
- paramtype2 = "facedir",
- groups = {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
- sounds = default.node_sound_wood_defaults(),
- furnace_burntime = 30,
-})
-
minetest.register_node("moreblocks:all_faces_tree", {
description = S("All-faces Tree"),
tiles = {"default_tree_top.png"},
@@ -319,6 +299,7 @@ minetest.register_node("moreblocks:glow_glass", {
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3},
sounds = default.node_sound_glass_defaults(),
})
+
minetest.register_node("moreblocks:trap_glow_glass", {
description = S("Trap Glow Glass"),
drawtype = "glasslike",
@@ -388,7 +369,6 @@ minetest.register_craftitem("moreblocks:jungle_stick", {
})
minetest.register_craftitem("moreblocks:nothing", {
- inventory_image = "invisible.png",
on_use = minetest.item_eat(0),
})
diff --git a/locale/fr.txt b/locale/fr.txt
index e537a8c..6bd7f98 100644
--- a/locale/fr.txt
+++ b/locale/fr.txt
@@ -1,54 +1,72 @@
# Translation by Calinou
-[moreblocks] loaded. = [moreblocks] a été chargé.
+###init.lua###
+[moreblocks] loaded. = [moreblocks] a été chargé.
Jungle Wooden Planks = Planches de bois de jungle
-Empty Bookshelf = Étagère vide
+Empty Bookshelf = Ètagère vide
Clean Glass = Verre propre
Plankstone = Pierre-bois
Wooden Tile = Dalle en bois
-Full Wooden Tile = Dalle en bois complète
-Centered Wooden Tile = Dalle en bois centrée
+Full Wooden Tile = Dalle en bois complète
+Centered Wooden Tile = Dalle en bois centrée
Up Wooden Tile = Dalle en bois vers le haut
Down Wooden Tile = Dalle en bois vers le bas
Left Wooden Tile = Dalle en bois vers la gauche
Right Wooden Tile = Dalle en bois vers la droite
Circle Stone Bricks = Briques en pierre circulaires
Stone Tile = Dalle en pierre
-Split Stone Tile = Dalle en pierre découpée
+Split Stone Tile = Dalle en pierre découpée
Glow Glass = Verre brillant
-Super Glow Glass = Verre très brillant
-Coal Glass = Verre en charbon
-Iron Glass = Verre en fer
+Super Glow Glass = Verre très brillant
+Coal Glass = Verre de charbon
+Iron Glass = Verre de fer
Coal Checker = Damier en charbon
Iron Checker = Damier en fer
-Trap Stone = Pierre à piège
-Trap Glass = Verre à piège
-Coal Stone = Pierre en charbon
-Iron Stone = Pierre en fer
+Trap Stone = Pierre traversable
+Trap Glass = Verre traversable
+Trap Glow Glass = Verre brillant traversable
+Trap Super Glow Glass = Verre très brillant traversable
+Coal Stone = Pierre de charbon
+Iron Stone = Pierre de fer
+Coal Stone Bricks = Briques en pierre de charbon
+Iron Stone Bricks = Briques en pierre de fer
Cactus Checker = Damier en cactus
-Cactus Brick = Briques en cactus
+Cactus Brick = Briques de cactus
Sweeper = Balai
-Jungle Stick = Bâton en bois de jungle
+Jungle Stick = Bâton en bois de jungle
Horizontal Tree = Tronc d'arbre horizontal
Horizontal Jungle Tree = Tronc d'arbre de jungle horizontal
Rope = Corde
All-faces Tree = Tronc d'arbre
+###redefinition.lua###
Wooden = bois
Papyrus = Papyrus
Dry Shrub = Buisson mort
Sapling = Pousse d'arbre
Wooden Planks = Planches de bois
-Ladder = Échelle
+Ladder = Échelle
Glass = Verre
+###circular_saw.lua###
Circular Saw = Scie circulaire
+Circular saw, empty (owned by %s) = Scie circulaire, vide (propriété de %s)
+Circular saw, working with %s (owned by %s) = Scie circulaire, manipule %s (propriété de %s)
+Circular saw, empty = Scie circulaire, vide
+Circular saw is empty (owned by %s) = Scie circulaire est vide (propriété de %s)
+Input material = Entrée du matériel
+Rest/microblocks = Reste/microbloc
+Max: = Max:
+Set = Fixer
+Recycle output = Recyclage
+
+###./stairsplus/*###
%s Stairs = Escaliers en %s
%s Slab = Demi-dalle en %s
%s Panel = Barre en %s
%s Microblock = Microbloc en %s
%s Pane = Panneau en %s
-%s Fence = Barrière en %s
+%s Fence = Barrière en %s \ No newline at end of file
diff --git a/locale/template.txt b/locale/template.txt
new file mode 100644
index 0000000..77ed1a9
--- /dev/null
+++ b/locale/template.txt
@@ -0,0 +1,70 @@
+###init.lua###
+[moreblocks] loaded. =
+
+Jungle Wooden Planks =
+Empty Bookshelf =
+Clean Glass =
+Plankstone =
+Wooden Tile =
+Full Wooden Tile =
+Centered Wooden Tile =
+Up Wooden Tile =
+Down Wooden Tile =
+Left Wooden Tile =
+Right Wooden Tile =
+Circle Stone Bricks =
+Stone Tile =
+Split Stone Tile =
+Glow Glass =
+Super Glow Glass =
+Coal Glass =
+Iron Glass =
+Coal Checker =
+Iron Checker =
+Trap Stone =
+Trap Glass =
+Trap Glow Glass =
+Trap Super Glow Glass =
+Coal Stone =
+Iron Stone =
+Coal Stone Bricks =
+Iron Stone Bricks =
+Cactus Checker =
+Cactus Brick =
+Sweeper =
+Jungle Stick =
+Horizontal Tree =
+Horizontal Jungle Tree =
+Rope =
+All-faces Tree =
+
+###redefinition.lua###
+Wooden =
+Papyrus =
+Dry Shrub =
+Sapling =
+Wooden Planks =
+Ladder =
+Glass =
+
+###circular_saw.lua###
+Circular Saw =
+Circular saw, empty (owned by %s) =
+Circular saw, working with %s (owned by %s) =
+Circular saw, empty =
+Circular saw is empty (owned by %s) =
+
+Input material =
+Rest/microblocks =
+Max: =
+Set =
+Recycle output =
+
+###./stairsplus/*###
+%s Stairs =
+%s Slab =
+%s Panel =
+%s Microblock =
+
+%s Pane =
+%s Fence = \ No newline at end of file
diff --git a/stairsplus.lua b/stairsplus.lua
index 593a240..3f85902 100644
--- a/stairsplus.lua
+++ b/stairsplus.lua
@@ -8,7 +8,7 @@ else
stairsplus_expect_infinite_stacks = true
end
--- these vales are in order: facedir in degrees = 90, 0, 270, 180, 90
+-- These vales are in order: facedir in degrees = 90, 0, 270, 180, 90
local dirs1 = { 21, 20, 23, 22, 21 }
local dirs2 = { 15, 8, 17, 6, 15 }
@@ -116,10 +116,10 @@ function register_stair_slab_panel_micro(modname, subname, recipeitem, groups, i
register_6dfacedir_conversion(modname, subname)
end
--- Default stairs/slabs/panels/microblocks
+-- Default stairs/slabs/panels/microblocks.
register_stair_slab_panel_micro("moreblocks", "wood", "default:wood",
- {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=3},
+ {snappy=1, choppy=2, oddly_breakable_by_hand=2, flammable=3},
{"default_wood.png"},
"Wooden",
"wood",
@@ -154,14 +154,14 @@ register_stair_slab_panel_micro("moreblocks", "brick", "default:brick",
0)
register_stair_slab_panel_micro("moreblocks", "sandstone", "default:sandstone",
- {crumbly=2,cracky=2},
+ {crumbly=2, cracky=2},
{"default_sandstone.png"},
"Sandstone",
"sandstone",
0)
register_stair_slab_panel_micro("moreblocks", "steelblock", "default:steelblock",
- {cracky=1,level=2},
+ {cracky=1, level=2},
{"default_steel_block.png"},
"Steel Block",
"steelblock",
@@ -175,21 +175,21 @@ register_stair_slab_panel_micro("moreblocks", "goldblock", "default:goldblock",
0)
register_stair_slab_panel_micro("moreblocks", "copperblock", "default:copperblock",
- {cracky=1,level=2},
+ {cracky=1, level=2},
{"default_copper_block.png"},
"Copper Block",
"copperblock",
0)
register_stair_slab_panel_micro("moreblocks", "bronzeblock", "default:bronzeblock",
- {cracky=1,level=2},
+ {cracky=1, level=2},
{"default_bronze_block.png"},
"Bronze Block",
"bronzeblock",
0)
register_stair_slab_panel_micro("moreblocks", "diamondblock", "default:diamondblock",
- {cracky=1,level=3},
+ {cracky=1, level=3},
{"default_diamond_block.png"},
"Diamond Block",
"diamondblock",
@@ -203,35 +203,35 @@ register_stair_slab_panel_micro("moreblocks", "desert_stone", "default:desert_st
0)
register_stair_slab_panel_micro("moreblocks", "glass", "default:glass",
- {snappy=2,cracky=3,oddly_breakable_by_hand=3},
+ {snappy=2, cracky=3, oddly_breakable_by_hand=3},
{"moreblocks_glass_stairsplus.png"},
"Glass",
"glass",
0)
register_stair_slab_panel_micro("moreblocks", "tree", "default:tree",
- {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
+ {tree=1, snappy=1, choppy=2, oddly_breakable_by_hand=1, flammable=2},
{"default_tree_top.png", "default_tree_top.png", "default_tree.png"},
"Tree",
"tree",
0)
register_stair_slab_panel_micro("moreblocks", "jungletree", "default:jungletree",
- {tree=1,snappy=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
+ {tree=1, snappy=1, choppy=2, oddly_breakable_by_hand=1, flammable=2},
{"default_jungletree_top.png", "default_jungletree_top.png", "default_jungletree.png"},
"Jungle Tree",
"jungletree",
0)
register_stair_slab_panel_micro("moreblocks", "obsidian", "default:obsidian",
- {cracky=1,level=2},
+ {cracky=1, level=2},
{"default_obsidian.png"},
"Obsidian",
"obsidian",
0)
register_stair_slab_panel_micro("moreblocks", "obsidian_glass", "default:obsidian_glass",
- {cracky=3,oddly_breakable_by_hand=3},
+ {cracky=3, oddly_breakable_by_hand=3},
{"moreblocks_obsidian_glass_stairsplus.png"},
"Obsidian Glass",
"obsidian_glass",
@@ -241,7 +241,7 @@ register_stair_slab_panel_micro("moreblocks", "stonebrick", "default:stonebrick"
{cracky=3},
{"default_stone_brick.png"},
"Stone Bricks",
- "stone_bricks",
+ "stonebrick",
0)
register_stair_slab_panel_micro("moreblocks", "desert_stonebrick", "default:desert_stonebrick",
@@ -259,6 +259,13 @@ register_stair_slab_panel_micro("moreblocks", "sandstonebrick", "default:sandsto
0)
-- More Blocks stairs/slabs/panels/microblocks
+
+register_stair_slab_panel_micro("moreblocks", "invisible", "air",
+ {unbreakable=1, not_in_creative_inventory=1},
+ {"invisible.png"},
+ "Invisible",
+ "invisible",
+ 0)
register_stair_slab_panel_micro("moreblocks", "circle_stone_bricks", "moreblocks:circle_stone_bricks",
{cracky=3},
@@ -377,14 +384,14 @@ register_stair_slab_panel_micro("moreblocks", "coal_glass", "moreblocks:coal_gla
0)
register_stair_slab_panel_micro("moreblocks", "iron_glass", "moreblocks:iron_glass",
- {snappy=2,cracky=3,oddly_breakable_by_hand=3},
+ {snappy=2, cracky=3, oddly_breakable_by_hand=3},
{"moreblocks_iron_glass_stairsplus.png"},
"Iron Glass",
"iron_glass",
0)
register_stair_slab_panel_micro("moreblocks", "wood_tile", "moreblocks:wood_tile",
- {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=3},
+ {snappy=1, choppy=2, oddly_breakable_by_hand=2, flammable=3},
{"moreblocks_wood_tile.png", "moreblocks_wood_tile.png", "moreblocks_wood_tile.png",
"moreblocks_wood_tile.png", "moreblocks_wood_tile.png^[transformR90", "moreblocks_wood_tile.png^[transformR90"},
"Wooden Tile",
@@ -392,7 +399,7 @@ register_stair_slab_panel_micro("moreblocks", "wood_tile", "moreblocks:wood_tile
0)
register_stair_slab_panel_micro("moreblocks", "wood_tile_center", "moreblocks:wood_tile_center",
- {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=3},
+ {snappy=1, choppy=2, oddly_breakable_by_hand=2, flammable=3},
{"moreblocks_wood_tile_center.png", "moreblocks_wood_tile_center.png", "moreblocks_wood_tile_center.png",
"moreblocks_wood_tile_center.png", "moreblocks_wood_tile_center.png^[transformR90", "moreblocks_wood_tile_center.png^[transformR90"},
"Centered Wooden Tile",
@@ -400,7 +407,7 @@ register_stair_slab_panel_micro("moreblocks", "wood_tile_center", "moreblocks:wo
0)
register_stair_slab_panel_micro("moreblocks", "wood_tile_full", "moreblocks:wood_tile_full",
- {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=3},
+ {snappy=1, choppy=2, oddly_breakable_by_hand=2, flammable=3},
{"moreblocks_wood_tile_full.png", "moreblocks_wood_tile_full.png", "moreblocks_wood_tile_full.png",
"moreblocks_wood_tile_full.png", "moreblocks_wood_tile_full.png^[transformR90", "moreblocks_wood_tile_full.png^[transformR90"},
"Full Wooden Tile",
diff --git a/stairsplus/microblocks.lua b/stairsplus/microblocks.lua
index 6cbb7d4..30a95ea 100644
--- a/stairsplus/microblocks.lua
+++ b/stairsplus/microblocks.lua
@@ -26,10 +26,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, 0, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, 0, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -48,10 +44,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, -0.4375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, -0.4375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -70,10 +62,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, -0.375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, -0.375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -92,10 +80,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, -0.25, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, -0.25, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -114,10 +98,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, 0.25, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, 0.25, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -136,10 +116,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, 0.375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, 0.375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -158,10 +134,6 @@ function register_micro(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0, 0.4375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0, 0.4375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
diff --git a/stairsplus/panels.lua b/stairsplus/panels.lua
index c0a24fb..f074d54 100644
--- a/stairsplus/panels.lua
+++ b/stairsplus/panels.lua
@@ -26,10 +26,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, 0, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, 0, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
@@ -47,10 +43,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, -0.4375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, -0.4375, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
@@ -68,10 +60,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, -0.375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, -0.375, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
@@ -89,10 +77,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, -0.25, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, -0.25, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
@@ -110,10 +94,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, 0.25, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, 0.25, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
@@ -131,10 +111,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, 0.375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, 0.375, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
@@ -152,10 +128,6 @@ function register_panel(modname, subname, recipeitem, groups, images, descriptio
type = "fixed",
fixed = {-0.5, -0.5, 0, 0.5, 0.4375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, 0, 0.5, 0.4375, 0.5},
- },
on_place = stairsplus_rotate_and_place
})
diff --git a/stairsplus/slabs.lua b/stairsplus/slabs.lua
index 1e251a5..687dbee 100644
--- a/stairsplus/slabs.lua
+++ b/stairsplus/slabs.lua
@@ -26,10 +26,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -47,10 +43,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -69,10 +61,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -91,10 +79,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0.25, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, 0.25, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -113,10 +97,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -135,10 +115,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, -0.375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -157,10 +133,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0.375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, 0.375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -179,10 +151,6 @@ function register_slab(modname, subname, recipeitem, groups, images, description
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0.4375, 0.5},
},
- selection_box = {
- type = "fixed",
- fixed = {-0.5, -0.5, -0.5, 0.5, 0.4375, 0.5},
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
diff --git a/stairsplus/stairs.lua b/stairsplus/stairs.lua
index 20996a7..b11fef9 100644
--- a/stairsplus/stairs.lua
+++ b/stairsplus/stairs.lua
@@ -28,13 +28,6 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
{-0.5, 0, 0, 0.5, 0.5, 0.5},
},
},
- selection_box = {
- type = "fixed",
- fixed = {
- {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- {-0.5, 0, 0, 0.5, 0.5, 0.5},
- },
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -54,13 +47,6 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
{-0.5, 0, 0, 0.5, 0.5, 0.5},
},
},
- selection_box = {
- type = "fixed",
- fixed = {
- {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- {-0.5, 0, 0, 0.5, 0.5, 0.5},
- },
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -81,13 +67,6 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
{-0.5, 0, 0, 0, 0.5, 0.5},
},
},
- selection_box = {
- type = "fixed",
- fixed = {
- {-0.5, -0.5, -0.5, 0, 0, 0.5},
- {-0.5, 0, 0, 0, 0.5, 0.5},
- },
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -108,13 +87,6 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
{0, 0, 0, 0.5, 0.5, 0.5},
},
},
- selection_box = {
- type = "fixed",
- fixed = {
- {0, -0.5, -0.5, 0.5, 0, 0.5},
- {0, 0, 0, 0.5, 0.5, 0.5},
- },
- },
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
@@ -137,24 +109,36 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
{-0.5, 0, -0.5, 0, 0.5, 0},
},
},
- selection_box = {
+ sounds = default.node_sound_stone_defaults(),
+ on_place = stairsplus_rotate_and_place
+ })
+
+ minetest.register_node(":"..modname .. ":stair_" .. subname .. "_outer", {
+ description = S("%s Stairs"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ light_source = light,
+ drop = modname .. ":stair_" .. drop .. "_outer",
+ paramtype = "light",
+ paramtype2 = "facedir",
+ sunlight_propagates = true,
+ groups = groups,
+ node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- {-0.5, 0, 0, 0.5, 0.5, 0.5},
- {-0.5, 0, -0.5, 0, 0.5, 0},
+ {-0.5, 0, 0, 0, 0.5, 0.5},
},
},
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
- minetest.register_node(":"..modname .. ":stair_" .. subname .. "_outer", {
+ minetest.register_node(":" .. modname .. ":stair_" .. subname .. "_alt", {
description = S("%s Stairs"):format(S(description)),
drawtype = "nodebox",
tiles = images,
light_source = light,
- drop = modname .. ":stair_" .. drop .. "_outer",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
@@ -162,22 +146,35 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
node_box = {
type = "fixed",
fixed = {
- {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- {-0.5, 0, 0, 0, 0.5, 0.5},
+ {-0.5, -0.5, -0.5, 0.5, 0, 0},
+ {-0.5, 0, 0, 0.5, 0.5, 0.5},
},
},
- selection_box = {
+ sounds = default.node_sound_stone_defaults(),
+ on_place = stairsplus_rotate_and_place
+ })
+
+ minetest.register_node(":" .. modname .. ":stair_" .. subname .. "_alt_1", {
+ description = S("%s Stairs"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ light_source = light,
+ paramtype = "light",
+ paramtype2 = "facedir",
+ sunlight_propagates = true,
+ groups = groups,
+ node_box = {
type = "fixed",
fixed = {
- {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
- {-0.5, 0, 0, 0, 0.5, 0.5},
+ {-0.5, -0.0625, -0.5, 0.5, 0, 0},
+ {-0.5, 0.4375, 0, 0.5, 0.5, 0.5},
},
},
sounds = default.node_sound_stone_defaults(),
on_place = stairsplus_rotate_and_place
})
-
- minetest.register_node(":" .. modname .. ":stair_" .. subname .. "_alt", {
+
+ minetest.register_node(":" .. modname .. ":stair_" .. subname .. "_alt_2", {
description = S("%s Stairs"):format(S(description)),
drawtype = "nodebox",
tiles = images,
@@ -189,8 +186,28 @@ function register_stair(modname, subname, recipeitem, groups, images, descriptio
node_box = {
type = "fixed",
fixed = {
- {-0.5, -0.5, -0.5, 0.5, 0, 0},
- {-0.5, 0, 0, 0.5, 0.5, 0.5},
+ {-0.5, -0.125, -0.5, 0.5, 0, 0},
+ {-0.5, 0.375, 0, 0.5, 0.5, 0.5},
+ },
+ },
+ sounds = default.node_sound_stone_defaults(),
+ on_place = stairsplus_rotate_and_place
+ })
+
+ minetest.register_node(":" .. modname .. ":stair_" .. subname .. "_alt_4", {
+ description = S("%s Stairs"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ light_source = light,
+ paramtype = "light",
+ paramtype2 = "facedir",
+ sunlight_propagates = true,
+ groups = groups,
+ node_box = {
+ type = "fixed",
+ fixed = {
+ {-0.5, -0.25, -0.5, 0.5, 0, 0},
+ {-0.5, 0.25, 0, 0.5, 0.5, 0.5},
},
},
sounds = default.node_sound_stone_defaults(),
diff --git a/textures/invisible.png b/textures/invisible.png
new file mode 100644
index 0000000..c2e8752
--- /dev/null
+++ b/textures/invisible.png
Binary files differ