Skip to content

アクティビティ

反応ゲーム

上級 | MakeCode, Python | LED表示, 端子 | ブール論理, プロダクトデザイン, 人体, 入出力, 反復処理, 電子工学, 電気

ステップ1: 作る

説明

思い切りたたける本物の物理スイッチが付いた反応ゲームを作ります!

micro:bitピンに取り付けられた2つの自家製圧力スイッチ

動作の仕組み

  • 段ボールとアルミホイルを使って、圧力スイッチアラームプロジェクトで使ったのと同じような物理入力スイッチ2個を作りましょう
  • 写真のように、各スイッチの一つのアルミホイルパッドをmicro:bitのGNDピンに、もう一方をプレイヤーAかプレイヤーBに応じてピン1またはピン2に接続して、micro:bitピンに接続します。
  • プログラムは、1秒から5秒の間、ランダムな時間を待機してから、LEDディスプレイ出力にハートを表示します。
  • 不正行為を防止するためブーリアン論理を使用するので、点灯する前にボタンを押すことはできません! ブーリアン変数 は、True と False の2つの値のみを持つことができます。 game started変数はゲームが始まってから、どちらのボタンが押されたかを確認するためのものです。これでボタンをフライングで押すことを防ぎます。
  • 無限ループはゲームを実行し続けるので、プレイし続けることができます。

必要なもの

  • micro:bit 1台
  • ワニ口クリップケーブル 4本
  • スクラップの段ボール、アルミホイル、のり、はさみ

ステップ2: プログラムする

1from microbit import *
2import random
3
4while True:
5    gameStarted = False
6    sleep(random.randint(1000, 5000))
7    gameStarted = True
8    display.show(Image.HEART)
9    while gameStarted:
10        if pin1.is_touched():
11            display.show('A')
12            gameStarted = False
13        elif pin2.is_touched():
14            display.show('B')
15            gameStarted = False
16    sleep(3000)
17    display.clear()
18

ステップ3: 改善する

  • 変数を使って各プレイヤ―のスコアを記録しましょう
  • タイマーを追加して、各勝者がどれだけ反応が速いか表示します
  • どのプレイヤーが最速の反応時間か記録します