Advertisement
Guest User

Untitled

a guest
May 7th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.53 KB | None | 0 0
  1. local comp = require('component')
  2. local rs = comp.redstone
  3. local modem = comp.modem
  4. local reactor = comp.reactor_chamber
  5. local serial = require("serialization")
  6. local event = require("event")
  7. local sides = require("sides")
  8.  
  9. modem.open(28)
  10. rs.setOutput(sides.top, 0)
  11.  
  12. local is_reactor_active = false
  13.  
  14. while true do
  15.     print('waiting for message')
  16.     local _, _, sender, _, _, message = event.pull("modem_message")
  17.     -- print(event.pull("modem_message"))
  18.     print(sender,":", message)
  19.     if message == 'get_controller_info' then
  20.         modem.send(sender, 27, "reactor_is_here")
  21.         print("get_contr")
  22.  
  23.     elseif message == 'activate_reactor' then
  24.         rs.setOutput(sides.top, 15)
  25.         is_reactor_active = true
  26.         modem.send(sender, 27, is_reactor_active)
  27.  
  28.     elseif message == 'deactivate_reactor' then
  29.         rs.setOutput(sides.top, 0)
  30.         is_reactor_active = false
  31.         modem.send(sender, 27, is_reactor_active)
  32.  
  33.     elseif message == 'is_reactor_active' then
  34.         modem.send(sender,
  35.          27,
  36.          is_reactor_active)
  37.  
  38.     elseif message == 'get_reactor_info' then
  39.         info = {}
  40.         table.insert(info, reactor.getHeat())
  41.         table.insert(info, reactor.getMaxHeat())
  42.         table.insert(info, reactor.getReactorEUOutput())
  43.         table.insert(info, reactor.getReactorEnergyOutput())
  44.         table.insert(info, reactor.producesEnergy())
  45.         serialized_info = serial.serialize(info)
  46.         modem.send(sender,
  47.          27,
  48.          serialized_info)
  49.     end
  50. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement