mistamadd001

master_setup

Mar 12th, 2015
272
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.84 KB | None | 0 0
  1.  
  2. --Find peripherals
  3. pList = peripheral.getNames()
  4.  
  5. function getPeripherals(pType, pName)
  6.     local name in pairs(pList) do
  7.     if pType == 'modem' then
  8.         if peripheral.getType(name) == pType then
  9.             rednet.open(name)
  10.         end
  11.     elseif peripheral.getType(name) == pType then
  12.         pName = peripheral.wrap(name)
  13.     end
  14. end
  15.  
  16. function sendMessage(recipient, mType, mCmd[])
  17.     rednet.send(recipient, textutils.serialize(mType, mCmd[]))
  18. end
  19.  
  20. function getMessage()
  21.     mId, message = rednet.receive()
  22.     mType, message = textutils.unserialize(message)
  23. end
  24.  
  25. getPeripherals('modem', nil)
  26.  
  27. getPeripherals('monitor', 'mon')
  28.  
  29. mon.write('hello')
  30.  
  31. rednet.broadcast(textutils.serialize({'master', {'login'}}))
  32. while true do
  33.     getMessage()
  34.     if mType == 'slave' and message[1] == 'logged in' then
  35.         if fs.exists('slave') then
  36.             if fs.exists('slave/id') then
  37.             else
  38.                 local file = fs.open('slave/id', 'w')
  39.                 file.write(mId)
  40.                 file.close()
  41.                 mon.setCursorPos(1, 2)
  42.                 mon.write('Slave '..mId..' registered!')
  43.             end
  44.         else
  45.             fs.makeDir('slave')
  46.             local file = fs.open('slave/id', 'w')
  47.             file.write(mId)
  48.             file.close()
  49.             mon.setCursorPos(1, 2)
  50.             mon.write('Slave '..mId..' registered!')
  51.         end
  52.     elseif mType == 'reactor' and message[1] == 'ready' then
  53.         if fs.exists('reactor') then
  54.             local file = fs.open('reactor/info','w')
  55.             file.write(message[2])
  56.             file.close()
  57.         else
  58.             fs.makeDir('reactor')
  59.             local file = fs.open('reactor/info','w')
  60.             file.write(message[2])
  61.             file.close()
  62.         end
  63.         print('System ready')
  64.         break
  65.     end
  66. end
Advertisement
Add Comment
Please, Sign In to add comment