engine.lua 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. minetest.register_node("ufowreck:alien_engine", {
  2. description = "Alien Engine",
  3. sunlight_propagates = false,
  4. tiles = {
  5. "scifi_nodes_lighttop.png",
  6. "scifi_nodes_lighttop.png",
  7. {name="scifi_nodes_black_screen.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.00},},
  8. {name="scifi_nodes_black_screen.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.00},},
  9. {name="scifi_nodes_black_screen.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.00},},
  10. {name="scifi_nodes_black_screen.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.00},}
  11. },
  12. light_source = 10,
  13. paramtype = "light",
  14. groups = {cracky=2, technic_machine = 1, technic_hv = 1},
  15. sounds = default.node_sound_metal_defaults(),
  16. connect_sides = {"top", "bottom"},
  17. on_construct = function(pos)
  18. local meta = minetest.get_meta(pos)
  19. meta:set_string("infotext", "Alien Engine")
  20. meta:set_int("HV_EU_supply", 5000)
  21. end,
  22. })
  23. --technic.register_machine("HV", "ufowreck:alien_engine", technic.producer)
  24. minetest.register_node("ufowreck:alien_health_charger0", {
  25. description = "Alien Charger",
  26. tiles = {
  27. "scifi_nodes_lighttop.png",
  28. "scifi_nodes_lighttop.png",
  29. "scifi_nodes_lighttop.png",
  30. "scifi_nodes_lighttop.png",
  31. "scifi_nodes_lighttop.png",
  32. "healthcharger_front.png^technic_power_meter0.png"
  33. },
  34. light_source = 5,
  35. groups = {cracky=2, technic_machine = 1, technic_hv = 1},
  36. connect_sides = {"top", "bottom", "back", "left", "right"},
  37. paramtype2 = "facedir",
  38. sounds = default.node_sound_metal_defaults(),
  39. drop = "ufowreck:alien_health_charger0",
  40. on_construct = function(pos)
  41. local meta = minetest.get_meta(pos)
  42. meta:set_string("infotext", "Alien Charger")
  43. meta:set_int("HV_EU_demand", 5000)
  44. minetest.get_node_timer(pos):start(20)
  45. end,
  46. on_timer = function(pos)
  47. local meta = minetest.get_meta(pos)
  48. local eu_input = meta:get_int("HV_EU_input")
  49. if eu_input >= 5000 then
  50. local node = minetest.get_node(pos)
  51. minetest.set_node(pos, {name = "ufowreck:alien_health_charger2", param2=node.param2,})
  52. end
  53. end,
  54. })
  55. minetest.register_node("ufowreck:alien_health_charger2", {
  56. description = "Alien Charger",
  57. tiles = {
  58. "scifi_nodes_lighttop.png",
  59. "scifi_nodes_lighttop.png",
  60. "scifi_nodes_lighttop.png",
  61. "scifi_nodes_lighttop.png",
  62. "scifi_nodes_lighttop.png",
  63. "healthcharger_front.png^technic_power_meter2.png"
  64. },
  65. light_source = 5,
  66. groups = {cracky=2, technic_machine = 1, technic_hv = 1},
  67. connect_sides = {"top", "bottom", "back", "left", "right"},
  68. paramtype2 = "facedir",
  69. sounds = default.node_sound_metal_defaults(),
  70. drop = "ufowreck:alien_health_charger0",
  71. on_construct = function(pos)
  72. local meta = minetest.get_meta(pos)
  73. meta:set_string("infotext", "Alien Charger")
  74. meta:set_int("HV_EU_demand", 5000)
  75. minetest.get_node_timer(pos):start(20)
  76. end,
  77. on_rightclick = function(pos, node, player, itemstack, pointed_thing)
  78. if player:get_hp() < 20 then
  79. minetest.sound_play("beep",{max_hear_distance = 16,pos = pos,gain = 1.0})
  80. --stamina.change(player, 20)
  81. player:set_hp(player:get_hp() + 10)
  82. node.name = "ufowreck:alien_health_charger0"
  83. minetest.set_node(pos,node)
  84. end
  85. end,
  86. on_timer = function(pos)
  87. local meta = minetest.get_meta(pos)
  88. local eu_input = meta:get_int("HV_EU_input")
  89. if eu_input >= 5000 then
  90. local node = minetest.get_node(pos)
  91. minetest.set_node(pos, {name = "ufowreck:alien_health_charger4", param2=node.param2,})
  92. end
  93. end,
  94. })
  95. minetest.register_node("ufowreck:alien_health_charger4", {
  96. description = "Alien Charger",
  97. tiles = {
  98. "scifi_nodes_lighttop.png",
  99. "scifi_nodes_lighttop.png",
  100. "scifi_nodes_lighttop.png",
  101. "scifi_nodes_lighttop.png",
  102. "scifi_nodes_lighttop.png",
  103. "healthcharger_front.png^technic_power_meter4.png"
  104. },
  105. light_source = 5,
  106. groups = {cracky=2, technic_machine = 1, technic_hv = 1},
  107. connect_sides = {"top", "bottom", "back", "left", "right"},
  108. paramtype2 = "facedir",
  109. sounds = default.node_sound_metal_defaults(),
  110. drop = "ufowreck:alien_health_charger0",
  111. on_construct = function(pos)
  112. local meta = minetest.get_meta(pos)
  113. meta:set_string("infotext", "Alien Charger")
  114. meta:set_int("HV_EU_demand", 5000)
  115. minetest.get_node_timer(pos):start(20)
  116. end,
  117. on_rightclick = function(pos, node, player, itemstack, pointed_thing)
  118. if player:get_hp() < 20 then
  119. minetest.sound_play("beep",{max_hear_distance = 16,pos = pos,gain = 1.0})
  120. --stamina.change(player, 20)
  121. player:set_hp(player:get_hp() + 10)
  122. node.name = "ufowreck:alien_health_charger2"
  123. minetest.set_node(pos,node)
  124. end
  125. end,
  126. on_timer = function(pos)
  127. local meta = minetest.get_meta(pos)
  128. local eu_input = meta:get_int("HV_EU_input")
  129. if eu_input >= 5000 then
  130. local node = minetest.get_node(pos)
  131. minetest.set_node(pos, {name = "ufowreck:alien_health_charger6", param2=node.param2,})
  132. end
  133. end,
  134. })
  135. minetest.register_node("ufowreck:alien_health_charger6", {
  136. description = "Alien Charger",
  137. tiles = {
  138. "scifi_nodes_lighttop.png",
  139. "scifi_nodes_lighttop.png",
  140. "scifi_nodes_lighttop.png",
  141. "scifi_nodes_lighttop.png",
  142. "scifi_nodes_lighttop.png",
  143. "healthcharger_front.png^technic_power_meter6.png"
  144. },
  145. light_source = 5,
  146. groups = {cracky=2, technic_machine = 1, technic_hv = 1},
  147. connect_sides = {"top", "bottom", "back", "left", "right"},
  148. paramtype2 = "facedir",
  149. sounds = default.node_sound_metal_defaults(),
  150. drop = "ufowreck:alien_health_charger0",
  151. on_construct = function(pos)
  152. local meta = minetest.get_meta(pos)
  153. meta:set_string("infotext", "Alien Charger")
  154. meta:set_int("HV_EU_demand", 5000)
  155. minetest.get_node_timer(pos):start(20)
  156. end,
  157. on_rightclick = function(pos, node, player, itemstack, pointed_thing)
  158. if player:get_hp() < 20 then
  159. minetest.sound_play("beep",{max_hear_distance = 16,pos = pos,gain = 1.0})
  160. --stamina.change(player, 20)
  161. player:set_hp(player:get_hp() + 10)
  162. node.name = "ufowreck:alien_health_charger4"
  163. minetest.set_node(pos,node)
  164. end
  165. end,
  166. on_timer = function(pos)
  167. local meta = minetest.get_meta(pos)
  168. local eu_input = meta:get_int("HV_EU_input")
  169. if eu_input >= 5000 then
  170. local node = minetest.get_node(pos)
  171. minetest.set_node(pos, {name = "ufowreck:alien_health_charger8", param2=node.param2,})
  172. end
  173. end,
  174. })
  175. minetest.register_node("ufowreck:alien_health_charger8", {
  176. description = "Alien Charger",
  177. tiles = {
  178. "scifi_nodes_lighttop.png",
  179. "scifi_nodes_lighttop.png",
  180. "scifi_nodes_lighttop.png",
  181. "scifi_nodes_lighttop.png",
  182. "scifi_nodes_lighttop.png",
  183. "healthcharger_front.png^technic_power_meter8.png"
  184. },
  185. light_source = 5,
  186. groups = {cracky=2, technic_machine = 1, technic_hv = 1},
  187. connect_sides = {"top", "bottom", "back", "left", "right"},
  188. paramtype2 = "facedir",
  189. sounds = default.node_sound_metal_defaults(),
  190. drop = "ufowreck:alien_health_charger0",
  191. on_construct = function(pos)
  192. local meta = minetest.get_meta(pos)
  193. meta:set_string("infotext", "Alien Charger")
  194. -- meta:set_int("HV_EU_demand", 5000)
  195. end,
  196. on_rightclick = function(pos, node, player, itemstack, pointed_thing)
  197. if player:get_hp() < 20 then
  198. minetest.sound_play("beep",{max_hear_distance = 16,pos = pos,gain = 1.0})
  199. --stamina.change(player, 20)
  200. player:set_hp(player:get_hp() + 10)
  201. node.name = "ufowreck:alien_health_charger6"
  202. minetest.set_node(pos,node)
  203. end
  204. end,
  205. })
  206. -- technic.register_machine("HV", "ufowreck:alien_health_charger0", technic.receiver)
  207. -- technic.register_machine("HV", "ufowreck:alien_health_charger2", technic.receiver)
  208. -- technic.register_machine("HV", "ufowreck:alien_health_charger4", technic.receiver)
  209. -- technic.register_machine("HV", "ufowreck:alien_health_charger6", technic.receiver)
  210. -- technic.register_machine("HV", "ufowreck:alien_health_charger8", technic.receiver)