Найти в Дзене

Игра "Летающая птичка" на mBlock3 + Arduino Uno + кнопка.

В недавней статье я уже описывал игру "Летающая птичка" в варианте для Scratch3 и управления клавишей пробел. Даже видео снял, так что можно посмотреть, как выглядит игра, в этом плане большой разницы с текущим предложением не будет. Хотя мы несколько изменим программу, ведь не интересно показывать так же))) А вот в чем будет основная разница: в данном случае мы рассмотрим игру, как классический пример удачного проекта для освоения работы в среде mBlock3 с микроконтроллером Arduino Uno и периферией, в данном случае - кнопкой. По сути, можно использовать ту же сборку, что мы собирали для проекта "Азбука Морзе" в текущем разделе. Даже пин подключения кнопки оставим то же, цифровой порт 2 на плате Arduino Uno. Но намного проще использовать готовую кнопку с «GVS» контактами (см. рис). Тут и риск проблем с контактами чуть поменьше, нет лишних сборок с резисторами. Создаем сами. По костюмам так же, как и в игре для Scratch. 3 костюма. Один со сложенными крыльями, 2 с вариантом крылья вверх и
Оглавление

В недавней статье я уже описывал игру "Летающая птичка" в варианте для Scratch3 и управления клавишей пробел. Даже видео снял, так что можно посмотреть, как выглядит игра, в этом плане большой разницы с текущим предложением не будет. Хотя мы несколько изменим программу, ведь не интересно показывать так же)))

А вот в чем будет основная разница: в данном случае мы рассмотрим игру, как классический пример удачного проекта для освоения работы в среде mBlock3 с микроконтроллером Arduino Uno и периферией, в данном случае - кнопкой.

Микроконтроллер и кнопка

По сути, можно использовать ту же сборку, что мы собирали для проекта "Азбука Морзе" в текущем разделе. Даже пин подключения кнопки оставим то же, цифровой порт 2 на плате Arduino Uno. Но намного проще использовать готовую кнопку с «GVS» контактами (см. рис). Тут и риск проблем с контактами чуть поменьше, нет лишних сборок с резисторами.

Сборка Arduino Uno + кнопка для игры. Сигнальный контакт кнопки подключен к порту 2.
Сборка Arduino Uno + кнопка для игры. Сигнальный контакт кнопки подключен к порту 2.

Спрайты и скрипты в среде mBlock3

Птица

Создаем сами. По костюмам так же, как и в игре для Scratch. 3 костюма. Один со сложенными крыльями, 2 с вариантом крылья вверх и вниз. Следите за центровкой (на рис. включил специально). Костюмы создаем после дублирования, чтобы не нарушить центровку. По размеру 1 костюма - как хотите, всегда можно исправить с помощью блоков масштабирования в программе.

-3

Скрипты птицы

-4

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

Как видно из рисунка, мы создаем и используем переменные верт_скорость (это более интересный вариант, чем просто линейный подъем) и кнопка (для считывания состояния кнопки).

Важно! Мы встречались с разными типами кнопок, посмотрите за поведением птицы. При нажатой кнопке она должна махать крыльями. Если она машет при ненажатой кнопке - поменяйте местами значения 0 и 1 в блоке "Если_читать цифровой пин _2_".

Так же обратите внимание на бирюзовые (вроде так цвет можно назвать) - читать цифровой пин, установить цифровой пин ... Это команды из группы Arduino (уже рассматривали ранее).

Так же мы создаем свой блок помигать, для контроля работоспособности программы. Без него можно обойтись, но так удобно, перед началом игры светодиод на плате Ардуино мигнет 3 раза.

Окно

Костюм у этого спрайта всего один.

-5

Внимание! Зеленые блоки уходят за рамки рисунка. В синей рамке выделения показал размер примерный. Это сделано для того, чтобы при смещении спрайта вниз-вверх, он все равно был зеленой преградой с окном. Размер окна подбирайте под игрового персонажа.

Скрипты окна.

-6

Здесь используется переменная Счет для подсчета очков.

Так же обратите внимание, что в mBlock3 можно выбирать в блоке Касается... какой именно стенки касается персонаж. В нашем случае это левая стенка.

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

Все, все персонажи и программы рассмотрены.

Запуск игры.

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

Все, можно нажимать на зеленый флаг и начинать играть. Светодиод на плате мигнет 3 раза и птица начнет полет. Жмем на кнопку - машет крыльями и поднимается выше. Отпускаем, потихоньку снижается. Счетчик считает окна, которые мы преодолели. Удачи!

-7

На всякий случай, готовый файл игры выложил в архив.