Advertisement
Guest User

Untitled

a guest
Sep 28th, 2012
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 10.12 KB | None | 0 0
  1. Sokomine from Minetest Forums has sent you a message. You can reply to Sokomine by replying to this e-mail.
  2.  
  3. The message reads as follows:
  4. -----------------------------------------------------------------------
  5.  
  6. roof = {};
  7.  
  8. -- TODO: large version that extends over more than one node?
  9. -- taken from minetest_game/mods/stairs/init.lua
  10. function roof.register_roof(subname, recipeitem, groups, images, description)
  11.         minetest.register_node("roof:roof_" .. subname, {
  12.                 description = description,
  13.                 drawtype = "raillike",
  14.                 tiles = images,
  15.                 paramtype = "light",
  16.                 paramtype2 = "facedir",
  17.                 is_ground_content = true,
  18.                 groups = groups,
  19.                 node_box = {
  20.                         type = "fixed",
  21.                         fixed = {
  22. -- three nodeboxes (works)
  23. --                                {-0.5,  -0.5, -0.5,   0.5, -0.16, -0.16},
  24. --                                {-0.5, -0.16, -0.16,  0.5,  0.16,  0.16},
  25. --                                {-0.5,  0.16,  0.16,  0.5,   0.5,   0.5},
  26.  
  27. -- four nodeboxes
  28.                                 {-0.5,  -0.5, -0.5,   0.5, -0.25, -0.25},
  29.                                 {-0.5, -0.25, -0.25,  0.5,     0,     0},
  30.                                 {-0.5,     0,     0,  0.5,  0.25,  0.25},
  31.                                 {-0.5,  0.25,  0.25,  0.5,   0.5,   0.5},
  32.  
  33. -- normal stair
  34. --                                {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
  35. --                                {-0.5, 0, 0, 0.5, 0.5, 0.5},
  36.                         },
  37.                 },
  38.         })
  39.  
  40.         minetest.register_craft({
  41.                 output = 'roof:roof_' .. subname .. ' 3',
  42.                 recipe = {
  43.                         {recipeitem, "", ""},
  44.                         {"", recipeitem, ""},
  45.                         {"", "", recipeitem},
  46.                 },
  47.         })
  48.  
  49.         -- flipping would make no sense
  50. end
  51.  
  52.  
  53.         minetest.register_node("roof:roof_erker", {
  54.                 description = "Erker (?) for roof, left side",
  55.                 drawtype = "nodebox",
  56. -- TODO: needs diffrent tiles at sides and on top
  57.                 tiles = {"default_stone.png", "default_stone.png",
  58.                          "default_stone.png", "default_stone.png",
  59.                          "default_glass.png", "default_glass.png"},
  60. --        tiles = {"default_tree.png", "default_tree.png", "moreblocks_horizontaltree.png",
  61. --                "moreblocks_horizontaltree.png", "default_tree_top.png", "default_tree_top.png"},
  62.  
  63.                 paramtype = "light",
  64.                 paramtype2 = "facedir",
  65.                 is_ground_content = true,
  66.                 groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2},
  67.                 node_box = {
  68.                         type = "fixed",
  69.                         fixed = {
  70.                                 {-0.5,  -0.5, -0.5,  -0.45,   0.5, -0.25},
  71.                                 {-0.5, -0.25, -0.25, -0.45,   0.5,     0},
  72.                                 {-0.5,     0,     0, -0.45,   0.5,  0.25},
  73.                                 {-0.5,  0.25,  0.25, -0.45,   0.5,   0.5},
  74.                                 -- the glass part
  75.                                 {-0.4, -0.5, -0.5,    0.5,   0.5, -0.25},
  76. -- this is like a cornerstone
  77. --                                {-0.5,  -0.5, -0.5,  -0.25, -0.25,   0.5},
  78. --                                {-0.5, -0.25, -0.25, -0.25,     0,   0.5},
  79. --                                {-0.5,     0,     0, -0.25,  0.25,   0.5},
  80. --                                {-0.5,  0.25,  0.25, -0.25,   0.5,   0.5},
  81.  
  82. --                                {-0.25, -0.5, -0.5,  0.5,   0.5,   0.5},
  83.  
  84.                         },
  85.                 },
  86.         })
  87.  
  88.         minetest.register_node("roof:roof_erker_mirrored", {
  89.                 description = "Erker (?) for roof, right side",
  90.                 drawtype = "nodebox",
  91. -- TODO: needs diffrent tiles at sides and on top
  92.                 tiles = {"default_stone.png", "default_stone.png",
  93.                          "default_stone.png", "default_stone.png",
  94.                          "default_glass.png", "default_glass.png"},
  95. --        tiles = {"default_tree.png", "default_tree.png", "moreblocks_horizontaltree.png",
  96. --                "moreblocks_horizontaltree.png", "default_tree_top.png", "default_tree_top.png"},
  97.  
  98.                 paramtype = "light",
  99.                 paramtype2 = "facedir",
  100.                 is_ground_content = true,
  101.                 groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2},
  102.                 node_box = {
  103.                         type = "fixed",
  104.                         fixed = {
  105.                                 { 0.45,  -0.5, -0.5,   0.5,   0.5, -0.25},
  106.                                 { 0.45, -0.25, -0.25,  0.5,   0.5,     0},
  107.                                 { 0.45,     0,     0,  0.5,   0.5,  0.25},
  108.                                 { 0.45,  0.25,  0.25,  0.5,   0.5,   0.5},
  109.                                 -- the glass part
  110.                                 {-0.5, -0.5, -0.5,    0.45,   0.5, -0.25},
  111.  
  112.                         },
  113.                 },
  114.         })
  115.  
  116.  
  117.         minetest.register_node("roof:roof_side", {
  118.                 description = "Roof part with smooth side extending topwards",
  119.                 drawtype = "nodebox",
  120. -- TODO: needs diffrent tiles at sides and on top
  121.                 tiles = {"default_stone.png", "default_stone.png",
  122.                          "default_stone.png", "default_stone.png",
  123.                          "default_glass.png", "default_glass.png"},
  124. --        tiles = {"default_tree.png", "default_tree.png", "moreblocks_horizontaltree.png",
  125. --                "moreblocks_horizontaltree.png", "default_tree_top.png", "default_tree_top.png"},
  126.  
  127.                 paramtype = "light",
  128.                 paramtype2 = "facedir",
  129.                 is_ground_content = true,
  130.                 groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2},
  131.                 node_box = {
  132.                         type = "fixed",
  133.                         fixed = {
  134.                                 { 0.45,  -0.5, -0.5,   0.5,   0.5, -0.25},
  135.                                 { 0.45, -0.25, -0.25,  0.5,   0.5,     0},
  136.                                 { 0.45,     0,     0,  0.5,   0.5,  0.25},
  137.                                 { 0.45,  0.25,  0.25,  0.5,   0.5,   0.5},
  138.                                 -- the glass part
  139.                                 {-0.5, -0.5, -0.5,    0.45,   0.5, -0.25},
  140.  
  141.                         },
  142.                 },
  143.         })
  144.  
  145.  
  146.  
  147.  
  148.  
  149. -- add a craft for junglewood
  150. minetest.register_craft({
  151.         output = "default:junglewood",
  152.         recipe = {
  153.                 {"default:dry_shrub"},
  154.                 {"default:wood"},
  155.         }
  156. })
  157.  
  158.  
  159. -- these use textures from default
  160. roof.register_roof( "glass", "default:glass",
  161.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  162.                 {"default_glass.png"},
  163.                 "Window for roofs");
  164.  
  165. roof.register_roof( "dirt", "default:dirt",
  166.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  167.                 {"default_dirt.png"},
  168.                 "Brown roof");
  169.  
  170. roof.register_roof( "gravel", "default:gravel",
  171.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  172.                 {"default_gravel.png"},
  173.                 "Gravel roof");
  174.  
  175. roof.register_roof( "sand", "default:sand",
  176.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  177.                 {"default_sand.png"},
  178.                 "Sand-like roof");
  179.  
  180. roof.register_roof( "mineral_iron", "default:iron_lump",
  181.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  182.                 {"default_mineral_iron.png"},
  183.                 "Iron-ore-like roof");
  184.  
  185. roof.register_roof( "tree", "default:tree",
  186.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  187.                 {"default_tree.png"},
  188.                 "Gravel roof");
  189.  
  190. -- TODO: straw
  191. roof.register_roof( "papyrus", "default:papyrus",
  192.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  193.                 {"default_papyrus.png"},
  194.                 "Papyrus roof");
  195.  
  196.  
  197.  
  198. -- these use textures from homedecor
  199. roof.register_roof( "wood", "default:wood",
  200.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  201.                 {"homedecor_shingles_wood.png"},
  202.                 "Wooden roof");
  203.  
  204. -- TODO: does not make much sense this way :-(
  205. roof.register_roof( "asphalt", "default:coal_lump",
  206.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  207.                 {"homedecor_shingles_asphalt.png"},
  208.                 "Asphalt roof");
  209.  
  210. roof.register_roof( "terracotta", "default:clay_lump",
  211.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  212.                 {"homedecor_shingles_terracotta.png"},
  213.                 "Terracotta roof");
  214.  
  215.  
  216.  
  217. -- these use textures from moreblocks
  218. roof.register_roof( "plankstone", "moreblocks:plankstone",
  219.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  220.                 {"moreblocks_plankstone.png"},
  221.                 "Plankstone roof");
  222.  
  223. roof.register_roof( "junglewood", "moreblocks:junglewood",
  224.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  225.                 {"moreblocks_junglewood.png"},
  226.                 "Plankstone roof");
  227.  
  228.  
  229.  
  230. -- these use textures from building_blocks
  231. roof.register_roof( "woodb", "building_blocks:Roofing",
  232.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  233.                 {"building_blocks_Roofing.png"},
  234.                 "Wooden roof v2");
  235.  
  236. roof.register_roof( "tar", "building_blocks:Tar",
  237.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  238.                 {"tar.png"},
  239.                 "Tar roof");
  240.  
  241. roof.register_roof( "hardwood", "building_blocks:hardwood",
  242.                 {snappy=2,choppy=2,oddly_breakable_by_hand=2,is_roof=1},
  243.                 {"building_blocks_hardwood.png"},
  244.                 "Hardwood/plankstone roof");
  245.  
  246. -----------------------------------------------------------------------
  247.  
  248. --
  249. Minetest Forums Mailer
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement