Игра-головоломка на память с использованием BBC MicroBit: 7 шагов
Игра-головоломка на память с использованием BBC MicroBit: 7 шагов
Anonim
Image
Image

Если вы не знаете, что такое BBC MicroBit, это, по сути, очень маленькое устройство, которое вы можете запрограммировать, чтобы иметь входы и выходы. Вроде как Arduino, но более конкретизирован.

Что мне действительно понравилось в MicroBit, так это то, что он имеет две встроенные кнопки ввода и светодиодную матрицу 5 x 5!

Итак, подумал я, почему бы не создать простую в изготовлении, но сложную игру-головоломку для запоминания!

ps: Если вы не хотите кодировать, я прикреплю файл.hex для прямой загрузки в MicroBit.

Запасы

Все что тебе нужно это

1) BBC MicroBit

2) Ноутбук или ПК для программирования Microbit

3) Немного терпения!

Шаг 1. Создайте проект с помощью онлайн-платформы блочного кодирования Makecode

Перейдите на https://makecode.microbit.org/ и создайте новый проект. Здесь мы будем создавать код для нашей игры.

Вот мой прикрепленный код:

Шаг 2: Что такое игра?

Что ж, подумайте об этом как о двухкнопочной игре Simon Says.

На экране отобразится последовательность комбинаций A и B, и игрок должен запомнить последовательность, а затем ввести ее с помощью кнопок A и B на MicroBit.

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

Пойдем!

Шаг 3: ВРЕМЯ КОДИРОВКИ !

Не совсем так. Поскольку веб-сайт makercode действительно удобен для начинающих и имеет так называемое блочное кодирование. Здесь мы просто берем блоки и объединяем их с другими блоками! Удивительно, правильно!

Что ж, сначала нам нужно понять, для чего нам нужно кодировать.

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

«level» = 1, «Delay» = 500, «set.score» = 0.

Мы будем использовать функцию оценки, чтобы отслеживать счет.

В нашей игре первый шаг - выбрать случайную букву: A или B.

Мы можем сделать это, сначала случайным образом выбрав между 1 и 2, а затем назначив A на 1 и B на 2 и сохранив в переменной «AB».

Вуаля!

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

это в переменной для уровня, мы уменьшим «Задержку» на 50 мс, пока она не станет 50 мс, начав уровень 1 с 500 мс.

Шаг 4: повторение этого для каждого уровня с шагом в две буквы

Мы достигаем этого, повторяя блок «Длина» несколько раз, где

Длина = 2 + (уровень - 1) х 2.

Это означает, что если у нас есть level = 1 в начале цикла, и мы увеличиваем уровень на 1, наша длина на уровень становится 2, 4, 6, 8 и так далее.

Теперь, когда мы сгенерировали письмо, мы хотим его сохранить. Итак, мы устанавливаем пустую строку «Вопрос» как «Вопрос» + «AB».

Это даст нам всю строку, которую мы сгенерировали буква за буквой.

нам также нужна какая-то индикация, чтобы увидеть, закончился этот цикл или нет, чтобы мы могли получить ответ от игрока. мы делаем это, устанавливая переменную с именем «cond» в начале как 0, а затем меняя ее на 1 по окончании цикла. просто!

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

Мы поместим все это в функцию под названием "Generate", добавим начальное изображение, добавим изображение туда, добавим? в конце концов и бум!

Шаг 5: Получение ответа

Когда пользователь нажимает A или B, нам нужно сохранить эту информацию и создать строку «Ответ», чтобы мы могли сравнить ее с «Вопросом».

Мы делаем это, получая ввод только тогда, когда "cond" = 1, чтобы предотвратить ввод ответа игроком, когда отображается "Вопрос".

Затем мы объединяем ввод в строку и сохраняем ее как «Ответ».

Comprende?

Шаг 6: Проверка ответа

Теперь мы просто сравниваем сгенерированный нами «Вопрос» с «Ответом», который дал игрок.

Если они совпадают, то мы переходим на следующий уровень, иначе… ИГРА ЗАКОНЧЕНА !!!

И в конце выводим счет.

Это также мы сохраним в функции под названием "Check", которая будет вызываться, если "cond" = 1 при получении ввода, иначе … ИГРА ЗАВЕРШЕНА!

Шаг 7: Готово

Теперь все, что нам нужно сделать, это загрузить код в MicroBit, а затем протестировать всех, кого вы знаете!