Advertisement
Dima99

Door lock

Oct 3rd, 2014
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.40 KB | None | 0 0
  1. diskSide = "top"
  2. side = "right"
  3. password = "12345"
  4. adminPass = "I am admin"
  5. -------------------------
  6.  
  7. function open(time, side)
  8. rs.setOutput(side, true)
  9. sleep(time)
  10. rs.setOutput(side, false)
  11. end
  12.  
  13. os.pullEvent = os.pullEventRaw
  14. relayA = true
  15. relayB = true
  16. while relayA do
  17. relayDisk = disk.hasData(diskSide)
  18.  if relayDisk then
  19.   if fs.exists("disk/key") then
  20.    h = fs.open("disk/key", "r")
  21.    diskKey = h.readAll()
  22.    h.close()
  23.    if diskKey == password then
  24.     disk.eject(diskSide)
  25.     open(2, side)
  26.     if fs.exists("disk/key") then
  27.      h = fs.open("disk/key", "r")
  28.      diskKey = h.readAll()
  29.      h.close()
  30.      if diskKey == password then
  31.       disk.eject(diskSide)
  32.       rs.setOutput(side, true)
  33.       sleep(2)
  34.       while relayB do
  35.        sleep(1)
  36.        relayDisk = disk.hasData(diskSide)
  37.        if relayDisk then
  38.         if fs.exists("disk/key") then
  39.          h = fs.open("disk/key", "r")
  40.          diskKey = h.readAll()
  41.          h.close()
  42.          if diskKey == password then
  43.           disk.eject(diskSide)
  44.           rs.setOutput(side, false)
  45.           relayB = false
  46.          end
  47.         end
  48.        end
  49.       end
  50.      end
  51.     end
  52.    end
  53.    elseif fs.exists("disk/admin") then
  54.    h = fs.open("disk/admin", "r")
  55.    diskKey = h.readAll()
  56.    h.close()
  57.    if diskKey == adminPass then
  58.     disk.eject(diskSide)
  59.     relayA = false
  60.    end
  61.   end
  62.  end
  63.  sleep(1)
  64. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement