Прошу помочь с черепашкой

Какая замечательная команда refuel . Можно заправить черепашку этой командой прямо с консоли. И она будет заправляться из любого слота инвентаря, если есть там топливо. Но по одному предмету, например будет использовать только один уголь. А вот если написать программку,

    turtle. select( 1 )

    turtle. refuel()

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


Добро пожаловать на техно-сервер майнкрафт https://vk.com/e_n_e_r_gy_s_y_s_t_e_m

В программе заложен бесконечный цикл заправки топливом золотой черепашки до максимума, для наглядности значение указано как 100 000, а не turtle . getFuelLimit.
Кроме того, черепашка проверяет все слоты в инвентаре и заправляется, если там обнаружено топливо.

    < 100000 do - пока уровень топлива меньше 100000 выполнять

    Print ( "I need " .. ( 100000 - turtle. getFuelLevel() ) .. " more fuel" )

    for i = 1 , 16 do -- для переменной i от 1 до 16 выполнять

    turtle. select( i ) -- выбрать i-ый слот

    turtle. refuel() -- заправить черепашку

    end -- конец цикла for

    end -- конец цикла while

    print ( "I have got enough fuel..." ) когда цикл while будет завершен пишем " Мне досточно топлива...")

Скажем прямо, не всегда хочется ждать пока заправиться черепашка. Теперь программа будет заправлять черепашку только на 10 000 единиц. Это сократит время запрвки, а может этого просто достаточно. Следующая инициированная заправка тоже будет на 10 000 единиц.

    local a = turtle. getFuelLevel() + 10000 -- присвоим переменной а значение существующего

    уровня топлива черепашки + 10 000 единиц

    while turtle. getFuelLevel() < a do -- пока уровень топлива черепашки меньше значения переменной a выполнять:

    print ( "I need " .. ( a - turtle. getFuelLevel() ) .. " more fuel" )

    Print ( "Checking for fuel..." )

    for i = 1 , 16 do

    turtle. select( i )

    turtle. refuel()

    end -- конец цикла for

    print ( "Checked for fuel..." )

    end -- конец цикла while

http://pastebin.com/XRVHfUGM


Теперь я хочу заправить черепашку до желаемого уровня как на заправочной станции.

В этой программе можно заправить черепашку до желаемого уровня. При указании превышенного уровня или суммарно больше максимально возможного программа прекратит работу и выдаст об этом сообщение.

При достижении заправленного или максимального уровня, программа прекратит работу и выдаст об этом сообщение.

    term. clear()

    term. setCursorPos(1 , 1 )

    print ("Fuel level: " , turtle. getFuelLevel() )

    term. setCursorPos(1 , 2 )

    print ("Fuel max level: " , turtle. getFuelLimit() )

    term. setCursorPos(1 , 3 )

    term. write ("Please write the new level fuel " )

    term. setCursorPos(1 , 4 )

    term. write ("Level:" )

    local b = read ()

    if b* 1 > turtle. getFuelLimit() then

    term. clear()

    term. setCursorPos(1 , 1 )

    term. write ("You can not write a value ! " )

    term. setCursorPos(1 , 2 )

    print ("The value must be <= " , turtle. getFuelLimit() )

    return

    while turtle. getFuelLevel() < b* 1 do

    print ( "I need " .. ( b - turtle. getFuelLevel() ) .. " more fuel" )

    for i = 1 , 16 do

    turtle. select( i )

    turtle. refuel()

    print ( "Checked for fuel..." )

    print ( "I have got enough fuel..." )

Запускаем еще раз

Хм... почему то я запрашивал 72 000 единиц топлива, а получил 82 720, это происходит потому что, заявленное топливо не кратно которому может быть заправлено, поэтому в
данном случае надо закладывать топливо не все сразу, а поэтапно. Скажем так, есть повод для размышлений.

На сегодня все. Удачи в освоении миров.

Проект сайт основан в 2014 году. Характерной чертой наших игровых серверов всегда было и будет наличие компьютерных и технических модов и аддонов, но иногда можно было встретить у нас и техно-магические сборки. Когда ключевой мод ComputerCraft устарел и больше не отвечал техническим требованиям, ему на замену пришел современный и высокотехнологичный мод OpenComputers. Черепашек сменили ультра современные и высокофункциональные роботы.

У нас играют и пишут программы как новички так и опытные программисты. А самые продвинутые участники нашего коллектива даже разрабатывают собственные авторские моды и аддоны, ресурспаки, репозитории, мощнейшие библиотеки и операционные системы! Эти участники - гордость нашего проекта, которые по праву носят почетное звание Гуру!

Регистрируйтесь прямо сейчас и присоединяйтесь к нашему дружному коллективу фанатов игры Майнкрафт, компьютерных и инженерных модов!

