aboutsummaryrefslogtreecommitdiff
path: root/stairsplus/slabs.lua
diff options
context:
space:
mode:
authorCalinou <calinou9999spam@gmail.com>2013-07-11 20:33:02 +0200
committerCalinou <calinou9999spam@gmail.com>2013-07-11 20:33:02 +0200
commit85aea72376f98a8fc17c3f109a4dd0d987c2b6eb (patch)
treeb92b414a4c474f5a13ef364e044840a4b3a1f288 /stairsplus/slabs.lua
parentf9bddb6dda60cda59667ef600e570f5774efe6cf (diff)
downloadmoreblocks-85aea72376f98a8fc17c3f109a4dd0d987c2b6eb.tar.gz
moreblocks-85aea72376f98a8fc17c3f109a4dd0d987c2b6eb.tar.bz2
moreblocks-85aea72376f98a8fc17c3f109a4dd0d987c2b6eb.zip
More Blocks
Diffstat (limited to 'stairsplus/slabs.lua')
-rw-r--r--stairsplus/slabs.lua127
1 files changed, 127 insertions, 0 deletions
diff --git a/stairsplus/slabs.lua b/stairsplus/slabs.lua
new file mode 100644
index 0000000..458c8b9
--- /dev/null
+++ b/stairsplus/slabs.lua
@@ -0,0 +1,127 @@
+-- Load translation library if intllib is installed
+
+local S
+if (minetest.get_modpath("intllib")) then
+ dofile(minetest.get_modpath("intllib").."/intllib.lua")
+ S = intllib.Getter(minetest.get_current_modname())
+ else
+ S = function ( s ) return s end
+end
+
+-- Node will be called <modname>slab_<subname>
+
+function register_slab(modname, subname, recipeitem, groups, images, description, drop, light)
+
+ minetest.register_node(":" .. modname .. ":slab_" .. subname, {
+ description = S("%s Slab"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ light_source = light,
+ drop = modname .. ":slab_" .. drop,
+ 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},
+ },
+ selection_box = {
+ type = "fixed",
+ fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
+ },
+ sounds = default.node_sound_stone_defaults(),
+ on_place = function(itemstack, placer, pointed_thing)
+ local keys=placer:get_player_control()
+ stairsplus_rotate_and_place(itemstack, placer, pointed_thing, keys["sneak"])
+ return itemstack
+ end
+ })
+
+ minetest.register_node(":stairs:slab_" .. subname, {
+ description = S("%s Slab"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ drop = modname .. ":slab_" .. drop,
+ 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},
+ },
+ selection_box = {
+ type = "fixed",
+ fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
+ },
+ sounds = default.node_sound_stone_defaults(),
+ on_place = function(itemstack, placer, pointed_thing)
+ local keys=placer:get_player_control()
+ stairsplus_rotate_and_place(itemstack, placer, pointed_thing, keys["sneak"])
+ return itemstack
+ end
+ })
+
+ minetest.register_node(":"..modname .. ":slab_" .. subname .. "_quarter", {
+ description = S("%s Slab"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ light_source = light,
+ drop = modname .. ":slab_" .. drop .. "_quarter",
+ paramtype = "light",
+ paramtype2 = "facedir",
+ sunlight_propagates = true,
+ groups = groups,
+ node_box = {
+ 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 = function(itemstack, placer, pointed_thing)
+ local keys=placer:get_player_control()
+ stairsplus_rotate_and_place(itemstack, placer, pointed_thing, keys["sneak"])
+ return itemstack
+ end
+ })
+
+ minetest.register_node(":"..modname .. ":slab_" .. subname .. "_three_quarter", {
+ description = S("%s Slab"):format(S(description)),
+ drawtype = "nodebox",
+ tiles = images,
+ light_source = light,
+ drop = modname .. ":slab_" .. drop .. "_three_quarter",
+ paramtype = "light",
+ paramtype2 = "facedir",
+ sunlight_propagates = true,
+ groups = groups,
+ node_box = {
+ 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 = function(itemstack, placer, pointed_thing)
+ local keys=placer:get_player_control()
+ stairsplus_rotate_and_place(itemstack, placer, pointed_thing, keys["sneak"])
+ return itemstack
+ end
+ })
+
+ -- Unregister default recipes
+
+ minetest.register_craft({
+ output = "moreblocks:nothing 1",
+ recipe = {
+ {recipeitem, recipeitem, recipeitem},
+ },
+ })
+end
+