игра "Птица"
Это простая версия игры Flappy Bird для micro: bit. Цель состоит в том, чтобы направить летящую птицу, которая постоянно движется вправо, между препятствий. Если игрок касается препятствия, он проигрывает. Цель этого урока - научить основам игровых спрайтов, массивов и циклов.
Шаг 1: добавь птицу в игру
Во-первых, мы собираемся добавить спрайт для птицы из меню игры и заставить ее мигать.

Шаг 2: Заставь Птицу летать
Прежде чем создавать код для игровых действий, давайте сначала добавим некоторые элементы управления, чтобы мы могли передвигать спрайт птицы. Мы будем управлять птицей, нажимая кнопку A , чтобы подняться, или кнопку B , чтобы опуститься.

Шаг 3: Создание препятствий
Мы собираемся случайным образом создавать препятствия. Мы будем держать все препятствия внутри массива. Все препятствия будут иметь одну дыру, через которую пролетит птица.
Сначала создайте массив, obstaclesкоторый будет содержать все спрайты препятствий.

Теперь генерируйте вертикальные препятствия, состоящие из 4 спрайтов и 1 случайной лунки. Создайте новую переменную с именем emptyObstacleY. Используя pick random , сгенерируйте случайное число из 0to 4и сохраните его внутри emptyObstacleY.
Используя для цикла, итерации от 0до 4. Для каждой координаты не равны emptyObstacleYсоздание и добавление спрайтов препятствий в конец obstaclesмассива.

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

Шаг 4: заставь препятствия двигаться
Получите доступ к каждому препятствию, используя цикл элемента for ( итерируйте по obstaclesмассиву) и уменьшите obstacle Xкоординату на 1. Щелкните правой кнопкой мыши на блоке значений и переименуйте его в препятствие ; затем перетащите этот блок препятствий поверх спрайта в блоке change x .

Шаг 5: сделать исчезающие
препятствия
Заставьте препятствия исчезнуть после достижения самого левого угла. Переберите все препятствия, удалите спрайты препятствий, Xкоординаты которых равны 0, и удалите их из obstaclesмассива.

Шаг 6: Создайте больше препятствий
На данный момент наш код генерирует только одно вертикальное препятствие. Нам нужно поместить код генерации препятствий в цикл forever, чтобы он продолжал генерировать все больше и больше препятствий.

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

Шаг 7: Игра окончена
Сейчас ничего не происходит, когда птица сталкивается с препятствием. Исправьте это, перебирая obstaclesмассив и проверяя, равна ли любая координата спрайта препятствия координате птицы.

Финальный код

здесь вы можете открыть готовую игру
https://makecode.microbit.org/_R6VeF40FXYKP