Не знаю как вы, а меня больше всего в предстоящем Морском обновлении Minecraft, восхищают черепахи. Именно их я жду больше всего! И это не столько благодаря их удивительному поведению (черепахи будут откладывать яйца, из которых будут вылупляться маленькие черепашки, которые будут уползать в воду), сколько истории их появления в игре.

Больше двух лет назад, в марте 2015 года, billyK_ один из участников раздела Reddit, посвященного Minecraft, написал обращение к разработчикам игры.

В нём просил добавить в игру черепах и подробно расписал как они могли бы вписаться в игровой мир:

  • Они стали бы «свиньями океанов». Их можно было бы оседлать и плыть, держа в руках удочку с приманкой - рыбой.
  • Из черепашьего мяса с грибами можно было бы варить черепаховый суп;
  • Панцирь черепах можно было бы использовать в качестве шлема.

Пока неизвестно, можно ли будет оседлать черепаху или сварить черепаховый суп, но со шлемами, похоже, !

Это было обычным, ничем не выделяющимся, предложением, но почему-то именно оно привлекло большое внимание участников сообщества, за него голосовали и обсуждали. А сам Билли, при каждом удобном случае, напоминал разработчикам о черепахах.

И они его, определённо, запомнили!

Поэтому, когда было объявлено, что в игре появятся черепахи, то все сразу вспомнили про billyK_. Он счёл свою миссию выполненной: «Великий мем себя изжил. Это большая честь, и я благодарен разработчикам (…) , которые добавили черепах в игру!»

Но на этом история не заканчивается. В конце декабря, в реддите появилась петиция , в которой разработчиков просили добавить какой-то специальный эффект для черепахи с именем billyK_.

Честно говоря, я не думаю, что это будет реализовано. Тем более, что разработчики, возможно, приготовили для Билли, совсем другой подарок.

2 февраля игроки сервера Blockmania заметили игрока с необычным плащом. Игрока звали el_hefe_, и его плащом сейчас можно полюбоваться на сайте namemc.com . В нашей группе ВК первым об этом рассказал Богдан .

Кто такой el_hefe_ - неизвестно. Понятно, что он является разработчиком игры, но кто именно, мы пока не знаем. Возможно, это Георгий Гавричев - сотрудник Mojang из России, а может быть кто-то из художников.

Естественно, этот факт не остался незамеченным в реддите . Там сразу же показали то, как этот плащ будет выглядеть с элитрами.

И конечно же, снова вспомнили о billyK_ - ведь он определённо заслуживает того, чтобы его наградили таким плащом.

«Привет сабредиту Minecraft, который требует, чтобы мне срочно выдали этот плащ! А если серьёзно: было бы неплохо обзавестись таким черепашьим плащом, но я не собираюсь огорчаться, если Mojang его мне не подарит» - так Билли прокомментировал эту ситуацию в твиттере.

Итак, так как я все таки никогда не писал никаких гайдов, я не обещаю что все будет идеально, но я все равно попробую.

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

Начнем пожалуй с самого основного - КРАФТА
Крафт самой черепахи

И добавив к ней необходимый алмазный инструмент(кирка, лопата, топор, мотыга, мечь) мы получаем улучшенную черепаху

Так же можно добавить к черепахе модем для так сказать дистанционного управления.
Мы создали черепаху давайте теперь поставим ее на землю и посмотрим что она из себя представляет

Правый клик по черепахе

Вот так выглядит интерфейс нашей черепахи. Всю верхнюю часть занимает консоль управления, внизу расположились два инвентаря, один наш собственный (слева) , а другой черепаший(справа). В инвентаре один слот выделен, изначально это первый слот, но мы можем поменять его с помощью команды.
Так как черепаха сама по себе является компьютером, то любая программа для компьютера будет работать и на ней.
Что бы написать программы нам понадобится ввести команду редактирования

edit *название_программы*
Например мы создадим программу под названием "turtle_1", для этого введем команду
edit turtle_1
Теперь посмотрим что же все таки эта черепаха умеет, а умеет она многое:

Во первых команды движения

turtle.up() - Вверх
turtle.down() - Вниз
turtle.forward() - Вперед
turtle.back() - Назад
turtle. turnLeft() - Поворот налево
turtle. turnRight() - поворот направо
Дальше команды разрушения блока (добычи)

turtle.dig() - Сломать блок перед собой
turtle.digUp() - Сломать блок над собой
turtle.digDown() - Сломать блок под собой
Проверка наличия блоков, возвращает true если блок обнаружен и false если блока нету

turtle.detect() - Перед черепахой
turtle.detectUp() - Сверху черепахи
turtle.detectDown() - Снизу черепахи
У нас есть инвентарь черепахи и есть команды для работы с ним

turtle. select(n) - Выбрать слот n
turtle. getItemCount(n) - Возвращает количество блоков в слоте n
turtle. getItemSpace(n) - Возвращает кол-во свободного места в слоте n
turtle. drop(i) - Выбросить i предметов из выбранного слота (если перед черепахой сундук то она положит предметы в него), так же если не указывать в скобках ничего, черепаха выкинет все что есть в слоте
turtle. dropUp() - Выбросить предметы над собой или положить в сундук сверху
turtle. dropDown()
- Выбросить предметы под себя или положить в сундук снизу
Черепаха умеет ставить блоки, ставит она блоки которые лежат в выбранном слоте

turtle.place() - Поставить блок перед собой
turtle.placeUp() - Поставить блок над собой
turtle .plac eDown() - Поставить блок под собой
Для того чтобы черепаха смога двигаться ее придется угостить углем

turtle.refuel(i) - Заправляет в черепаху i топлива из выбранного слота, если не указывать количество то сожрет все что есть в выбранном слоте
turtle.getFuelLevel() - Возвращает количество неиспользованного топлива

Итак с основными командами познакомились, теперь давайте напишем простенькую программу копания

Turtle.refuel(1) while true do turtle.digUp() turtle.digDown() turtle.dig() while turtle.detectUp() do turtle.digUp() os.sleep(0.5) end turtle.forward() end

Эта коротенькая программа заставляет черепаху прокопать туннель длинной 80, шириной 1 и высотой в 3 клетки
Пробежимся по командам

turtle.refuel(1) - Заправляем черепаху топливом, то есть для того чтобы программа заработала нам надо поместить в выделенный слот черепахи один уголь. Так как в программе есть только одна команда движения то черепаха проедет столько сколько вы в нее заправите угля, в нашем случае это 1 уголь и на нем она проедет 80 клеток (при большем количестве угля черепахе может не хватить места в ее инвентаре)
while true do - Начинаем бесконечный цикл
turtle.digUp() - Ломаем блок над собой
turtle.digDown() - Ломаем блок под собой
turtle.dig() - Ломаем блок перед собой
while turtle.detectUp() do - Второй цикл который поможет избавиться от падающего на черепаху гравия
turtle.digUp()
os.sleep(0.5) - Эта команда говорит черепахе ничего не делать в течении 0.5 секунда, нужна она для того чтобы если над нами есть гравий он успел упасть на черепаху
end - Окончание второго цыкла
turtle.forward() - Движение вперед, так как топливо у нас ограничено несмотря на бесконечность цикла наша черепаха будет двигаться вперед только 80 клеток
end - Окончание первого цыкла

Мы написали код и теперь его надо сохранить. Нажимаем кнопку Ctrl, выбираем там пункт Saveи жмем Enter. Теперь выходим из редактирования программы- н ажимаем кнопку Ctrl, выбираем там пункт Exit.
Чтобы запустить программу на черепахе нам надо положить в выделенный слот один уголь и ввести название нашей программы, в нашем случае turtle_1.

ВАЖНО: Если вы сломаете черепаху, то программа пропадет. Поэтому я вам советую дать имя своей черепахе для этого надо ввести

и теперь если вы сломаете черепаху и потом ее снова поставите весь код останется на ней, и вам не придется его заново вводить.

Я очень надеюсь что хоть для кого то этот гайдик хоть что то прояснил. Чуть попозже я напишу и другие интересные программы для черепахи, как свои так возможно и чужие, и так же постараюсь разобрать их по винтикам что бы каждый понимал, что в них и как работает и мог без проблем изменять под свои нужды.



 
Статьи по теме:
Где найти мастера рун Witcher 3 руны
Побочные задания в дополнении «Каменные сердца» не так многочисленны, точнее, их совсем мало. Оно и понятно, водоворот событий при прохождении основного сюжета затягивает с головой, и отвлекаться от увлекательнейшего повествования совершенно не хочется. О
Прохождение castlevania lords of shadow 2
Прохождение Castlevania Lords of Shadow 2 Сначала обучение. Надо будет встать с трона и пройти в зал, где нажать все кнопки, находящиеся на дисплее слева. После появления солдат, продолжаем выполнять указания, просто бить их нет смысла. Есть некоторая пр
Всё, что вам нужно знать об SD-картах памяти, чтобы не облажаться при покупке Подключаем sd
(4 оценок) Если на вашем устройстве недостаточный объем внутренней памяти, можно использовать SD-карту как внутреннее хранилище для вашего телефона Android. Данная функция, называемая Adoptable Storage, позволяет ОС Андроид форматировать внешний носител
Как повернуть колёса в GTA Online и многое другое в FAQ по GTA Online
Почему не подключается gta online?Всё просто, сервер времено выключен/неактивен или не работает. Зайди на другой.Как отключить онлайн игры в браузере. Как отключить запуск приложения Online Update Clinet в Connect manager? ... На сккоко я знаю когда ты ум