今回つくるゲーム
難易度
今回はレゴブースト(LEGO®️BOOST)とスクラッチを連携させて、的当てゲームを作っていきます。レゴブーストのムーブハブでジョイスティックを作り、傾きセンサー(チルトセンサー)を活用し方向を定めてカラーセンサーを活用した発射ボタンでボールを発射し、的の風船に当てていきます。よくテレビ番組でスポーツ選手が挑戦する的当てチャレンジゲーム風に作っています。この記事では前回記事の続きでレゴブーストと連携させていきます。
まずは前回記事からトライしていただくか、こちらのプログラムをリミックスしてください
ジョイスティックを作る
まず、ジョイスティックを作ります。以下の動画を参考にして作成してください。ボタンを作るために輪ゴムを利用するのがポイントです。
レゴブーストとスクラッチを接続する
次にレゴブーストとスクラッチを接続させていきます。
左下のプラスボタンから拡張機能を選択していきます。
![](https://i2.wp.com/bingo-ojisan.xyz/wp-content/uploads/2021/10/スクリーンショット-2021-10-02-2.24.05-1024x638.png?resize=632%2C393&ssl=1)
LEGO BOOSTと接続する拡張機能を選択する。
![](https://i1.wp.com/bingo-ojisan.xyz/wp-content/uploads/2021/10/スクリーンショット-2021-10-02-2.24.16-1024x638.png?resize=645%2C402&ssl=1)
ガイダンスに沿って接続を進める
![](https://i2.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2021-10-02-2.24.50.png?resize=575%2C434&ssl=1)
![](https://i2.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2021-10-02-2.24.56.png?resize=575%2C434&ssl=1)
![](https://i1.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2021-10-02-2.25.08.png?resize=575%2C434&ssl=1)
連携プログラムを書く
ではここからレゴブーストで作成したジョイスティックとスクラッチを連携させるプログラムを書いていきます。一旦キーボード(左右の矢印・スペースキー)でゲームをつくっているので、それをレゴブーストの傾きセンサーとカラーセンサー で代用していくだけです。
傾きセンサーと連携
まずは大砲を左右に振る動きを作っていきます。下図のようにジョイスティックを左右に傾けると、チルトセンサーが左右の傾きを感知します。
![](https://i1.wp.com/bingo-ojisan.xyz/wp-content/uploads/2021/10/右に傾く-1024x768.jpg?resize=1024%2C768&ssl=1)
![](https://i2.wp.com/bingo-ojisan.xyz/wp-content/uploads/2021/10/左に傾く-1024x768.jpg?resize=1024%2C768&ssl=1)
大砲のコードに以下のように追加します。左右の矢印キーを使って動かすコードも邪魔にはならないので、そのまま置いておきましょう。左右に傾けて、また中央までスティックを戻すと止まるという構造にします。
![](https://i0.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2022-01-15-18.47.29.png?resize=841%2C625&ssl=1)
カラーセンサー と連携
次にボールを発射するボタンを作成していきます。ここではレゴブーストのカラーセンサー を活用していきます。下図のようにボタンを押してターゲットの赤いブロックが下に下がるとカラーセンサーが反応するようにしていきます。
本来、カラーセンサー には距離センサー機能もついているので、発射ボタンは距離センサーを活用すれば正確に作れます。しかし2021年10月現在では、スクラッチで距離センサーを機能させるブロックが存在しません。アップデートされることを願っています。
![](https://i0.wp.com/bingo-ojisan.xyz/wp-content/uploads/2021/10/正面-1024x768.jpg?resize=1024%2C768&ssl=1)
ではこれをコードに反映させていきます。もともとスペースを押すとボールが発射されていたところを、カラーセンサーが「赤を見た時」に置き換えるだけです。今回もスペースを押した時に発射されるプログラムはそのまま残しておきます。
![](https://i0.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2021-10-02-1.33.04.png?resize=850%2C601&ssl=1)
以上でレゴブーストとスクラッチの接続は終了です。
音をつける
最後に、音をつけておきます。今回はDanceFunkyの音をループで鳴らし、風船が爆発した時に、Crunchの効果音がなるようにします。それぞれステージと風船のコードに追加をしています
![](https://i2.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2021-10-02-2.46.34.png?resize=334%2C185&ssl=1)
![](https://i0.wp.com/bingo-ojisan.xyz/wp-content/uploads/2022/01/スクリーンショット-2021-10-02-2.46.49.png?resize=334%2C379&ssl=1)
これで終了です。以下のようにプレイできます
風船の大きさやスピードを変更して難易度を変えたり、球数制限を設けてスコアをつけるなど、自由にアレンジしてみてください。
実際にプレイしてみると、カラーセンサーが反応したりしなかったりで、なかなか難易度が高いゲームとなっています。カラーセンサーとターゲットブロックのチューニングが重要になってきますのでより良いゲームになるよう工夫してみてください。
仕上がりのプログラムはこちらからも確認できます。
そのほかにもレゴブーストとスクラッチを活用したゲームを公開していますので参考にしてください。