Оглавление:
- Шаг 1. Перед началом работы…
- Шаг 2: Правила игры в угадайку
- Шаг 3. Программа блоков: переменные
- Шаг 4: Функции
- Шаг 5: Запуск программы и события встряхивания и обработчики событий
- Шаг 6. Стартовое сообщение и функции задачи
- Шаг 7: Событие Button a Click - ответьте на вызов BITs
- Шаг 8: Событие нажатия кнопки B - отправьте ответ на вызов BITs
- Шаг 9: выигрыш / проигрыш и остальные функции
- Шаг 10: Симулятор и код
Видео: О чем немного думает? Сделайте простую игру в угадывание с BBC Microbit !: 10 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Я купил пару микробитов BBC после того, как прочитал положительные отзывы о них в нескольких статьях в Интернете.
Пытаясь познакомиться с BIT, я пару часов поигрался с онлайн-редактором блоков Microsoft Blocks Editor и придумал простую игру в угадывание.
В этом IBLE мы поговорим о правилах игры и перейдем к функциям, собранным в различных блоках кода в редакторе блоков.
Наконец, взволнованная аудитория может перейти к онлайн-симулятору и попробовать эту простую игру.
Давайте начнем.
Шаг 1. Перед началом работы…
Аппаратное обеспечение
С доской BBC Microbit легко ознакомиться. Для этого IBLE все, что вам нужно знать, это то, что это крошечная плата с 2 кнопками, набором крошечных светодиодов и разъемом micro-USB, который действует как источник питания и средство для загрузки программы на плату..
Массив крошечных светодиодов можно запрограммировать так, чтобы они загорались по разным схемам.
Примечание:
Вам не нужна физическая доска для этого IBLE! На сайте BBC Microbit есть онлайн-симулятор для онлайн-тестирования кода, который вы разрабатываете.
Программное обеспечение
Этот IBLE не содержит подробных сведений о начале работы с BBC Microbit и / или онлайн-редактором блоков.
Зрителям предлагается изучить этот ресурс BBC Micorbit, прежде чем переходить к следующим шагам.
BBC Microbit был разработан для обучения программированию с использованием очень удобного для пользователя подхода, поэтому знакомство с другим языком программирования - это хорошо, но не обязательно, особенно если вы собираетесь использовать Microsoft Blocks Editor для изучения программирования.
Тем не менее, я еще не встречал продукта, с которым было бы так просто начать работу, чем BBC Microbit, учитывая, что я владею и играю с несколькими другими платформами программирования микроконтроллеров.
Шаг 2: Правила игры в угадайку
Правила игры следующие:
- При включении BIT думает о числе и предлагает игроку угадать, что это за число, печатая сообщение на своей светодиодной панели, и ждет ответа.
- Игрок делает предположение и нажимает левую кнопку (A) столько раз, сколько отвечает ответ - Например, если игрок угадал 5, то кнопку нажимают 5 раз.
- Чтобы отправить ответ на BIT, игрок нажимает правую кнопку (B) один раз!
- Если игроки угадывают, то игрок получает очко, если нет, то BIT получает очко.
- Если один игрок угадал число за пределами диапазона, другой игрок получает очко - BIT отображает большой X на своем светодиодном дисплее и переходит к угадыванию нового числа и повторению задания; Пример: если BIT предлагал вам угадать число от 1 до 5, и вы угадали 6, или если вы угадали НУЛЬ (просто нажав кнопку B перед нажатием кнопки A), то этот раунд считается недействительным.
- Вызов-ответ продолжается до тех пор, пока один из игроков не наберет максимально допустимое количество очков.
Начало новой игры:
Чтобы начать новую игру в любое время, просто встряхните BIT! Или просто отключите и снова подключите питание.
Шаг 3. Программа блоков: переменные
Программа использует несколько переменных, имена которых соответствуют их функциям, перечисленным ниже. Эти переменные можно создать, щелкнув вкладку «Программирование переменных» в редакторе блоков.
BIT_SCORE - отслеживает очки, набранные BIT
bitGuessed - эта переменная содержит случайное значение, угаданное BIT
ПРОВЕРИТЬ - при значении True BIT проверяет, совпадает ли предположение игроков с предположением BIT.
GAME_RANGE - это число ограничивает, насколько высоко BIT или игрок может угадать
Пример: если установлено значение 6, любой из игроков может угадать от 1 до 6.
MSG - строка, которая изменяется для отображения различных сообщений в зависимости от контекста игры.
PLAYER_SCORE - отслеживает набранные игроком очки
playerGuess - число, угаданное игроком, записывается в эту переменную.
ПРИМЕЧАНИЕ
Самая первая переменная с именем item является общей и переменной по умолчанию, и ее можно игнорировать.
Шаг 4: Функции
В рамках процесса обучения и для лучшей организации код был организован в ряд функций, которые можно было вызывать или вызывать в основной программе. Как и переменные, функции могут быть созданы и доступны, щелкнув вкладку «Дополнительно»> «Программирование функций».
Ниже приводится краткое описание функций:
ОбъявлениеWinner - эта функция распечатывает сообщение о выигрыше, адресованное выигравшему игроку.
doChallenge - функция, которую BIT вызывает, чтобы угадать число и бросить вызов игроку
showBadGuess - отображает сообщение с огромным крестиком на светодиодной панели, если любой из игроков угадает, выходит за пределы допустимого диапазона.
showLose - вызывается, если BIT выигрывает раунд испытания над игроком
showMessage - представляет сообщение, предлагающее игроку угадать число в заданном диапазоне.
showWin - вызывается, когда игрок выигрывает раунд угадывания над BIT
Шаг 5: Запуск программы и события встряхивания и обработчики событий
«On start» и «on shake» - это обработчики событий, которые вызываются соответственно, когда происходят события «start» и «shake». Как видно из кода блоков, то, что происходит при вызове этих двух обработчиков событий, почти такое же, как в:
- Функция showMessage () вызывается для отображения сообщения при запуске игры.
- После отображения сообщения есть короткая пауза в 650 миллисекунд.
- Вызывается функция doChallenge (), в которой BIT угадывает число и ждет, пока игрок-человек отправит предположение.
На следующем шаге мы рассмотрим эти две функции.
Тем не менее, существуют фундаментальные различия между обработчиками событий «при запуске» и «при встряхивании»:
- Обработчик событий «при запуске» запускается каждый раз, когда BIT запускается - например, при отключении и повторном подключении питания к BIT.
- Некоторые вещи, которые должны произойти только один раз при запуске программы, определены в "при запуске" и больше нигде во всей программе.
- Одна из таких вещей - инициализация переменной GAME_RANGE - в этом случае она инициализируется значением 6, что означает, что игроки могут угадать число от 1 до 6.
- Поскольку «при запуске» является базовой функцией BIT, неудивительно, что она доступна на вкладке «Основное программирование» в редакторе блоков.
- С другой стороны, «при встряхивании» - это обработчик событий, который вызывается всякий раз, когда пользователь вводит данные в BIT в виде быстрого встряхивания.
- Таким образом, обработчик события «при встряхивании» можно найти на вкладке «Программирование ввода» в редакторе блоков.
Шаг 6. Стартовое сообщение и функции задачи
Функция showMessage () Startup Message - это простая функция, которая очищает палитру светодиодов BITs с помощью команды очистки экрана и отображает прокручивающееся сообщение, предлагающее игроку угадать число.
Как видно из функционального блока showMessage, пара фиксированных фрагментов строки добавляется вместе к переменной GAME_RANGE, чтобы отобразить простое сообщение, в котором говорится:
Угадай 0-6!
Функция doChallenge () вызывается в начале каждого раунда вызова и, следовательно, выполняет следующие действия, как видно из функционального блока doChallenge:
- Инициализирует переменную playerGuess до нуля перед принятием нового ввода от игрока-человека
- Инициализирует переменную CHECK значением false - это означает, что раунд вот-вот начнется и еще не время сравнивать числа, угаданные обоими игроками.
- Затем, что наиболее важно, BIT выбирает случайное число из диапазона, определенного параметром GAME_RANGE, и записывает его в переменную bitGuessed.
- Наконец, светодиодная палитра загорается символом вопросительного знака, предлагающим игроку-человеку ввести данные в ответ на вызов BIT!
Примечание
Если значение переменной GAME_RANGE изменяется, как описано в предыдущем шаге, ваша игра может выглядеть и действовать немного иначе.
Функция соединения представляет собой строковую функцию и может быть доступна на вкладке «Программирование текста» в редакторе блоков.
Шаг 7: Событие Button a Click - ответьте на вызов BITs
Когда на светодиодном экране BITs появляется большой вопросительный знак, игроку-человеку нужно просто выполнить следующее:
- Угадайте, какое число BIT может думать от 0 до 6
- Нажмите кнопку A столько раз, сколько будет ваш ответ - Пример, если ваш ответ - 3, затем нажмите кнопку A 3 раза.
Очевидно, что нажатие кнопки - это пользовательский ввод, и поэтому обработчик события «кнопка включения» доступен через вкладку «Программирование ввода» редактора блоков. Каждый раз, когда пользователь нажимает кнопку A, этот обработчик событий выполняет следующие действия:
- Увеличьте значение переменной playerGuess на 1, пока оно находится в пределах лимита GAME_RANGE (в данном случае 6).
- Если игрок отправляет 7 или выше, предположение становится недействительным, а значение playerGuess сбрасывается обратно на ноль, что по существу делает недействительными предположения игроков.
Следующее действие - отправить ответ на вызов, который мы рассмотрим на следующем шаге.
Шаг 8: Событие нажатия кнопки B - отправьте ответ на вызов BITs
Человек-игрок отправляет ответ на BIT, нажимая кнопку B один раз. В обработчике события «при нажатии» кнопки B происходит ряд шагов, как только BIT получает ответ игроков, как указано маркерами кода на изображении:
- Флаг CHECK установлен в True - сигнал для BIT, чтобы сравнить его предположение с предположением игроков.
- Подсчет очков происходит только в том случае, если оба игрока угадали числа больше нуля и в пределах предела GAME_RANGE (из 6), и если нет, вызывается функция showBadGuess () - игрок с правильным предположением получает очко, а игрок с неправильным предположением теряет одно!
- Если угадание игроков совпадает с таковым из BIT, вызывается функция showWin () - игрок выигрывает в этом раунде!
- В противном случае вызывается функция showLose () - BIT выигрывает в этом раунде!
- В конце каждого раунда с помощью функции announceWinner () выполняется проверка, чтобы узнать, выиграл ли один из двух игроков, набрав 3 очка - если да, игра завершается, объявляется окончательный победитель, а все результаты и сообщения сохраняются. сброс настроек
- BIT перезапускает игру, выдавая вызов, вызывая функцию doChallenge (), и ожидает ответа игрока, и процесс повторяется.
Мы обсудим новые функции на следующих шагах.
Ждать! Как вы угадываете НОЛЬ?
- Если вы посмотрите на математическую функцию random (), вы увидите, что ее начальное значение установлено на ноль и не может быть изменено.
- Таким образом, BIT может угадать ноль и бросить вызов игроку в результате этого ограничения.
- Точно так же игрок-человек может отправить нулевое предположение, просто нажав кнопку B, не нажимая сначала кнопку A!
- Если это разрешено, то игроку-человеку не нужно прилагать никаких усилий, чтобы играть, и это не имеет смысла!
- Таким образом, это ограничение было компенсировано Бюллетенем №2. обсуждалось выше
Шаг 9: выигрыш / проигрыш и остальные функции
Все эти функции вызываются обработчиком события Button B «при нажатии», как показано на предыдущем шаге.
Эти функции довольно просты, и к этому времени вы должны познакомиться с интуитивно понятной и повествовательной природой кода, созданного комбинацией точно названных переменных и визуальных атрибутов редактора блоков.
- Функция showWin () отображает сообщение, указывающее, что игрок выиграл этот раунд испытания, и увеличивает переменную PLAYER_SCORE на 1.
- Точно так же функция showLose () отображает неверное предположение игрока и присуждает балл BIT, увеличивая переменную BIT_SCORE на 1.
- Функция showBadGuess () отображает на экране большой значок X, указывающий, что один из игроков сделал неверное предположение (0 или больше 6) - плохой игрок в этом случае теряет очко, а другой получает очко!
И, наконец, функция announceWinner () выполняет задачу объявления главного победителя после 3 раундов запроса / ответа, за которыми следуют:
- Сброс переменных счета PLAYER_SCORE и BIT_SCORE
- Кратковременная пауза и запуск новой игры путем вызова функции запуска showMessage (), описанной в предыдущем шаге (6) этого IBLE
Наконец, переходим к симулятору и коду!
Шаг 10: Симулятор и код
Код работает в онлайн-симуляторе, расположенном здесь
- Симулятор расположен в левом нижнем углу страницы.
- Кроме того, для загрузки кода можно использовать кнопку «Загрузить», если у вас под рукой есть BBC Microbit.
- Как упоминалось в начале IBLE, вам не нужен BBC Microbit для создания кода в редакторе блоков или для моделирования и тестирования вашего кода, хотя это не работает для любопытных людей, таких как я!
Примечание о кнопке редактирования
- Если вы заметили, код находится в общественном достоянии, и есть способ отредактировать его, используя кнопку «Изменить» в правом верхнем углу.
- Однако я искренне прошу вас сделать копию этого кода и изменить ее в соответствии с вашими потребностями, чтобы исходная версия была сохранена в интересах этого IBLE.
Спасибо! И счастливого кодирования !!!:-)
Рекомендуемые:
Сделайте простую телескопическую камеру для мобильного телефона: 5 шагов
Сделайте простую телескопическую камеру для мобильного телефона: мы любили фотографировать, но иногда нам нужно более оптимальное увеличение для цифровой камеры или камеры мобильного телефона. В этой инструкции я поделюсь с вами, как превратить камеру вашего мобильного телефона в телескопическую камеру. Я выбираю Nokia C3-01 i
Сделайте свою собственную одномерную игру в понг: 5 шагов (с изображениями)
Создайте свою собственную 1D-игру в понг: в этом проекте я покажу вам, как я объединил доску из МДФ с кнопками зуммера, светодиодами и Arduino Nano, чтобы создать 1D-игру в понг, в которую действительно интересно играть. Попутно я покажу вам, как создать схему электроники и как различать
Собери игру: немного !: 10 шагов
Собери игру: bit !: Давайте разберемся, куда должны деваться все эти винты
Сделайте крутой микро: немного на воздушной подушке вместе: 6 шагов (с изображениями)
Сделайте крутой микро: немного на воздушной подушке Вместе: Большую часть времени машины, которые мы сделали, могут двигаться только по поверхности земли. Сегодня мы собираемся создать судно на воздушной подушке, которое будет работать как в воде, так и по земле или даже в воздухе. Мы используем два двигателя, чтобы продувать воздух снизу, чтобы поддерживать корабль на воздушной подушке
Как проверить, будет ли игра запускаться на вашем компьютере, прежде чем покупать игру: 4 шага
Как проверить, будет ли игра запускаться на вашем компьютере, прежде чем вы ее купите. Недавно я приобрел Call of Duty 4 у друга (я мог бы добавить бесплатно), потому что не запускался на его компьютере. Что ж, его компьютер довольно новый, и меня озадачило, почему он не запускается. Итак, после пары часов поиска в Интернете я наткнулся на