Kartograf 55 Опубликовано: 12 декабря, 2015 (изменено) Хочу вам всем представить своё первое детище и отдельно поблагодарить: TProger, Farlang и Fingercomp за помощь при создании этой программы, а также отдельное спасибо bob558 без него я бы вообще сегодня не кодил бы. Так вот в чём суть программы: Вы задаёте 4 переменных ДЛИНА- расстояние от стартовой площадки робота до конца грядки перед ним, ШИРИНА- то же самое что и длина только влево от робота, СЛОТЫ- количество слотов инвентаря робота которые он освобождает, ПРОМЕЖУТКИ- время раз в которое робот будет выезжать на своё грязное дело собирать урожай. Все переменные можно сразу указать в начале кода. Как правильно распологать робота показано снизу. Если робот немного сместился не волнуйтесь позже он встанет на место. Просьба писать о других багах в лс. Ах да забыл робот едет змейкой вперёд назад. Располагать его нужно на первую грядку справа и убрать все факела нити и т.д. над жёрдочками. http://pastebin.com/h2hxvXX9 Изменено 13 декабря, 2015 пользователем Kartograf 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 12 декабря, 2015 Хочу вам всем представить своё первое детище и отдельно поблагодарить: TProger, Farlang и Fingercomp за помощь при создании этой программы, а также отдельное спасибо bob558 без него я бы вообще сегодня не кодил бы. Ну если было столько акушеров, да еще и сам Fingercomp, даже код смотреть не будем. Это Байт-I Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Kartograf Автор темы 55 Опубликовано: 13 декабря, 2015 (изменено) Правда не могу понять одно. Если например есть два робота в соседствующих чанках робот будет адекватно работать в том чанке в котором игрок. А в соседнем посреди фермы зависнит Изменено 13 декабря, 2015 пользователем Kartograf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Doob 2 749 Опубликовано: 13 декабря, 2015 (изменено) Количество слотов можно узнать из robot.inventorySize() Какие программы залипают? Для того, чтобы робот нормально работал на сервере, надо постоянно делать проверку на корректность выполнения действий, иначе будет такой бред... Я про это однажды забыл, так робот все факела и лампы вырубил, а сам спрятался в угол, в который программа загнать его не могла. P.S. Все ясно-понятно, цифры надобно выкинуть, сделать поворотники, при условии обнаружения стены, ибо робот пропускает движения. Изменено 13 декабря, 2015 пользователем Doob Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Totoro 3 563 Опубликовано: 13 декабря, 2015 Немного критики. 1) Отступы скачут. Сделай жестко 2 пробела для блока, будет читать легче. 2) Называть переменные "a", "b", "c" - не айс. Желательно давать названия, которые сами по себе поясняют, что хранится в переменной. Например - "width" (ширина), "height" (высота), "number" (число). 3) Что делает эта строка? function unload() robot.turnRight() robot.detect() <--- вот эта robot.select(chest) 4) Проверку на чет-нечет if math.ceil(b/2) == b/2 then -- это ведь она? проще сделать так if b%2 == 0 then Операция % означает "остаток от деления на". 5) На деле программа спит не N секунд, а 10N. for i=1, 10 do os.sleep(n) Если я правильно понял код, надо использовать здесь os.sleep(n/10) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Kartograf Автор темы 55 Опубликовано: 13 декабря, 2015 Спасибо учту. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах