craftitems.lua 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. local rc = laptop.recipe_compat -- Recipe items from other mods
  2. ----------------------------
  3. ---------PROCESSORS---------
  4. ----------------------------
  5. minetest.register_craftitem("laptop:cpu_c6", {
  6. description = 'Ziram c6 Processor',
  7. inventory_image = "laptop_cpu_c6.png",
  8. })
  9. minetest.register_craft({
  10. output = 'laptop:cpu_c6',
  11. recipe = {
  12. {'', '', ''},
  13. {rc.silicon, rc.gates_diode, rc.tin},
  14. {rc.gates_and, rc.gates_or, rc.gates_nand},
  15. }
  16. })
  17. minetest.register_craftitem("laptop:cpu_d75a", {
  18. description = 'Interlink D75A Processor',
  19. inventory_image = "laptop_cpu_d75a.png",
  20. })
  21. minetest.register_craft({
  22. output = 'laptop:cpu_d75a',
  23. recipe = {
  24. {rc.silicon, rc.silicon, rc.silicon},
  25. {rc.gates_xor, rc.copper, rc.gates_nand},
  26. {rc.fpga, rc.programmer, rc.fpga},
  27. }
  28. })
  29. minetest.register_craftitem("laptop:cpu_jetcore", {
  30. description = 'Interlink jetCore Processor',
  31. inventory_image = "laptop_cpu_jetcore.png",
  32. })
  33. minetest.register_craft({
  34. output = 'laptop:cpu_jetcore',
  35. recipe = {
  36. {rc.silicon, rc.silicon, rc.silicon},
  37. {rc.fiber, rc.gold, rc.delayer},
  38. {rc.fpga, rc.controller, rc.programmer},
  39. }
  40. })
  41. minetest.register_craftitem("laptop:cpu_65536", {
  42. description = 'Transpose 65536 Processor',
  43. inventory_image = "laptop_cpu_65536.png",
  44. })
  45. minetest.register_craft({
  46. output = 'laptop:cpu_65536',
  47. recipe = {
  48. {'', '', ''},
  49. {rc.silicon, rc.copper, rc.silicon},
  50. {rc.gates_not, rc.fpga, rc.delayer},
  51. }
  52. })
  53. minetest.register_craftitem("laptop:bat", {
  54. description = 'Battery',
  55. inventory_image = "laptop_bat.png",
  56. })
  57. minetest.register_craft({
  58. output = 'laptop:bat',
  59. recipe = {
  60. {rc.steel, rc.steel, rc.steel},
  61. {rc.steel, rc.gates_diode, rc.steel},
  62. {rc.steel, rc.steel, rc.steel},
  63. }
  64. })
  65. minetest.register_craftitem("laptop:case", {
  66. description = 'Case',
  67. inventory_image = "laptop_case.png",
  68. })
  69. minetest.register_craft({
  70. output = 'laptop:case',
  71. recipe = {
  72. {rc.steel, rc.steel, rc.steel},
  73. {rc.steel, '', rc.steel},
  74. {rc.steel, rc.steel, rc.steel},
  75. }
  76. })
  77. minetest.register_craftitem("laptop:crt", {
  78. description = 'CRT Screen',
  79. inventory_image = "laptop_crt.png",
  80. })
  81. minetest.register_craft({
  82. output = 'laptop:crt',
  83. recipe = {
  84. {rc.glass, rc.glass, rc.glass},
  85. {rc.light_red , rc.light_green, rc.light_blue},
  86. {rc.steel, rc.controller, rc.steel},
  87. }
  88. })
  89. minetest.register_craftitem("laptop:crt_amber", {
  90. description = 'Amber CRT Screen',
  91. inventory_image = "laptop_crt_amber.png",
  92. })
  93. minetest.register_craft({
  94. output = 'laptop:crt_amber',
  95. recipe = {
  96. {rc.glass, 'dye:orange', rc.glass},
  97. {rc.light_red , rc.light_green, rc.light_blue},
  98. {rc.steel, rc.controller, rc.steel},
  99. }
  100. })
  101. minetest.register_craftitem("laptop:crt_green", {
  102. description = 'Green CRT Screen',
  103. inventory_image = "laptop_crt_green.png",
  104. })
  105. minetest.register_craft({
  106. output = 'laptop:crt_green',
  107. recipe = {
  108. {rc.glass, 'dye:green', rc.glass},
  109. {rc.light_red , rc.light_green, rc.light_blue},
  110. {rc.steel, rc.controller, rc.steel},
  111. }
  112. })
  113. minetest.register_craftitem("laptop:lcd", {
  114. description = 'LCD Screen',
  115. inventory_image = "laptop_lcd.png",
  116. })
  117. minetest.register_craft({
  118. output = 'laptop:lcd',
  119. recipe = {
  120. {rc.light_red , rc.light_green, rc.light_blue},
  121. {'dye:black', rc.controller, 'dye:black'},
  122. {rc.steel, rc.diamond, rc.steel},
  123. }
  124. })
  125. minetest.register_craftitem("laptop:gpu", {
  126. description = 'GPU',
  127. inventory_image = "laptop_gpu.png",
  128. })
  129. minetest.register_craft({
  130. output = 'laptop:gpu',
  131. recipe = {
  132. {rc.steel, rc.steel, rc.steel},
  133. {rc.steel, rc.fpga, rc.steel},
  134. {rc.steel, rc.steel, rc.steel},
  135. }
  136. })
  137. minetest.register_craftitem("laptop:HDD", {
  138. description = 'Hard Drive',
  139. inventory_image = "laptop_harddrive.png",
  140. })
  141. minetest.register_craft({
  142. output = 'laptop:HDD',
  143. recipe = {
  144. {rc.steel, rc.steel, rc.steel},
  145. {rc.steel, rc.controller, rc.steel},
  146. {rc.steel, rc.steel, rc.steel},
  147. }
  148. })
  149. minetest.register_craftitem("laptop:motherboard", {
  150. description = 'Motherboard',
  151. inventory_image = "laptop_motherboard.png",
  152. })
  153. minetest.register_craft({
  154. output = 'laptop:motherboard',
  155. recipe = {
  156. {rc.controller, rc.fpga, rc.gates_nand},
  157. {'dye:dark_green', 'dye:dark_green', 'dye:dark_green'},
  158. {rc.steel, rc.steel, rc.steel},
  159. }
  160. })
  161. minetest.register_craftitem("laptop:fan", {
  162. description = 'Fan',
  163. inventory_image = "laptop_fan.png",
  164. })
  165. minetest.register_craft({
  166. output = 'laptop:fan',
  167. recipe = {
  168. {'', rc.steel, ''},
  169. {rc.steel, rc.steel, rc.steel},
  170. {'', rc.steel, ''},
  171. }
  172. })
  173. minetest.register_craftitem("laptop:psu", {
  174. description = 'PSU',
  175. inventory_image = "laptop_psu.png",
  176. })
  177. minetest.register_craft({
  178. output = 'laptop:psu',
  179. recipe = {
  180. {rc.steel, rc.steel, rc.steel},
  181. {rc.controller, rc.fpga, 'laptop:fan'},
  182. {rc.steel, rc.steel, rc.steel},
  183. }
  184. })
  185. minetest.register_craftitem("laptop:floppy", {
  186. description = 'High density floppy',
  187. inventory_image = "laptop_diskette.png",
  188. groups = {laptop_removable_floppy = 1},
  189. stack_max = 1,
  190. })
  191. minetest.register_craft({
  192. output = 'laptop:floppy',
  193. recipe = {
  194. {rc.steel, rc.steel, rc.steel},
  195. {rc.steel, rc.programmer, rc.steel},
  196. {rc.steel, rc.steel, rc.steel},
  197. }
  198. })
  199. minetest.register_craftitem("laptop:usbstick", {
  200. description = 'USB storage stick',
  201. inventory_image = "laptop_usb.png",
  202. groups = {laptop_removable_usb = 1},
  203. stack_max = 1,
  204. })
  205. minetest.register_craft({
  206. output = 'laptop:usbstick',
  207. recipe = {
  208. {'', rc.steel, ''},
  209. {'', rc.programmer, ''},
  210. {'', rc.steel, ''},
  211. }
  212. })
  213. minetest.register_craftitem("laptop:printed_paper", {
  214. description = 'Printed paper',
  215. inventory_image = "laptop_printed_paper.png",
  216. groups = {not_in_creative_inventory = 1},
  217. stack_max = 1,
  218. on_use = function(itemstack, user)
  219. local meta = itemstack:get_meta()
  220. local data = meta:to_table().fields
  221. local formspec = "size[8,8]" .. default.gui_bg .. default.gui_bg_img ..
  222. "label[0,0;" .. minetest.formspec_escape(data.title or "unnamed") ..
  223. " by " .. (data.author or "unknown") .. " from " .. os.date("%c", data.timestamp) .. "]"..
  224. "textarea[0.5,1;7.5,7;;" ..
  225. minetest.formspec_escape(data.text or "test text") .. ";]"
  226. minetest.show_formspec(user:get_player_name(), "laptop:printed_paper", formspec)
  227. return itemstack
  228. end
  229. })