NumberXIII11683@legacy41655820 (обс. | вклад) |
NumberXIII11683@legacy41655820 (обс. | вклад) |
||
Строка 115: | Строка 115: | ||
Пишет |
Пишет |
||
− | Startup: |
+ | Startup: 7: attempt to call nil |
Версия от 15:33, 29 декабря 2012
Помогите с модом ComputerCraft
Мне нужно закодировать дверь в синглплеере. Делаю следующее: 1. Писал: > edit startup; 2. В новой консоли: print("Enter yellow-code: ");(yellow-code - "желтый код безопасности" так я его назвал) 3. сохранил как startup; 4. Писал: > edit 7835(мой код); 5. в консоли писал: redstone.setoutput("back"(т.к. провод редстоуна шел с задней стороны). true) sleep(3) redstone.setoutput("back". false) os.shutdown(); 6. проверял: он при запуске писал enter code: я вводил свой код, а он пишет "bios 206: [string "7835"]: 1: ')' expected" Я так понял что он ожидал где то скобку, но я все писал по правилам, должно было заработать. Что делать? Скриншоты:
- Готовый вариант кодового замка (сохранять как startup):
os.pullEvent = os.pullEventRaw while true do write('Enter code: ') code = read('*') if code == '<ВАШ_ПАРОЛЬ_ЗДЕСЬ>' then rs.setOutput(<НАПРАВЛЕНИЕ_ДВЕРИ>, true) sleep(<ВРЕМЯ_АКТИВАЦИИ>) rs.setOutput(<НАПРАВЛЕНИЕ_ДВЕРИ>, false) os.shutdown() end end
Вместо НАПРАВЛЕНИЕ_ДВЕРИ
может быть 'back', 'front', 'top', 'bottom', 'left', 'right': задняя, передняя, верхняя, нижняя, левая, правая стороны соответственно. (Не забывайте ставить либо апострофы, либо кавычки ("), уберите угловые скобки!)
ВРЕМЯ_АКТИВАЦИИ
— число секунд, кратное 0.05, например, 1.5 для полутора секунд.
А по скринам (сделал поменьше) — что за ужас со шрифтами?
Ошибка в том, что между строкой направления "back" и true/false надо ставить запятую, а не точку, как я указал в примере.
И да, подписывайтесь. Кнопка подписи прямо справа от кнопки игнорирования форматирования (буквы W в перечёркнутом красном круге). Или просто четыре тильды (~~~~). --GreenStone(вклад) 13:56, 28 декабря 2012 (UTC)
Ошибка кода двери ComputerCraft
Я хотел закодировать дверь, написал программу:
Готовый вариант кодового замка (сохранять как startup):
os.pullEvent = os.pullEventRaw while true do
write('Enter code: ') code = read('*') if code == '<ВАШ_ПАРОЛЬ_ЗДЕСЬ>' then rs.setOutput(<НАПРАВЛЕНИЕ_ДВЕРИ>, true) sleep(<ВРЕМЯ_АКТИВАЦИИ>) rs.setOutput(<НАПРАВЛЕНИЕ_ДВЕРИ>, false) os.shutdown() end
end
писал ошибку: bios 267: attempt to write to global а когда писал более простую: 1. Команду print("Enter code: ") сохранить в startup 2. Создать прогру, называющуюся как ваш пароль (в моем случае 7835) с командами:
rs.setOutput(<НАПРАВЛЕНИЕ_ДВЕРИ>, true) sleep(<ВРЕМЯ_АКТИВАЦИИ>) rs.setOutput(<НАПРАВЛЕНИЕ_ДВЕРИ>, false) os.shutdown()
Тогда он писал ошибку биоса такую: 7835: attempt to call nil что делать, чтобы все работало и дверь открылась наконец?
- Вы не поняли. То, что написано в фигурных скобках заглавными буквами, надо заменить на соответствующие значения. Просто гружу скрин.
--GreenStone(вклад) 17:56, 28 декабря 2012 (UTC)
все равно не работает
Пишу программу кодировки двери по всем правилам, все равно эти ошибки возникают!!!! Помогите!!! (для справки предыдущие записи)
- http://computercraft.info/wiki/Making_a_Password_Protected_Door
- А вот оттуда немного изменённый код:
while true do term.clear() term.setCursorPos(1, 1) print("Pozaluysta, vvedite parol:") input = read("*") if input == "ПАРОЛЬ" then redstone.setOutput("СТОРОНА", true) sleep(ВРЕМЯ_АКТИВАЦИИ) redstone.setOutput("СТОРОНА", false) end end
--ArtSin 14:01, 29 декабря 2012 (UTC)
Все равно не работает
Пишет Startup: 7: attempt to call nil