init.lua 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. local S
  2. if minetest.get_modpath("intllib") then
  3. S = intllib.Getter()
  4. else
  5. S = function(s,a,...)a={a,...}return s:gsub("@(%d+)",function(n)return a[tonumber(n)]end)end
  6. end
  7. advtrains.register_wagon("moretrains_wagon_gondola", {
  8. mesh="moretrains_gondola.b3d",
  9. textures = {"moretrains_wagon_gondola.png"},
  10. seats = {},
  11. drives_on={default=true},
  12. max_speed=20,
  13. visual_size = {x=1, y=1},
  14. wagon_span=2.784,
  15. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  16. drops={"default:steelblock"},
  17. has_inventory = true,
  18. get_inventory_formspec = function(self, pname, invname)
  19. return "size[8,11]"..
  20. "list["..invname..";box;0,0;8,3;]"..
  21. "list[current_player;main;0,5;8,4;]"..
  22. "listring[]"
  23. end,
  24. inventory_list_sizes = {
  25. box=8*3,
  26. },
  27. }, S("Gondola wagon (empty)"), "moretrains_wagon_gondola_inv.png")
  28. advtrains.register_wagon("moretrains_wagon_gondola_mese", {
  29. mesh="moretrains_gondola_mese.b3d",
  30. textures = {"moretrains_wagon_gondola.png"},
  31. seats = {},
  32. drives_on={default=true},
  33. max_speed=20,
  34. visual_size = {x=1, y=1},
  35. wagon_span=2.784,
  36. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  37. drops={"default:steelblock"},
  38. has_inventory = true,
  39. get_inventory_formspec = function(self, pname, invname)
  40. return "size[8,11]"..
  41. "list["..invname..";box;0,0;8,3;]"..
  42. "list[current_player;main;0,5;8,4;]"..
  43. "listring[]"
  44. end,
  45. inventory_list_sizes = {
  46. box=8*3,
  47. },
  48. }, S("Gondola wagon with mese"), "moretrains_wagon_gondola_mese_inv.png")
  49. advtrains.register_wagon("moretrains_wagon_gondola_cobble", {
  50. mesh="moretrains_gondola_mese.b3d",
  51. textures = {"moretrains_wagon_gondola_cobble.png"},
  52. seats = {},
  53. drives_on={default=true},
  54. max_speed=20,
  55. visual_size = {x=1, y=1},
  56. wagon_span=2.784,
  57. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  58. drops={"default:steelblock"},
  59. has_inventory = true,
  60. get_inventory_formspec = function(self, pname, invname)
  61. return "size[8,11]"..
  62. "list["..invname..";box;0,0;8,3;]"..
  63. "list[current_player;main;0,5;8,4;]"..
  64. "listring[]"
  65. end,
  66. inventory_list_sizes = {
  67. box=8*3,
  68. },
  69. }, S("Gondola wagon with cobble stone"), "moretrains_wagon_gondola_cobble_inv.png")
  70. advtrains.register_wagon("moretrains_wagon_gondola_toiletpaper", {
  71. mesh="moretrains_gondola_toiletpaper.b3d",
  72. textures = {"moretrains_wagon_gondola.png"},
  73. seats = {},
  74. drives_on={default=true},
  75. max_speed=20,
  76. visual_size = {x=1, y=1},
  77. wagon_span=2.784,
  78. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  79. drops={"default:steelblock"},
  80. has_inventory = true,
  81. get_inventory_formspec = function(self, pname, invname)
  82. return "size[8,11]"..
  83. "list["..invname..";box;0,0;8,3;]"..
  84. "list[current_player;main;0,5;8,4;]"..
  85. "listring[]"
  86. end,
  87. inventory_list_sizes = {
  88. box=8*3,
  89. },
  90. }, S("Gondola wagon with toilet paper"), "moretrains_wagon_gondola_toiletpaper_inv.png")
  91. advtrains.register_wagon("moretrains_wagon_gondola_rails", {
  92. mesh="moretrains_gondola_rails.b3d",
  93. textures = {"moretrains_wagon_gondola.png"},
  94. seats = {},
  95. drives_on={default=true},
  96. max_speed=20,
  97. visual_size = {x=1, y=1},
  98. wagon_span=2.784,
  99. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  100. drops={"default:steelblock"},
  101. has_inventory = true,
  102. get_inventory_formspec = function(self, pname, invname)
  103. return "size[8,11]"..
  104. "list["..invname..";box;0,0;8,3;]"..
  105. "list[current_player;main;0,5;8,4;]"..
  106. "listring[]"
  107. end,
  108. inventory_list_sizes = {
  109. box=8*3,
  110. },
  111. }, S("Gondola wagon with rails"), "moretrains_wagon_gondola_rails_inv.png")
  112. minetest.register_craft({
  113. output = 'advtrains:moretrains_wagon_gondola',
  114. recipe = {
  115. {'group:wood', 'default:chest', 'group:wood'},
  116. {'advtrains:wheel', '', 'advtrains:wheel'},
  117. },
  118. })
  119. minetest.register_craft({
  120. output = "advtrains:moretrains_wagon_gondola_mese",
  121. type = "shapeless",
  122. recipe = {"advtrains:moretrains_wagon_gondola", "default:mese", "default:mese"},
  123. })
  124. minetest.register_craft({
  125. output = 'advtrains:moretrains_wagon_gondola_toiletpaper',
  126. recipe = {
  127. {'default:paper', 'default:paper', 'default:paper'},
  128. {'default:paper', 'advtrains:moretrains_wagon_gondola', 'default:paper'},
  129. {'default:paper', 'default:paper', 'default:paper'},
  130. },
  131. })
  132. minetest.register_craft({
  133. output = "advtrains:moretrains_wagon_gondola_cobble",
  134. type = "shapeless",
  135. recipe = {"advtrains:moretrains_wagon_gondola", "default:cobble", "default:cobble"},
  136. })
  137. minetest.register_craft({
  138. output = "advtrains:moretrains_wagon_gondola_rails",
  139. type = "shapeless",
  140. recipe = {"advtrains:moretrains_wagon_gondola", "advtrains:dtrack_placer", "advtrains:dtrack_placer"},
  141. })