【Scratch】サッカーゴールを決めよう!<レベル1>

2019年5月2日

Scratchで「サッカーゴールを決めよう」を作っていきます。ゴールキーパーはペンギンさんです。ペンギンさんにボールを取られないように注意しましょう。
【Scratch】サッカーゴールを決めよう!では、座標位置や条件文、メッセージの受け取りなどが学べます。

【Scratch】サッカーゴールを決めよう!

さぁ、【Scratch】「サッカーゴールを決めよう!」でプログラミングをはじめよう。

【Scratch】「サッカーゴールを決めよう!」で学べる知識

  • 座標
  • 変数
  • 繰り返し(ループ)
  • 条件文
  • メッセージのやり取り

まずは【Scratch】「サッカーゴールを決めよう!」の工程をかくにん

  1. CodeClubの追加プロジェクトから「Goat the Goalie」のリミックスをつくります
  2. サッカーボールを左右に移動させます
  3. スペースキーを押したらボールは縦に動くようにします
  4. トラブル発生!ボールを元に戻す方法は?
  5. 場合分け ペンギンにボールを触られたら
  6. 【ペンギンブロック】メッセージを受け取り、守ったぞーと言う
  7. 場合分け ペンギンガボールに触れなかったら
  8. 変数で「タイマー」を追加
  9. ゲーム終了の設定
  10. 時間中ずっとプレイできるように設定
  11. 変数「スコア」を追加
  12. ペンギンをコントロール

1 CodeClubの追加プロジェクトから「Goat the Goalie」のリミックスをつくります

今回の【Scratch】「サッカーゴールを決めよう!」はCodeClubの追加プロジェクトです。
背景と必要なスプライトのセットがリミックスで手に入ります。
rpf.io / beat-the-goalie-onからスクラッチのサイトに飛びます。
そうすると、ラズパイ財団のマークと「リミックス」表示がされている作品が表示されます。

CodeClubの追加プロジェクトから「Goat the Goalie」のリミックスをつくります/【Scratch】サッカーゴールを決めよう!

2 サッカーボールを左右に移動させます

サッカーボールはスペースキーを押したら、縦に動くようにします。
それまでは、サッカーボールは画面の下辺りを横に、左右にずっと動くようにします。
端まで行ったら、戻ってくるようにもする必要があります。

【Scratch】サッカーゴールを決めよう!

右側の画面の上にあります緑色の旗をクリックして、実際にサッカーボールが左右に動くことを確認しましょう。

【Scratch】サッカーゴールを決めよう!

3 スペースキーを押したらボールは縦に動くようにします

縦に動く、ということはy座標が動くことを意味します。
繰り返しのブロックの下に15回繰り返しのブロックをつなげます。
その中に、y座標が10ずつ動くを入れます。

【Scratch】サッカーゴールを決めよう!

右側の画面の上にあります緑色の旗をクリックして、今度はスペースキーを押してボールが縦に動くことを確認しましょう。

【Scratch】サッカーゴールを決めよう!

4 トラブル発生!ボールを元に戻す方法は?

実際に動かしてみますと、一度ゴールしたボールはボールラインを割ったまま左右に動いています。
本当は、ゴールした後もボールは最初の位置まで戻ってくるようにしたいです。
ボールを元に戻すには、どうしたらいいでしょうか?
このとき、座標位置が役に立ちます。
ゲーム開始のボールの位置を左下隅と決めておきましょう。

【Scratch】サッカーゴールを決めよう!

5 場合分け ペンギンにボールを触られたら

ここで条件文が登場します。
ここで使うのは「もし〇〇なら、でなければ」というブロック。
もしペンギンさんにボールを触られたら、笛がなり、「守ったよ」というメッセージを送るように設定。
「守ったよ」はメッセージを送るのブロックで作りました。

【Scratch】サッカーゴールを決めよう!

6 【ペンギンブロック】メッセージを受け取り、守ったぞーと言う

今度はペンギンさんのブロックを作っていきます。
メッセージを受け取ったら、「守ったぞー!」と言うようにします。

【Scratch】サッカーゴールを決めよう!

7 場合分け ペンギンがボールに触れなかったら

条件分の残り、「でなければ」を作っていきます。
音は違う音を使いましょう。
メッセージは「ゴールしたよ」にしました。
ペンギンブロックも同じです。

【Scratch】サッカーゴールを決めよう!

8 変数で「タイマー」を追加

ゲームの時間を30秒に設定しましょう。
そのためには、まず変数で「タイマー」という変数を作成します。
タイマーはゲーム開始時点では30と表示され、1秒ずつカウントダウンして、30秒後には0になるようにします。
ボールのブロックで、新たに作っていきます。

【Scratch】サッカーゴールを決めよう!
【Scratch】サッカーゴールを決めよう!

9 ゲーム終了の設定

30秒経過したらゲーム終了です。
終わるまで音を鳴らし、すべての動きを止めます。

【Scratch】サッカーゴールを決めよう!

一度緑色の旗をクリックして、タイマーが30秒をカウントダウンしたらOKです。

10 時間中ずっとプレイできるように設定

サッカーボールのブロックを緑色の旗ブロックの下から最後までを「ずっと」のブロックで囲みます。

【Scratch】サッカーゴールを決めよう!

11 変数「スコア」を追加

「タイマー」と同じように変数「スコア」を作成します。
スコアは、ゲーム開始時点で0点で、ゴールするたびに1点ずつ加点されるようにします。

【Scratch】サッカーゴールを決めよう!

12 ペンギンをコントロール

ペンギンさんはゴールキーパーです。
ゴールキーパーはボールを取るために、左右に動きます。
右キーを押したら右に、左キーを押したら左に動くようにします。

【Scratch】サッカーゴールを決めよう!

13 バグ(不具合)を修正し完成です!

緑色の旗をクリックし、ゲームをスタートしてみます。
特に問題はありませんでした。
ゲームが簡単すぎたり、難しすぎる場合は、ボールの動きや時間を変えてみても良いでしょう。

【Scratch】サッカーゴールを決めよう
ボールのブロック【完成版】
【Scratch】サッカーゴールを決めよう
ペンギンのブロック【完成版】

最初は誰だって初心者です。
やりながら順番に覚えていきましょう。
さぁ、プログラミングをはじめましょう。