Перейти к содержимому

Nova_Novator

Пользователи
  • Публикации

    3
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные пользователем Nova_Novator


  1. Дисклеймер: я - лютый новичок и с прогами на Lua знаком 1 день, да и в остальных языках не шарю почти никак. Не бейте)
    Хочу сделать защищённую дверь из OpenSecurity на контроллере дверей оттуда же, открывающуюся при помощи RFID-карты.
    C записью карт проблем не возникло, а вот простенькая читалка, которую я намастрячил, хоть и срабатывает, но потом через небольшое время крашится. Вот её код
     

    local component = require("component")
    local door = component.os_door
    local rfid = component.os_rfidreader
    
    local password = "1qf4suio8"
      
    while true do
      local scan = rfid.scan()[1]
      if scan and scan.data == password and scan.range <= 3 then
      door.open()
      else
      door.close()
      end
    end


    Ошибку выдаёт следующего толка:

     

    /home/simplesearch:8: attempt to index a boolean value:
    stack traceback:
    		/home/simplesearch:8: in main chunk
            (...tail calls...)
            [C]: in function 'xpcall'
            machine:798: in fucntion 'xpcall'
            /lib/process.lua:63: in function </lib/process.lua:59>

    Т.е., я так понял, ему не нравится чем-то 8 строчка. Причём не сразу не нравится, а ровно через минуту, в течение которой программа функционирует полностью штатно.

    P.S. я знаю, что переменную пароля можно задавать через select и io.read, задача пока сделать абсолютно минимальный рабочий вариант.

×
×
  • Создать...