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

Робот-фермер (поле 3 на 3)

Рекомендуемые сообщения

Моя первая программа, не судите очень строго.
Ссылка на программу: http://pastebin.com/uyBZuaxc
Программа состоит из 3-ёх функций, а именно:

  • start()
  • side()
  • parking()

и повторяются они в таком порядке:

  • start()
  • side()
  • side()
  • side()
  • side()
  • parking()

Функции start и parking отвечают за направление робота с места стоянки (зарядки) на поле и обратно, обе состоят из двух команд: robot.up() robot forward() и robot.back() robot.down()
функция side() наверное самая сложная во всей программе. Разберём её:
 

robot.swingDown() -- ломаем пшеницу
robot.useDown() -- делаем пашню мотыгой
robot.placeDown() -- сажаем пшеницу
robot.forward() -- двигаемся на блок вперёд
robot.swingDown() -- опять ломаем пшеницу
robot.useDown() -- снова делаем пашню
robot.placeDown() -- и сажаем пшеницу
robot.forward() -- снова двигаемся на блок вперёд
 
--как бы тоже самое, но:
robot.turnRight() -- мы поворачиваем робота направо дабы он смог сделать все во 2, 3 и в 4 раз.

Желательно не стоять перед роботом, он можно несколько раз перепахать землю и повернуться направо. На скринах 2 и 3 показаны последствия.

post-16123-0-97775500-1440255245_thumb.png

post-16123-0-42625100-1440255251_thumb.png

post-16123-0-55212400-1440255257_thumb.png

Изменено пользователем Fingercomp
Добавил форматирование ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

3x3 - невыгодно. Робот такое за минуту пропахает и будет ждать час пока новое вырастет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

 

 

3x3 - невыгодно. Робот такое за минуту пропахает и будет ждать час пока новое вырастет.

ну это да но если учесть что я это делал "под себя" а у меня не очень много места

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для первой программки годится. Молодец!!!

 

Но модернизировать ее нужно основательно. Программка совершенно не модульная. То что там набор действий типа сгруппирован в "функции", немножко это не то. Такую программу тяжело расширить и улучшить, к примеру если пахать 4х4,  то код проги придется переписать с нуля. Должны быть действия однотипные и циклы. Прога у тебя выполнит старт, 4 раза сайд, паркинг и закроется. И ее нужно запускать заново.

 

Быстрее и дешевле тяпкой собрать эти 5 пшеничек)))) Нет проверок на успех перемещения, координат и так далее. То есть моб или курица, которая прибежит и встанет перед роботом, собьет алгоритм движения.

 

Но очень порадовал спартанский малюсенький огородик и минимализм и то, что работаешь с роботом и программками в отличии от безумцев типа игрока под ником Кореш, который строил плантации для обеспечения резиной целого Китая и заборы из редстоун билдкрафт труб и лагал на сервере, а робота в руки не брал ни разу и понятия не имел, что это и ведать не ведал. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость NeLinus

@@MrSnake20_15, тебе будет полезно почитать про комментарии в исходном коде и про циклы.

ЗЫ вставляй код в теге [​cod​e=lua][/code]. Только руками набери, а не копируй.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


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