ComputerCraft/Автоматический генератор булыжника
В этой статье будет показано, как сделать автоматический генератор булыжника . Для этого будет использоваться шахтёрская черепашка .
Создание
Сначала создайте генератор булыжника .
Потом на 1 блок назад от места, где появляется булыжник поставьте шахтёрскую черепашку , на 2 блока ниже от черепашки поставьте сундук и поставьте воронку удерживая ⇧ Shift .
Теперь откройте черепашку, и введите команду
edit cobgen
Где cobgen
— что угодно — это название программы. Теперь введите такой код:
while true do if turtle.detect() then turtle.dig() end itemcount = turtle.getItemCount(16) if itemcount == 64 then for i=1,16 do turtle.select(i) turtle.drop() end turtle.select(1) end end
Строка | Описание | Комментарий |
---|---|---|
while true do
|
Бесконечный цикл. | С бесконечными циклами следует обращаться осторожно, выход из них — только по break. |
if turtle.detect() then
|
Если перед черепашкой будет блок то... | — |
turtle.dig()
|
...сломать этот блок. | — |
end
|
Конец ветвления. | — |
itemcount = turtle.getItemCount(16)
|
Считает сколько предметов в последней ячейке инвентаря. | Если последняя ячейка инвентаря заполнена, то, вероятнее всего, и весь инвентарь, а также воронка и сундук тоже переполнены. |
if itemcount == 64 then
|
Если предметов 64, то... | |
for i=1,16 do
|
Для каждой ячейки с первой по последнюю... | В таком случае содержимое инвентаря последовательно выбрасывается на землю. |
turtle.select(i)
|
Выбирает ячейку. | |
turtle.drop()
|
Выбрасывает её содержимое перед собой. | |
end
|
Конец цикла. | |
turtle.select(1)
|
Снова выбирает первую ячейку. | Выкапываемый булыжник будет помещаться в выбранную ячейку. Если она заполнена — в следующую, и т.д. |
end
|
Конец ветвления. | Для определения количества end проще использовать форматирование "лесенкой". |
end
|
Конец цикла. | Если количество end будет больше, чем нужно, будет выдана ошибка "<eof> expected". Если меньше, то "'end' expected". |
Завершение
Для сохранения программы нажмите клавишу Ctrl и выберите пункт Save. Теперь в терминале напишите такой код:
cobgen
Где cobgen
— название программы. Теперь черепашка начнёт ломать блок булыжника когда он появится. Воронка будет вынимать булыжник из инвентаря и складывать его в сундук .