Advertisement
kalan4ik

Mag Card Reader

Aug 28th, 2015
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.50 KB | None | 0 0
  1. --Код написан человеком с ником kalan4ik
  2. local co = require("component")
  3. local ev = require("event")
  4. local te = require("term")
  5. local com = co.computer
  6. local sides = require("sides")
  7. local red = co.redstone
  8. --Ввод переменных
  9. local sid = 0
  10. local wl = {}
  11. local d = {}
  12. local st = true
  13. local uuid = {}
  14. local stsi = true
  15. local ghost = {}
  16. local q = true
  17. local nn = true
  18. local zzx = true
  19. --Гребанный код...
  20. os.sleep(1)
  21. te.clear()
  22. print("Первоначальная загрузка...")
  23. print("Вы хотите записать карту?(к компьютеру должен быть подключен Card Writer!)(y/n)")
  24. while nn do
  25.   local pp, _, _, oo = ev.pull()
  26.   if oo == 21 then
  27.     local ran = math.random(500000*os.time()).."-"..math.random(500000*os.time()).."-"..math.random(500000*os.time())
  28.     co.OSCardWriter.write(ran, "Card", true)
  29.     nn = false
  30.   elseif oo == 49 then
  31.     nn = false
  32.   end
  33. end
  34. print("Вбитие карты(ударьте картой по блоку Mag Card Reader)")
  35. print("Предварительно записанной на Card Writer")
  36. while st do
  37.   local naa, _, nab, nac, nad = ev.pull()
  38.   if naa == "magData" then
  39.     d = nac
  40.     wl = nab
  41.     uuid = nad
  42.     print("Данные по карте вбиты")
  43.     te.write("Ник владельца карты:  ")
  44.     print(wl)
  45.     te.write("Дата карты:  ")
  46.     print(d)
  47.     te.write("UUID карты:  ")
  48.     print(uuid)
  49.     st = false
  50.   end
  51. end
  52. print("Настройка стороны вывода красного сигнала")
  53. print("Введите сторону, вводить цифрой")
  54. print("Низ - 0,   Верх - 1")
  55. print("Тыл - 2,   Перед - 3")
  56. print("Право - 4, Лево - 5")
  57. while stsi do
  58.   local xzc, _, _, sts, _ = ev.pull()
  59.   if xzc == "key_down" then
  60.     if sts == 11 then
  61.       sid = 0
  62.       stsi = false
  63.     elseif sts == 2 then
  64.       sid = 1
  65.       stsi = false
  66.     elseif sts == 3 then
  67.       sid = 2
  68.       stsi = false
  69.     elseif sts == 4 then
  70.       sid = 3
  71.       stsi = false
  72.     elseif sts == 5 then
  73.       sid = 4
  74.       stsi = false
  75.     elseif sts == 6 then
  76.       sid = 5
  77.       stsi = false
  78.     else
  79.       print("Неверное название стороны, попробуйте ещё раз")
  80.       com.beep(2000, 3)
  81.     end
  82.   end
  83. end
  84. print("Настройка прошла успешно, хорошего пользования")
  85. print("Чтобы выйти с программы, нажмите q")
  86. os.sleep(2)
  87. while q do
  88.   for l = 1, #ghost do
  89.     print(ghost[l])
  90.   end
  91.   local gh = true
  92.   local evn, _, name, dat, uui = ev.pull()
  93.   if evn == "magData" then
  94.     if name == wl then
  95.       if dat == d then
  96.         if uui == uuid then
  97.           red.setOutput(sid, 15)
  98.           os.sleep(3)
  99.           red.setOutput(sid, 0)
  100.         else
  101.           print("Неправильный UUID")
  102.           com.beep(2000, 3)
  103.         end
  104.       else
  105.         print("Неверная 'date'")
  106.         com.beep(2000, 3)
  107.       end
  108.     else
  109.       print("Неверное имя игрока")
  110.       com.beep(2000, 3)
  111.     end
  112.     for k = 1, #ghost do
  113.       if ghost[k] == name then
  114.         gh = false
  115.       end
  116.     end
  117.     if gh == true then
  118.       table.insert(ghost, name)
  119.       print(name)
  120.     end
  121.   end
  122.   if evn == "key_down" then
  123.     if  dat == 16 then
  124.       q = false
  125.       print("Программа завершена")
  126.     end
  127.   end
  128.   te.clear()
  129. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement