crafts.lua 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044
  1. minetest.register_craftitem("bridger:bridges_wooden_rod", {
  2. description = "Wooden Rod",
  3. inventory_image = "bridges_wooden_rod.png",
  4. })
  5. minetest.register_craft({
  6. output = "default:stick",
  7. recipe = {
  8. {"bridger:bridges_wooden_rod"},
  9. }
  10. })
  11. minetest.register_craft({
  12. output = "bridger:bridges_wooden_rod 3",
  13. recipe = {
  14. {"group:stick"},
  15. {"group:stick"},
  16. {"group:stick"},
  17. }
  18. })
  19. minetest.register_craft({
  20. output = "bridger:scaffolding 2",
  21. recipe = {
  22. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  23. {"", "group:stick", ""},
  24. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  25. }
  26. })
  27. if minetest.settings:get_bool("bridger_enable_trusses", true) then
  28. minetest.register_craftitem("bridger:bridges_steel_rod", {
  29. description = "Steel Rod",
  30. inventory_image = "bridges_steel_rod.png",
  31. })
  32. minetest.register_craftitem("bridger:bridges_diagonal_steel_rod", {
  33. description = "Steel Rod",
  34. inventory_image = "bridges_diagonal_steel_rod.png",
  35. })
  36. minetest.register_craft({
  37. output = "bridger:bridges_steel_rod 3",
  38. recipe = {
  39. {"default:steel_ingot"},
  40. }
  41. })
  42. minetest.register_craft({
  43. output = "bridger:bridges_diagonal_steel_rod 3",
  44. recipe = {
  45. {"", "", "bridger:bridges_steel_rod"},
  46. {"", "bridger:bridges_steel_rod", ""},
  47. {"bridger:bridges_steel_rod", "", ""},
  48. }
  49. })
  50. minetest.register_craft({
  51. output = "bridger:train_deck_white",
  52. type = "shapeless",
  53. recipe = {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  54. })
  55. minetest.register_craft({
  56. output = "bridger:block_white",
  57. recipe = {
  58. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  59. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  60. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  61. }
  62. })
  63. local bridge_colors = {
  64. "green",
  65. "red",
  66. "steel",
  67. "white",
  68. "yellow"
  69. }
  70. for c in ipairs(bridge_colors) do
  71. local bridge_color = bridge_colors[c]
  72. minetest.register_craft({
  73. output = "bridger:deck_" .. bridge_color .. " 8",
  74. recipe = {
  75. {"bridger:block_" .. bridge_color},
  76. }
  77. })
  78. minetest.register_craft({
  79. output = "bridger:deck_edge_" .. bridge_color .. " 14",
  80. recipe = {
  81. {"", "bridger:block_" .. bridge_color},
  82. {"bridger:block_" .. bridge_color, ""},
  83. }
  84. })
  85. minetest.register_craft({
  86. output = "bridger:step_" .. bridge_color .. " 12",
  87. recipe = {
  88. {"", "bridger:block_" .. bridge_color},
  89. {"bridger:block_" .. bridge_color, "bridger:block_" .. bridge_color},
  90. }
  91. })
  92. minetest.register_craft({
  93. output = "bridger:step_" .. bridge_color .. " 12",
  94. recipe = {
  95. {"bridger:block_" .. bridge_color, ""},
  96. {"bridger:block_" .. bridge_color, "bridger:block_" .. bridge_color},
  97. }
  98. })
  99. minetest.register_craft({
  100. output = "bridger:block_" .. bridge_color,
  101. recipe = {
  102. {"bridger:step_" .. bridge_color, "bridger:step_" .. bridge_color},
  103. {"bridger:step_" .. bridge_color, "bridger:step_" .. bridge_color},
  104. }
  105. })
  106. minetest.register_craft({
  107. output = "bridger:suspension_cable_" .. bridge_color .. " 16",
  108. recipe = {
  109. {"bridger:block_" .. bridge_color},
  110. {"bridger:block_" .. bridge_color},
  111. {"bridger:block_" .. bridge_color},
  112. }
  113. })
  114. minetest.register_craft({
  115. output = "bridger:suspension_top_" .. bridge_color .. " 8",
  116. recipe = {
  117. {"bridger:block_" .. bridge_color, "bridger:block_" .. bridge_color, "bridger:block_" .. bridge_color},
  118. {"", "bridger:block_" .. bridge_color, ""},
  119. {"", "bridger:block_" .. bridge_color, ""},
  120. }
  121. })
  122. minetest.register_craft({
  123. output = "bridger:girder_mid_" .. bridge_color .. " 4",
  124. recipe = {
  125. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  126. {"bridger:bridges_steel_rod", "bridger:block_" .. bridge_color, "bridger:bridges_steel_rod"},
  127. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  128. }
  129. })
  130. minetest.register_craft({
  131. output = "bridger:girder_left_end_" .. bridge_color .. " 4",
  132. recipe = {
  133. {"", "", "bridger:bridges_steel_rod"},
  134. {"", "bridger:block_" .. bridge_color, "bridger:bridges_steel_rod"},
  135. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  136. }
  137. })
  138. minetest.register_craft({
  139. output = "bridger:girder_right_" .. bridge_color .. " 4",
  140. recipe = {
  141. {"bridger:bridges_steel_rod", "", ""},
  142. {"bridger:bridges_steel_rod", "bridger:block_" .. bridge_color, ""},
  143. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  144. }
  145. })
  146. minetest.register_craft({
  147. output = "bridger:corrugated_steel_" .. bridge_color,
  148. type = "shapeless",
  149. recipe = {"bridger:deck_" .. bridge_color, "default:coal_lump"},
  150. })
  151. minetest.register_craft({
  152. output = "bridger:corrugated_steel_ceiling_" .. bridge_color .. " 3",
  153. recipe = {
  154. {
  155. "bridger:corrugated_steel" .. bridge_color,
  156. "bridger:corrugated_steel" .. bridge_color,
  157. "bridger:corrugated_steel" .. bridge_color
  158. },
  159. }
  160. })
  161. minetest.register_craft({
  162. output = "bridger:truss_superstructure_left_slant_white",
  163. recipe = {
  164. {"", "bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  165. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  166. {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod", ""},
  167. }
  168. })
  169. minetest.register_craft({
  170. output = "bridger:truss_superstructure_right_slant_" .. bridge_color,
  171. recipe = {
  172. {"bridger:truss_superstructure_left_slant_" .. bridge_color},
  173. }
  174. })
  175. minetest.register_craft({
  176. output = "bridger:truss_superstructure_left_slant_" .. bridge_color,
  177. recipe = {
  178. {"bridger:truss_superstructure_right_slant_" .. bridge_color},
  179. }
  180. })
  181. minetest.register_craft({
  182. output = "bridger:corrugated_steel_ceiling_" .. bridge_color .. " 3",
  183. recipe = {
  184. {
  185. "bridger:corrugated_steel" .. bridge_color,
  186. "bridger:corrugated_steel" .. bridge_color,
  187. "bridger:corrugated_steel" .. bridge_color
  188. },
  189. }
  190. })
  191. minetest.register_craft({
  192. output = "bridger:truss_superstructure_tall_left_slant_" .. bridge_color,
  193. recipe = {
  194. {"bridger:bridges_steel_rod", "", "bridger:bridges_steel_rod"},
  195. {"", "bridger:truss_superstructure_left_slant_" .. bridge_color, ""},
  196. }
  197. })
  198. minetest.register_craft({
  199. output = "bridger:truss_superstructure_tall_right_slant_" .. bridge_color,
  200. recipe = {
  201. {"bridger:bridges_steel_rod", "", "bridger:bridges_steel_rod"},
  202. {"", "bridger:truss_superstructure_right_slant_" .. bridge_color, ""},
  203. }
  204. })
  205. minetest.register_craft({
  206. output = "bridger:truss_superstructure_tall_right_slant_" .. bridge_color,
  207. recipe = {
  208. {"bridger:truss_superstructure_tall_left_slant_" .. bridge_color},
  209. }
  210. })
  211. minetest.register_craft({
  212. output = "bridger:truss_superstructure_tall_left_slant_" .. bridge_color,
  213. recipe = {
  214. {"bridger:truss_superstructure_tall_right_slant_" .. bridge_color},
  215. }
  216. })
  217. minetest.register_craft({
  218. output = "bridger:truss_superstructure_up_left_slant_" .. bridge_color,
  219. recipe = {
  220. {"", "", "bridger:bridges_steel_rod"},
  221. {"", "bridger:truss_superstructure_left_slant_" .. bridge_color, ""},
  222. }
  223. })
  224. minetest.register_craft({
  225. output = "bridger:truss_superstructure_up_right_slant_" .. bridge_color,
  226. recipe = {
  227. {"", "", "bridger:bridges_steel_rod"},
  228. {"", "bridger:truss_superstructure_right_slant_" .. bridge_color, ""},
  229. }
  230. })
  231. minetest.register_craft({
  232. output = "bridger:truss_superstructure_down_left_slant_" .. bridge_color,
  233. recipe = {
  234. {"bridger:bridges_steel_rod", "", ""},
  235. {"", "bridger:truss_superstructure_left_slant_" .. bridge_color, ""},
  236. }
  237. })
  238. minetest.register_craft({
  239. output = "bridger:truss_superstructure_down_right_slant_" .. bridge_color,
  240. recipe = {
  241. {"bridger:bridges_steel_rod", "", ""},
  242. {"", "bridger:truss_superstructure_right_slant_" .. bridge_color, ""},
  243. }
  244. })
  245. minetest.register_craft({
  246. output = "bridger:truss_superstructure_up_right_slant_" .. bridge_color,
  247. recipe = {
  248. {"bridger:truss_superstructure_up_left_slant_" .. bridge_color},
  249. }
  250. })
  251. minetest.register_craft({
  252. output = "bridger:truss_superstructure_up_left_slant_" .. bridge_color,
  253. recipe = {
  254. {"bridger:truss_superstructure_up_right_slant_" .. bridge_color},
  255. }
  256. })
  257. minetest.register_craft({
  258. output = "bridger:truss_superstructure_down_right_slant_" .. bridge_color,
  259. recipe = {
  260. {"bridger:truss_superstructure_down_left_slant_" .. bridge_color},
  261. }
  262. })
  263. minetest.register_craft({
  264. output = "bridger:truss_superstructure_down_left_slant_" .. bridge_color,
  265. recipe = {
  266. {"bridger:truss_superstructure_down_right_slant_" .. bridge_color},
  267. }
  268. })
  269. minetest.register_craft({
  270. output = "bridger:truss_superstructure_end_left_slant_white",
  271. recipe = {
  272. {"", "", "bridger:bridges_diagonal_steel_rod"},
  273. {"", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  274. {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod", ""},
  275. }
  276. })
  277. minetest.register_craft({
  278. output = "bridger:truss_superstructure_end_right_" .. bridge_color,
  279. recipe = {
  280. {"bridger:truss_superstructure_end_left_slant_" .. bridge_color},
  281. }
  282. })
  283. minetest.register_craft({
  284. output = "bridger:truss_superstructure_end_left_" .. bridge_color,
  285. recipe = {
  286. {"bridger:truss_superstructure_end_right_slant_" .. bridge_color},
  287. }
  288. })
  289. minetest.register_craft({
  290. output = "bridger:truss_superstructure_mid_" .. bridge_color,
  291. type = "shapeless",
  292. recipe = {
  293. "bridger:truss_superstructure_left_slant_" .. bridge_color,
  294. "bridger:truss_superstructure_right_slant_" .. bridge_color
  295. },
  296. })
  297. minetest.register_craft({
  298. output = "bridger:truss_superstructure_tall_mid_" .. bridge_color,
  299. type = "shapeless",
  300. recipe = {
  301. "bridger:truss_superstructure_tall_left_slant_" .. bridge_color,
  302. "bridger:truss_superstructure_tall_right_slant_" .. bridge_color
  303. },
  304. })
  305. minetest.register_craft({
  306. output = "bridger:truss_superstructure_tall_mid_" .. bridge_color,
  307. recipe = {
  308. {"bridger:bridges_steel_rod", "", "bridger:bridges_steel_rod"},
  309. {"", "bridger:truss_superstructure_mid_" .. bridge_color, ""},
  310. }
  311. })
  312. minetest.register_craft({
  313. output = "bridger:truss_superstructure_up_mid_" .. bridge_color,
  314. recipe = {
  315. {"", "", "bridger:bridges_steel_rod"},
  316. {"", "bridger:truss_superstructure_mid_" .. bridge_color, ""},
  317. }
  318. })
  319. minetest.register_craft({
  320. output = "bridger:truss_superstructure_down_mid_" .. bridge_color,
  321. recipe = {
  322. {"bridger:bridges_steel_rod", "", ""},
  323. {"", "bridger:truss_superstructure_mid_" .. bridge_color, ""},
  324. }
  325. })
  326. minetest.register_craft({
  327. output = "bridger:truss_substructure_left_slant_white",
  328. recipe = {
  329. {"", "bridger:bridges_steel_rod", ""},
  330. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  331. {"", "bridger:bridges_steel_rod", ""},
  332. }
  333. })
  334. minetest.register_craft({
  335. output = "bridger:truss_substructure_right_slant_" .. bridge_color,
  336. recipe = {
  337. {"bridger:truss_substructure_left_slant_" .. bridge_color},
  338. }
  339. })
  340. minetest.register_craft({
  341. output = "bridger:truss_substructure_left_slant_" .. bridge_color,
  342. recipe = {
  343. {"bridger:truss_substructure_right_slant_" .. bridge_color},
  344. }
  345. })
  346. minetest.register_craft({
  347. output = "bridger:truss_substructure_end_left_slant_white",
  348. recipe = {
  349. {"", "bridger:bridges_steel_rod"},
  350. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  351. }
  352. })
  353. minetest.register_craft({
  354. output = "bridger:truss_substructure_end_right_" .. bridge_color,
  355. recipe = {
  356. {"bridger:truss_substructure_end_left_slant_" .. bridge_color},
  357. }
  358. })
  359. minetest.register_craft({
  360. output = "bridger:truss_substructure_end_left_" .. bridge_color,
  361. recipe = {
  362. {"bridger:truss_substructure_end_right_slant_" .. bridge_color},
  363. }
  364. })
  365. minetest.register_craft({
  366. output = "bridger:truss_substructure_mid_" .. bridge_color,
  367. type = "shapeless",
  368. recipe = {
  369. "bridger:truss_substructure_left_slant_" .. bridge_color,
  370. "bridger:truss_substructure_right_slant_" .. bridge_color
  371. },
  372. })
  373. minetest.register_craft({
  374. output = "bridger:truss_substructure_simple_white",
  375. recipe = {
  376. {"", "bridger:bridges_steel_rod", ""},
  377. {"bridger:bridges_diagonal_steel_rod", "", "bridger:bridges_diagonal_steel_rod"},
  378. {"", "bridger:bridges_steel_rod", ""},
  379. }
  380. })
  381. minetest.register_craft({
  382. output = "bridger:small_upper_chord_white",
  383. recipe = {
  384. {"", "bridger:bridges_steel_rod", ""},
  385. {"", "bridger:bridges_diagonal_steel_rod", ""},
  386. {"", "bridger:bridges_steel_rod", ""},
  387. }
  388. })
  389. minetest.register_craft({
  390. output = "bridger:medium_upper_chord_white",
  391. recipe = {
  392. {"", "bridger:bridges_steel_rod", ""},
  393. {"", "bridger:bridges_diagonal_steel_rod", ""},
  394. {"", "bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  395. }
  396. })
  397. minetest.register_craft({
  398. output = "bridger:medium_upper_chord_white",
  399. recipe = {
  400. {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod", ""},
  401. {"", "bridger:bridges_diagonal_steel_rod", ""},
  402. {"", "bridger:bridges_steel_rod", ""},
  403. }
  404. })
  405. minetest.register_craft({
  406. output = "bridger:small_upper_chord_slanted_" .. bridge_color,
  407. recipe = {
  408. {"bridger:small_upper_chord_" .. bridge_color},
  409. }
  410. })
  411. minetest.register_craft({
  412. output = "bridger:medium_upper_chord_slanted_" .. bridge_color,
  413. recipe = {
  414. {"bridger:medium_upper_chord_" .. bridge_color},
  415. }
  416. })
  417. minetest.register_craft({
  418. output = "bridger:medium_upper_chord_slanted_" .. bridge_color,
  419. recipe = {
  420. {"bridger:medium_upper_chord_" .. bridge_color},
  421. }
  422. })
  423. minetest.register_craft({
  424. output = "bridger:small_upper_chord_" .. bridge_color,
  425. recipe = {
  426. {"bridger:small_upper_chord_slanted_" .. bridge_color},
  427. }
  428. })
  429. minetest.register_craft({
  430. output = "bridger:medium_upper_chord_" .. bridge_color,
  431. recipe = {
  432. {"bridger:medium_upper_chord_slanted_" .. bridge_color},
  433. }
  434. })
  435. minetest.register_craft({
  436. output = "bridger:medium_upper_chord_" .. bridge_color,
  437. recipe = {
  438. {"bridger:medium_upper_chord_slanted_" .. bridge_color},
  439. }
  440. })
  441. minetest.register_craft({
  442. output = "bridger:large_upper_chord_white",
  443. recipe = {
  444. {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod", ""},
  445. {"", "bridger:bridges_diagonal_steel_rod", ""},
  446. {"", "bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  447. }
  448. })
  449. minetest.register_craft({
  450. output = "bridger:small_support_white",
  451. recipe = {
  452. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  453. }
  454. })
  455. minetest.register_craft({
  456. output = "bridger:small_support_top_" .. bridge_color,
  457. recipe = {
  458. {"bridger:small_support_" .. bridge_color},
  459. {"bridger:small_support_" .. bridge_color},
  460. }
  461. })
  462. minetest.register_craft({
  463. output = "bridger:medium_support_white",
  464. recipe = {
  465. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  466. {"", "", "bridger:bridges_diagonal_steel_rod"},
  467. }
  468. })
  469. minetest.register_craft({
  470. output = "bridger:medium_support_white",
  471. recipe = {
  472. {"bridger:bridges_diagonal_steel_rod", "", ""},
  473. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  474. }
  475. })
  476. minetest.register_craft({
  477. output = "bridger:medium_support_bot_white",
  478. recipe = {
  479. {"bridger:bridges_steel_rod", "bridger:bridges_steel_rod"},
  480. }
  481. })
  482. minetest.register_craft({
  483. output = "bridger:large_support_white",
  484. recipe = {
  485. {"bridger:bridges_diagonal_steel_rod", "", ""},
  486. {"bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod"},
  487. {"", "", "bridger:bridges_diagonal_steel_rod"},
  488. }
  489. })
  490. minetest.register_craft({
  491. output = "bridger:large_support_bot_white",
  492. recipe = {
  493. {"bridger:bridges_steel_rod", "", "bridger:bridges_steel_rod"},
  494. }
  495. })
  496. minetest.register_craft({
  497. output = "bridger:truss_superstructure_simple_end_right_white",
  498. recipe = {
  499. {"bridger:bridges_steel_rod"},
  500. {"bridger:bridges_steel_rod"},
  501. {"bridger:bridges_steel_rod"},
  502. }
  503. })
  504. minetest.register_craft({
  505. output = "bridger:truss_superstructure_simple_end_left_white",
  506. recipe = {
  507. {"bridger:bridges_diagonal_steel_rod"},
  508. {"bridger:bridges_diagonal_steel_rod"},
  509. {"bridger:bridges_diagonal_steel_rod"},
  510. }
  511. })
  512. minetest.register_craft({
  513. output = "bridger:truss_superstructure_simple_white",
  514. recipe = {
  515. {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  516. {"bridger:bridges_diagonal_steel_rod", "", "bridger:bridges_diagonal_steel_rod"},
  517. {"bridger:bridges_diagonal_steel_rod", "bridger:bridges_steel_rod", "bridger:bridges_diagonal_steel_rod"},
  518. }
  519. })
  520. minetest.register_craft({
  521. output = "bridger:truss_superstructure_tall_simple_end_right_" .. bridge_color,
  522. recipe = {
  523. {"bridger:bridges_steel_rod"},
  524. {"bridger:truss_superstructure_tall_simple_end_right_" .. bridge_color},
  525. }
  526. })
  527. minetest.register_craft({
  528. output = "bridger:truss_superstructure_tall_simple_end_left_" .. bridge_color,
  529. recipe = {
  530. {"bridger:bridges_diagonal_steel_rod"},
  531. {"bridger:truss_superstructure_tall_simple_end_left_" .. bridge_color},
  532. }
  533. })
  534. minetest.register_craft({
  535. output = "bridger:truss_superstructure_tall_simple_" .. bridge_color,
  536. recipe = {
  537. {"bridger:bridges_diagonal_steel_rod", "", "bridger:bridges_diagonal_steel_rod"},
  538. {"", "bridger:truss_superstructure_simple_" .. bridge_color, ""},
  539. }
  540. })
  541. minetest.register_craft({
  542. output = "bridger:truss_superstructure_tall_simple_" .. bridge_color,
  543. recipe = {
  544. {"bridger:bridges_steel_rod", "", "bridger:bridges_steel_rod"},
  545. {"", "bridger:truss_superstructure_simple_" .. bridge_color, ""},
  546. }
  547. })
  548. minetest.register_craft({
  549. output = "bridger:truss_superstructure_up_simple_" .. bridge_color,
  550. recipe = {
  551. {"", "", "bridger:bridges_steel_rod"},
  552. {"", "bridger:truss_superstructure_simple_" .. bridge_color, ""},
  553. }
  554. })
  555. minetest.register_craft({
  556. output = "bridger:truss_superstructure_down_mid_" .. bridge_color,
  557. recipe = {
  558. {"bridger:bridges_steel_rod", "", ""},
  559. {"", "bridger:truss_superstructure_simple_" .. bridge_color, ""},
  560. }
  561. })
  562. end
  563. local bridge_nodes = {
  564. "block_",
  565. "step_",
  566. "suspension_top_",
  567. "suspension_cable_",
  568. "deck_",
  569. "deck_edge_",
  570. "train_deck_",
  571. "girder_mid_",
  572. "girder_right_",
  573. "girder_left_end_",
  574. "truss_superstructure_right_slant_",
  575. "truss_superstructure_left_slant_",
  576. "truss_superstructure_end_right_slant_",
  577. "truss_superstructure_end_left_slant_",
  578. "truss_superstructure_mid_",
  579. "truss_superstructure_simple_",
  580. "truss_superstructure_simple_end_left_",
  581. "truss_superstructure_simple_end_right_",
  582. "truss_superstructure_tall_right_slant_",
  583. "truss_superstructure_tall_left_slant_",
  584. "truss_superstructure_tall_end_right_slant_",
  585. "truss_superstructure_tall_end_left_slant_",
  586. "truss_superstructure_tall_mid_",
  587. "truss_superstructure_tall_simple_",
  588. "truss_superstructure_tall_simple_end_left_",
  589. "truss_superstructure_tall_simple_end_right_",
  590. "truss_superstructure_up_right_slant_",
  591. "truss_superstructure_up_left_slant_",
  592. "truss_superstructure_up_mid_",
  593. "truss_superstructure_up_simple_",
  594. "truss_superstructure_down_right_slant_",
  595. "truss_superstructure_down_left_slant_",
  596. "truss_superstructure_down_mid_",
  597. "truss_superstructure_down_simple_",
  598. "truss_substructure_end_right_slant_",
  599. "truss_substructure_end_left_slant_",
  600. "truss_substructure_right_slant_",
  601. "truss_substructure_left_slant_",
  602. "truss_substructure_simple_",
  603. "truss_substructure_mid_",
  604. "truss_substructure_mid_simple_",
  605. "small_upper_chord_",
  606. "medium_upper_chord_",
  607. "large_upper_chord_",
  608. "small_upper_chord_slanted",
  609. "medium_upper_chord_slanted",
  610. "large_upper_chord_slanted",
  611. "small_support_",
  612. "small_support_top",
  613. "medium_support_",
  614. "large_support_",
  615. "medium_support_bot",
  616. "large_support_bot",
  617. "corrugated_steel_",
  618. "corrugated_steel_ceiling_",
  619. }
  620. for c in ipairs(bridge_nodes) do
  621. local bridge_node = bridge_nodes[c]
  622. minetest.register_craft({
  623. output = "bridger:" .. bridge_node .. "white",
  624. type = "shapeless",
  625. recipe = {"bridger:" .. bridge_node .. "yellow", "dye:white"},
  626. })
  627. minetest.register_craft({
  628. output = "bridger:" .. bridge_node .. "white",
  629. type = "shapeless",
  630. recipe = {"bridger:" .. bridge_node .. "steel", "dye:white"},
  631. })
  632. minetest.register_craft({
  633. output = "bridger:" .. bridge_node .. "white",
  634. type = "shapeless",
  635. recipe = {"bridger:" .. bridge_node .. "green", "dye:white"},
  636. })
  637. minetest.register_craft({
  638. output = "bridger:" .. bridge_node .. "white",
  639. type = "shapeless",
  640. recipe = {"bridger:" .. bridge_node .. "red", "dye:white"},
  641. })
  642. minetest.register_craft({
  643. output = "bridger:" .. bridge_node .. "red",
  644. type = "shapeless",
  645. recipe = {"bridger:" .. bridge_node .. "white", "dye:red"},
  646. })
  647. minetest.register_craft({
  648. output = "bridger:" .. bridge_node .. "red",
  649. type = "shapeless",
  650. recipe = {"bridger:" .. bridge_node .. "steel", "dye:red"},
  651. })
  652. minetest.register_craft({
  653. output = "bridger:" .. bridge_node .. "red",
  654. type = "shapeless",
  655. recipe = {"bridger:" .. bridge_node .. "green", "dye:red"},
  656. })
  657. minetest.register_craft({
  658. output = "bridger:" .. bridge_node .. "red",
  659. type = "shapeless",
  660. recipe = {"bridger:" .. bridge_node .. "yellow", "dye:red"},
  661. })
  662. minetest.register_craft({
  663. output = "bridger:" .. bridge_node .. "green",
  664. type = "shapeless",
  665. recipe = {"bridger:" .. bridge_node .. "white", "dye:green"},
  666. })
  667. minetest.register_craft({
  668. output = "bridger:" .. bridge_node .. "green",
  669. type = "shapeless",
  670. recipe = {"bridger:" .. bridge_node .. "steel", "dye:green"},
  671. })
  672. minetest.register_craft({
  673. output = "bridger:" .. bridge_node .. "green",
  674. type = "shapeless",
  675. recipe = {"bridger:" .. bridge_node .. "yellow", "dye:green"},
  676. })
  677. minetest.register_craft({
  678. output = "bridger:" .. bridge_node .. "green",
  679. type = "shapeless",
  680. recipe = {"bridger:" .. bridge_node .. "red", "dye:green"},
  681. })
  682. minetest.register_craft({
  683. output = "bridger:" .. bridge_node .. "steel",
  684. type = "shapeless",
  685. recipe = {"bridger:" .. bridge_node .. "white", "dye:black"},
  686. })
  687. minetest.register_craft({
  688. output = "bridger:" .. bridge_node .. "steel",
  689. type = "shapeless",
  690. recipe = {"bridger:" .. bridge_node .. "yellow", "dye:black"},
  691. })
  692. minetest.register_craft({
  693. output = "bridger:" .. bridge_node .. "steel",
  694. type = "shapeless",
  695. recipe = {"bridger:" .. bridge_node .. "green", "dye:black"},
  696. })
  697. minetest.register_craft({
  698. output = "bridger:" .. bridge_node .. "steel",
  699. type = "shapeless",
  700. recipe = {"bridger:" .. bridge_node .. "red", "dye:black"},
  701. })
  702. minetest.register_craft({
  703. output = "bridger:" .. bridge_node .. "steel",
  704. type = "shapeless",
  705. recipe = {"bridger:" .. bridge_node .. "white", "dye:dark_grey"},
  706. })
  707. minetest.register_craft({
  708. output = "bridger:" .. bridge_node .. "steel",
  709. type = "shapeless",
  710. recipe = {"bridger:" .. bridge_node .. "yellow", "dye:dark_grey"},
  711. })
  712. minetest.register_craft({
  713. output = "bridger:" .. bridge_node .. "steel",
  714. type = "shapeless",
  715. recipe = {"bridger:" .. bridge_node .. "green", "dye:dark_grey"},
  716. })
  717. minetest.register_craft({
  718. output = "bridger:" .. bridge_node .. "steel",
  719. type = "shapeless",
  720. recipe = {"bridger:" .. bridge_node .. "red", "dye:dark_grey"},
  721. })
  722. minetest.register_craft({
  723. output = "bridger:" .. bridge_node .. "yellow",
  724. type = "shapeless",
  725. recipe = {"bridger:" .. bridge_node .. "white", "dye:yellow"},
  726. })
  727. minetest.register_craft({
  728. output = "bridger:" .. bridge_node .. "yellow",
  729. type = "shapeless",
  730. recipe = {"bridger:" .. bridge_node .. "steel", "dye:yellow"},
  731. })
  732. minetest.register_craft({
  733. output = "bridger:" .. bridge_node .. "yellow",
  734. type = "shapeless",
  735. recipe = {"bridger:" .. bridge_node .. "green", "dye:yellow"},
  736. })
  737. minetest.register_craft({
  738. output = "bridger:" .. bridge_node .. "yellow",
  739. type = "shapeless",
  740. recipe = {"bridger:" .. bridge_node .. "red", "dye:yellow"},
  741. })
  742. minetest.register_craft({
  743. output = "bridger:" .. bridge_node .. "red",
  744. type = "shapeless",
  745. recipe = {"bridger:" .. bridge_node .. "yellow", "dye:red"},
  746. })
  747. end
  748. end
  749. if minetest.settings:get_bool("bridger_enable_trestles", true) then
  750. minetest.register_craft({
  751. output = "bridger:trestle_support_small",
  752. recipe = {
  753. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  754. }
  755. })
  756. minetest.register_craft({
  757. output = "bridger:trestle_support_small",
  758. recipe = {
  759. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  760. {"bridger:bridges_wooden_rod", "group:stick", "bridger:bridges_wooden_rod"},
  761. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  762. }
  763. })
  764. minetest.register_craft({
  765. output = "bridger:trestle_deck",
  766. recipe = {
  767. {"bridger:bridges_wooden_rod"},
  768. {"bridger:bridges_wooden_rod"},
  769. {"bridger:bridges_wooden_rod"},
  770. }
  771. })
  772. minetest.register_craft({
  773. output = "bridger:trestle_side",
  774. recipe = {
  775. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  776. {"", "group:stick", ""},
  777. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  778. }
  779. })
  780. minetest.register_craft({
  781. output = "bridger:trestle_substructure_small",
  782. recipe = {
  783. {"group:stick", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  784. {"", "group:stick", "bridger:bridges_wooden_rod"},
  785. {"", "", "group:stick"},
  786. }
  787. })
  788. minetest.register_craft({
  789. output = "bridger:trestle_substructure_large",
  790. recipe = {
  791. {"group:stick", "", "bridger:bridges_wooden_rod"},
  792. {"group:stick", "group:stick", "bridger:bridges_wooden_rod"},
  793. {"", "group:stick", "group:stick"},
  794. }
  795. })
  796. minetest.register_craft({
  797. output = "bridger:lattice_truss",
  798. recipe = {
  799. {"group:stick", "", "group:stick"},
  800. {"", "bridger:bridges_wooden_rod", ""},
  801. {"group:stick", "", "group:stick"},
  802. }
  803. })
  804. minetest.register_craft({
  805. output = "bridger:deck_wood",
  806. recipe = {
  807. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  808. }
  809. })
  810. end
  811. if minetest.settings:get_bool("bridger_enable_wooden_bridges", true) then
  812. minetest.register_craft({
  813. output = "bridger:small_beam",
  814. recipe = {
  815. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  816. {"", "group:wood", ""},
  817. }
  818. })
  819. minetest.register_craft({
  820. output = "bridger:small_beam_mid",
  821. recipe = {
  822. {"", "bridger:bridges_wooden_rod", ""},
  823. {"", "group:wood", ""},
  824. }
  825. })
  826. minetest.register_craft({
  827. output = "bridger:small_beam_end",
  828. recipe = {
  829. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  830. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  831. {"", "group:wood", ""},
  832. }
  833. })
  834. minetest.register_craft({
  835. output = "bridger:small_beam_corner",
  836. recipe = {
  837. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  838. {"bridger:bridges_wooden_rod", "", ""},
  839. {"", "group:wood", ""},
  840. }
  841. })
  842. minetest.register_craft({
  843. output = "bridger:small_beam_3",
  844. recipe = {
  845. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  846. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  847. {"", "group:wood", ""},
  848. }
  849. })
  850. minetest.register_craft({
  851. output = "bridger:small_beam_4",
  852. recipe = {
  853. {"bridger:bridges_wooden_rod", "", "bridger:bridges_wooden_rod"},
  854. {"", "", ""},
  855. {"", "group:wood", ""},
  856. }
  857. })
  858. minetest.register_craft({
  859. output = "bridger:small_beam_stair",
  860. recipe = {
  861. {"", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  862. {"bridger:bridges_wooden_rod", "", "group:wood"},
  863. {"bridger:bridges_wooden_rod", "group:wood", ""},
  864. }
  865. })
  866. minetest.register_craft({
  867. output = "bridger:large_beam",
  868. recipe = {
  869. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  870. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  871. {"bridger:bridges_wooden_rod", "group:wood", "bridger:bridges_wooden_rod"},
  872. }
  873. })
  874. minetest.register_craft({
  875. output = "bridger:large_fancy_beam",
  876. recipe = {
  877. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  878. {"bridger:bridges_wooden_rod", "group:wood", "bridger:bridges_wooden_rod"},
  879. {"bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod", "bridger:bridges_wooden_rod"},
  880. }
  881. })
  882. minetest.register_craft({
  883. output = "bridger:large_beam_swivel_normal",
  884. recipe = {
  885. {"bridger:large_beam"},
  886. }
  887. })
  888. minetest.register_craft({
  889. output = "bridger:large_beam",
  890. recipe = {
  891. {"bridger:large_beam_swivel_normal"},
  892. }
  893. })
  894. minetest.register_craft({
  895. output = "bridger:large_drawbridge_normal",
  896. recipe = {
  897. {"bridger:small_beam", "bridger:small_beam"},
  898. }
  899. })
  900. minetest.register_craft({
  901. output = "bridger:small_beam 2",
  902. recipe = {
  903. {"bridger:large_drawbridge_normal"},
  904. }
  905. })
  906. minetest.register_craft({
  907. output = "bridger:foundation 3",
  908. recipe = {
  909. {"", "default:clay", ""},
  910. {"default:clay", "default:clay", "default:clay"},
  911. }
  912. })
  913. end