ミスターブンのおうちで、もっとプログラミング 05 川のごみとりゲームを完成させよう おしえる人 ぶんほじゅん

普通の顔

みんなこんにちは!

「mr. bunのおうちで、もっとプログラミング」もこれで最後だけど、今日は川のごみとりゲームをついに完成させよう!

ゲームを完成させるために「プレイ時間」「ゲーム終了(しゅうりょう)」を追加しよう!

これが今回の目標だ!

川ごみキャッチャー
注意の顔

プログラムの目的は
20秒のプレイ時間を計り
プレイ時間がすぎれば
点数をLEDに出す
というものだ。

 

まず、これが前回のプログラムだったね。MakeCodeを開いてみてこのプログラムが残っているか見てみよう。「川のごみとりゲーム」という名前のプロジェクトだよ!

 
makecodeの画面
説明の時の顔

これが用意出来たら、まずは「プレイ時間」を追加しよう。「プレイ時間」は、ゲームを遊ぶことのできる時間で、今回は20秒にする。そして20秒たったら「ゲームクリア画面」をLEDに出して「点数(リンクさせる)」を見られるようにしよう。

最終ステップ

「プレイ時間」を計れるようにして、「ゲームクリア画面」と「点数」をLEDに出す

「プレイ時間」は「稼働(かどう)時間」ブロックを使って計って、20000ミリ秒(20秒のこと)をこえたら「一時停止」というブロックを使いゲームを停止させてLEDに「SCORE(スコア、点数という意味)」という文字列と「点数」をLEDに出してみよう。例えば、20秒たって点数が4だったら「SCORE 4」という風にLEDに出ればいい。

レッツコード!

  1. ツールボックス「論理(ろんり)」を開き、「もし~なら、でなければ」ブロックを取って来て「もし~なら」の部分で「ずっと」ブロックの中の全てのブロックを囲う
    もしブロックを入れる
  2. ツールボックス「論理」を開き「くらべる」というところにある「0 < 0」というブロックを1で持ってきた「もし~なら、でなければ」ブロックの「真」という部分に入れる
  3. ツールボックス「入力」を開き「稼働時間」ブロックを持ってきて、2で持ってきた「0 < 0」ブロックの左側の0に入れる
  4. 2で持って来たブロックの右側の0に20000を入れる
    もしブロック完成
  5. ツールボックス「ゲーム」から「一時停止」ブロックを持ってきて1で持って来た「もし~なら、でなければ」ブロックの「でなければ」の部分に入れる
    一時停止
  6. ツールボックス「基本」から「文字列を表示(ひょうじ)」「数を表示」ブロックを持ってきて、5で入れたブロックの下に入れる
  7. 6で入れた「文字列を表示(ひょうじ)」ブロックに「SCORE」と打ち、「数を表示」ブロックにはツールボックス「ゲーム」から取って来た「点数」を入れる
    もしブロック完成

これができると「ずっと」ブロックの中はこうなるよ!

ゲーム完成

さあ、ダウンロードしてみよう!これで「川のごみとりゲーム」は完成だ!

ゲームをプレイしてみよう!きっとこのようになるはずだ

プレイ画面

もしもう一度プレイしたいときはmicro:bitのうら側にあるリセットボタンをおしてゲームをリスタートしよう!

クールな顔

これでゲームは完成だけど、もしゲームのむずかしさを変えてみたかったら、「ごみ」のスピードを上げてみよう!

「ごみ」のスピードは「もし1000 < スタートからの時間なら」の1000の部分を変えてみることで変えることができる。

ゲーム完成

例えばここの数字を500にすると「ごみ」は0.5秒に1コマ進むから今よりも倍のスピードになる。じゃあ、ここを200にしてみたら…?

ゲーム完成

これだと「ごみ」が早くてなかなかむずかしいけど、前より楽しくなったね!

あとは20秒のプレイ時間を変えてみたり、いろいろな数字を変えて行ったりしてみよう。たくさんの楽しみ方でゲームをプレイできるよ!

クールな顔

まとめ

もしかしたらみんなは今作ったものはただのゲームかと思うかもしれないけど、こういう風に本当に起こるようなことをコンピューターのなかでやってみることをコンピューターシミュレーションと言うんだ。コンピューターシュミレーションは例えば天気や雲の動きを予想したりするときに使われる。たくさんの計算をして、本当に起こることをやってみることで、コンピューターのなかで実験をしたりできるんだよ。今みたいに、ごみのスピードを変えたりして、ごみが川でどういう動きをするか川に行かなくてもわかるし、そうすることで、様々な予想をたてやすくなるんだね。

こういうふうに一見ゲームのようなものを作ることでも世の中の役に立つものを生み出すができるのはプログラミングのいいところだね!

さあ、これで「Mr. Bunのおうちで、もっとプログラミング」のコーナーは終わりだけど、これからもみんなには楽しみながらプログラミングの勉強を続けて、問題を解決(かいけつ)する力をつけてほしい。これからも解決しなきゃいけない問題はたくさん出てくるだろうけど、プログラミングがあれば楽しく解決できる方法が見つかるはずだ。それが先生の一番伝えたいことだよ!

笑顔

それではみんなありがとう!そしてこれからもレッツコード!

ページTOPへ戻る