Skip to content

アクティビティ

グループでテレポートするアヒル

中級 | MakeCode, Python | 加速度センサー, 無線 | ブール論理, 通信, 電波

ステップ1: 作る

説明

無線を使った「ホットポテト投げ」いや「ホットダック投げ」グループゲームです!

micro:bit 3台(1台は揺するとLED画面にアヒルを表示する)

動作の仕組み

  • アヒルのテレポートゲームと同じく、このプログラムでも無線を使って micro:bit 間で空中に「アヒル」を投げます。 あのゲームは、同じメッセージを全員に送るので、2人でしか遊べませんでした。すぐに気が付きますが、みんながアヒルを持っていて、誰でも投げられてしまいます。
  • プレイヤーが2人以上の場合、それぞれのmicro:bitに、どのプレイヤーにカモを渡すか選ぶ方法をが必要です。そこで各プレイヤーのプログラムには、1から始まる個別のID番号を割り当てます。
  • この番号をを変数IDに格納し、それぞれの micro:bit に書き込む前に2、3、4などに変更してから書き込みます。
  • players に人数を設定して、全員がアヒルを獲得できるチャンスがあることを確認します。 プログラムは、LEDディスプレイにプレーヤーID番号を表示するので、誰がどの番号かわかります。
  • アヒルを持っているプレイヤーだけが投げられるようにするために、このプログラムはアヒルを持っている場合に限り、micro:bitをゆさぶるとメッセージを送信します。 Boolean 変数 hasDuck を使用してこれを記録します。 論理型変数は、True か False の2つの値だけを持てます。 スタート時にプレイヤー1だけがアヒルを持ち、他の誰も投げられません。
  • プレイヤー1がmicro:bitをゆさぶると、プログラムは1からプレイヤー数の間の乱数を生成します。 乱数が自分のID番号と等しくなければ、新しいID番号を無線で送信し、画面をクリアして>hasDuck変数をFalseに設定します。
  • 乱数が自分のID番号と等しい場合、再度投げる必要があります。自分にカモが投げられて、ハイパー空間でなくすよりましです!
  • micro:bitが番号を受け取った場合、ID番号が自分のID番号と等しい(一致)するか確認します。 等しい場合は、おめでとう、カモを今を持っています! カモはLEDディスプレイに表示され、hasDuck変数はTrueになり、今度は他の誰かにカモを投げられます。
  • カモは人に迷惑をかけないで投げてください:ゲームに夢中になって、micro:bitを落したり、友達にぶつけないようにしましょう。

必要なもの

  • 3つ以上のmicro:bit
  • MakeCodeまたはPythonエディター
  • バッテリーパック(オプション)
  • 一緒に遊ぶグループ

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

ステップ3: 改善する

  • カモの代わりに他のものを投げるようにプログラムを変更しましょう。
  • 現時点では、自分のID番号と同じ乱数を選ぶ場合は、もう一度振る必要があります。 こうならないようにプログラムを変更しましょう。 こうするにはいくつかの方法があるかもしれません。
  • プレイヤー 1 はゲーム開始時に常に アヒルを持っています。 カモを持つ最初のプレーヤーがランダムに選択されるようにプログラムを改良できますか? 全プレイヤーのmicro:bitにどうやってこれを伝えますか?