Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local component = require("component")
- local rfidReader
- local redstone
- if component.isAvailable("os_rfidreader") then
- rfidReader = component.os_rfidreader
- elseif component.isAvailable("OSRFIDReader") then
- rfidReader = component.OSRFIDReader
- else
- print("Подключите RFIDReader к компьтеру")
- os.exit()
- end
- local args = table.pack(...)
- if #args < 3 then
- print("Raduis - Радиус_сканирования(лучше больше)")
- print("Side - Сторона_куда_пускать_редстоун")
- print("0 - низ, 1 - верх, 2 - зад, 3 - перед, 4 - право, 5 - лево")
- print("Data - данные_которые_пропускать(можно несколько через пробел)")
- print("Использование: RFIDReader Raduis Side Data1 Data2 ...")
- os.exit()
- end
- local Raduis = tonumber(args[1])*3
- table.remove(args,1)
- local Side = tonumber(args[1])
- table.remove(args,1)
- local Datas = {}
- for _,v in ipairs(args) do
- print(v)
- table.insert(Datas,v)
- end
- if component.isAvailable("redstone") then
- redstone = component.redstone
- else
- print("Вставьте редстоун карту или подключите редстоун i/o блок")
- os.exit()
- end
- while true do
- local output = rfidReader.scan(Raduis)
- for _,v in pairs(Datas) do
- if #output > 0 then
- for k,v in pairs(output) do
- if v.data == v then
- redstone.setOutput(Side,15)
- os.sleep(1)
- redstone.setOutput(Side,0)
- end
- end
- else
- redstone.setOutput(Side,0)
- end
- end
- os.sleep(0.3)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement