Как в Майнкрафт сделать ПОП ИТ на языке программирования Python. Уроки Python для детей
Мы создали игрушку-антистресс внутри Minecraft с помощью текстового кода. Делимся подробным уроком для детей.
Еще совсем недавно стремительно набирал популярность POP IT («пупырка», «лопалка», поп ит, попыт) — антистрессовая игрушка с кнопочками для нажатия. Шутки про Поп Ит и Симпл-димпл заполонили соцсети и проникли в разговоры детей. Мы подумали, почему бы не создать такой Поп Ит в Minecraft с помощью языка программирования Пайтон.
Как это происходит? Minecraft — инди-игра, в которой возводятся сооружения, целые города и виртуальные миры при помощи блоков. Мы подключаем к Minecraft язык программирования Python и создаем блоки не своими руками, а при помощи кода. В результате дети не только играют, но и приобретают полезный навык и развиваются.
Вы можете посмотреть подробную видеоинструкцию по уроку, если вам удобнее такой формат (видео в конце статьи).
Итак, начнем.
Перед началом вы можете посмотреть инструкции о том, как скачать и установить Minecraft и Python на Windows и на MacOS.
Процесс программирования
В удобном месте создадим и сохраним файл для программирования на Пайтон в среде разработки IDLE. В первую очередь импортируем требуемые для проекта модули.
Для комфортной работы в будущем зададим позиции по всей оси в разные переменные. Сделаем константы под блоки для POP IT. Будем использовать блоки:
- алмазные,
- золотые,
- железные,
- воздушные.
Для осуществления операций в игре присвоим команду переменной МС. Позиция персонажа будет храниться в переменной POS.
Создадим площадку на железных блоках и протестируем результат в самой игре. Потихоньку будем наводить порядок.
Готовим площадку
Для начала добавим к площадке золотистую рамку в 3 блока толщиной, применяя цикл FOR. К координатной точке Z будем добавлять переменную I. Весь следующий цикл у этой переменной значение будет меняться: вначале -1, затем 0, после этого опять 1. В результате получится объемистая золотистая рамка.
Функции RANGE передаются 2 аргумента: значения -1 и 2. 1-й аргумент задает исходное значение, 2-й — финальное. Во 2-й аргумент передаем цифру 2, а не 1, по причине того, что расчет производится ДО данного числа, т.е. без него. Например, если бы мы присвоили 2-му аргумент цифру 1, то переменная I в 1-м цикле приобрела бы значение -1, а после этого 0 и все. 3-й цикл бы не начался.
Посмотрим, что вышло.
Видно, что мешают железные углы. Отрезаем их, применяя воздушные блоки. Сейчас площадка подготовлена, можно начинать делать Поп Ит в Майнкрафт.
Размещаем «пупырышки»
Разместим на полученной площадке в 9 рядов алмазные блоки через 1, начиная снизу.
1. 1-й блок поставим так: к X добавим 4, к Y – 1, к Z неизменно будем добавлять 1. У 2-го блока схожие координаты, но к X добавим 6.
2. Во 2-м ряду получится 3 блока: у 1-го блока к X добавлено 3, у 2-го — 5, у 3-го — 7. К Y в 3-х случаях добавлена цифра 2.
3. 3-й ряд включает 4 блока. У 1-го блока к X добавлено 2, у 2-го — 4, у 3-го — 6, у 4-го — 8. К Y 4-х блоков добавлена цифра 3.
4. В 4-м ряду расположены 5 блоков. У 1-го блока к X добавлено 1, у 2-го — 3, у 3-го — 5, у 4-го — 7, у 5-го — 9. К Y 5-ти блоков добавлена цифра 4.
5. 5-й ряд создан по образцу 3-го, но к Y добавляется цифра 5.
6. 6-й ряд делаем по образцу 4-го, но тут к Y добавляем цифру 6.
7. Ряды 7- 9 имеют такую же конструкцию, как и ряды 1- 3, но относительно них зеркально отражены.
Запускаем бесконечный цикл. Останавливаем программу на 1 миллисекунде.
В переменную EVENTS занесем команду, которая возвращает события при клике по блоку правой кнопкой мыши (ПКМ), т. е. при касании блока мечом.
При помощи цикла FOR подсчитываем события. Переменной POS присваиваем координаты точки, где случилось событие.
При помощи условий будем программировать блоки таким образом, чтобы при нажатии на какой-нибудь алмазный блок, тот возникал на противоположной стороне площадки.
Запрограммируем также противоположную операцию: если кликнуть ПКМ на блок, который находится на противоположной стороне, он вернется туда, где стоял раньше. Так поступим со всеми рядами по очереди и проверим, что получилось.
Второй ряд
Теперь будем программировать алмазные блоки во 2-м ряду. Данный блок кода получится более длинным. Чем больше в ряду блоков, тем чаще будет работать команда ELIF.
Третий ряд
Далее программируем алмазные блоки в третьем ряду. Помним, что там находятся 4 блока. Нужно приготовиться много писать — строчек исходного кода выйдет побольше, чем в прошлом случае.
Четвертый ряд
Будем программировать 4-й ряд из 5-ти алмазных блоков. Для кодирования 4-го ряда понадобится написать большой кусок кода, т. к. в результате должен получиться самый длинный ряд.
Пятый ряд
Написание программного кода для 5-го ряда будет похоже на программирование 3-го ряда. В нем также 4 алмазных блока, но тут к Y добавляется 5.
Шестой ряд
6-й ряд будем программировать так же, как и 4-й, только к Y будем добавлять 6.
Седьмой ряд
Написание программного кода для 7-го ряда будем таким же, как для 5-го ряда, только к Y добавим 7.
Восьмой ряд
В 8-м ряду придется программировать уже 3 блока, как было во 2-м ряду. Но к Y добавим 8.
Девятый ряд
9-й ряд включает только 2 блока. Мы достаточно быстро все сделаем.
Вот и все! Мы получили POP IT при помощи языка кодирования Пайтон (Python).
***
Материал урока подготовлен школой программирования для детей «Пиксель». Мы учим детей 5-17 лет программировать, создавать веб-сайты, игры, анимацию и др. Приходите к нам учиться программировать на Python.