広告

【プログラミング入門】【Scratch】9日目 りんご拾いゲーム

2022.10.10更新

Scratchでプログラミング入門のタイトル画像になります

プログラミングって難しい!?

そんな事はありません!

Scratch(スクラッチ)を使えばカワイイキャラクター達と一緒にブロックを組み合わせるだけで簡単にプログラミングのキホンを学ぶことができます!

インターネットにつながるパソコンがあればすぐに始められますので「プログラミング授業の参考にしたい!」「まずは軽いプログラミングに触れてみたい!」などなどぜひ当サイトをご利用ください。

りんご拾いゲーム

今回は今までに学んだ事の復習もかねてとても簡単な「りんご拾いゲーム」を作りたいと思います。

りんご拾いゲームの内容

3つのりんごを決まった場所に置いて、矢印キーでネコちゃんを移動、3つのりんごを全部拾ったらクリアという感じでいきたいと思います。

作る順番としては

1・背景、スプライトを追加

2・旗が押されたときにそれぞれを初期位置に配置

3・矢印キーでネコちゃんを移動

4・ネコちゃんとりんごの当たり判定

5・クリア判定

だいたいこんな順番で作っていきたいと思います。

背景とりんごを追加

まずは適当な背景とりんごを3つ追加します。

背景・スプライトの追加のやり方は6日目に学びましたね!

Scratch「りんご拾いゲーム」の作り方の説明画像1

忘れちゃったという方は復習しましょう。

Scratch「りんご拾いゲーム」の作り方の説明画像2

背景とりんごを3つを追加しました。

初期位置に配置

「旗が押されたとき」に初期位置に配置します。

「Sprite1」

Scratch「りんご拾いゲーム」の作り方の説明画像3

「Apple」

Scratch「りんご拾いゲーム」の作り方の説明画像4

「Apple2」

Scratch「りんご拾いゲーム」の作り方の説明画像5

「Apple3」

Scratch「りんご拾いゲーム」の作り方の説明画像6

実行結果

Scratch「りんご拾いゲーム」の作り方の説明画像7

とりあえずこんな感じで配置したいと思います。

矢印キーでネコちゃんを移動

矢印キーでネコちゃんを移動させます。

今まで通りの移動でも良いですが、せっかくなので7日目に学んだ「もし~なら」ブロックを使って「ネコちゃんが画面の外にはみ出さないように」という処理も加えましょう。

Scratch「りんご拾いゲーム」の作り方の説明画像8

右に移動する時

「画面の外にはみ出さないようにする」のでネコちゃんの「x座標」が画面の外にはみ出さない場所にある間だけ「右向き矢印」で移動するというようにプログラミングすればネコちゃんがはみ出さずにすみます。

「実行結果画面」のネコちゃんを直接動かしてはみ出さない場所を確かめて残りの「上・下・左」も同じようにプログラミングしましょう。

上向き矢印:y座標 < 130

下向き矢印:y座標 > -130

右向き矢印:x座標 < 200

左向き矢印:x座標 > -200

だいたいこの間にあれば大丈夫そうです。

実行してみると・・・、

Scratch「りんご拾いゲーム」の作り方の説明画像9

ネコちゃんが画面の端で止まりました!

ネコちゃんとりんごの当たり判定

次は当たり判定です。

8日目に学んだ当たり判定とメッセージを使って「ネコちゃんがりんごにぶつかったらりんごを隠す」というトコロまでを作ってみましょう。

「Sprite1」

Scratch「りんご拾いゲーム」の作り方の説明画像10

「Apple」

Scratch「りんご拾いゲーム」の作り方の説明画像11

「もし~なら」ブロックと「~に触れた」ブロックを組み合わせて「もし~に触れたなら」というブロックを作ってりんごを一つ一つ当てはめます。

「触れた」ときに「メッセージ」を送ってその時にぶつかったりんごを隠します。

「新しいメッセージ」でメッセージの種類を増やす事ができるので、それぞれのりんご用のメッセージを作りましょう。

ひとまず

Apple・・・メッセージ1

Apple2・・・メッセージ2

Apple3・・・メッセージ3

みたいにしてみました。

どのりんごに触れるかはわからないので動くたびにすべてのりんごに対して判定しているトコロがポイントです。

ゲームを再開する時にりんごが隠れたままにならないように、りんごのプログラムの「旗が押されたとき」に「表示する」ブロックも加えましょう。

それでは実行してみます。

Scratch「りんご拾いゲーム」の作り方の説明画像12

りんごが無事消えました!

なにやら大変な当たり判定ですが、この後に学ぶ「繰り返し」や「クローン」などのワザを使えるようになるともう少しシンプルに当たり判定などもできるようになりますのでご安心ください。

広告

クリア判定

最後にクリア判定です。

今回のクリア条件は「画面上のすべてのりんごがなくなった時にクリア」ですね。

いくつかやり方があると思いますが、今回はそれぞれのりんご用に変数を用意してその変数の内容でそのりんごがまだあるのか?ないのか?を判断して「すべてのりんごがなくなった時」という判定をしたいと思います。

まずはりんごの数だけ「すべてのスプライト」用で変数を用意しましょう。

Scratch「りんご拾いゲーム」の作り方の説明画像13

りんごは3つなので変数も3つですね。(説明の為に画面に表示しておりますが、遊ぶ時はジャマなので変数表示のチェックを外して隠してしまいましょう!)

名前はなんでもいいですが、自分でどのりんごの変数なのかわかりやすいように名前をつけましょう。

今回はスプライト名と同じ「Apple」・「Apple2」・「Apple3」という名前にしてみました。

「すべてのスプライト」用にする事でネコちゃん・背景・りんご、すべてのプログラムからこの変数をいじる事ができます。

次に変数の内容ですが、ここでは仮に

変数の内容が「0」・・・りんごがまだある

変数の内容が「1」・・・りんごがもうない

という設定でいきます。

それではプログラミングしていきましょう。

まず「旗が押されたとき」に初期位置の設定と一緒に「りんごがまだあるか?ないか?変数」の設定も行います。

「Apple」

Scratch「りんご拾いゲーム」の作り方の説明画像14

初期設定ではもちろん「りんごはまだある」ので変数の内容は「0」ですね!

他のりんごも同じようにプログラミングしましょう。

次はりんごとネコちゃんがぶつかった時にそのりんごの「まだあるか?ないか?変数」の内容を「1」にします。

Scratch「りんご拾いゲーム」の作り方の説明画像15

ここはなんとなく想像がつくかもですが、りんごを隠す時に一緒に変数の内容を「1」にしてあげるだけです。

これでりんごがまだあるのか?もうないのか?を変数の内容で判断する事ができますね!

あとはすべての変数が「1」の時にゲーム終了の合図をするだけです。

ここではまとめてネコちゃんのプログラムで判定してゲーム終了時に「おしまい!」と言わせてみましょう。

まずはりんごとネコちゃんがぶつかった時のプログラムに「新しいメッセージ」を加えます。

Scratch「りんご拾いゲーム」の作り方の説明画像16

他のりんごも同じメッセージで大丈夫です。

これでりんごとネコちゃんがぶつかった時に合図ができるので、ネコちゃんのプログラムで受け取ってクリア判定をします。

クリア条件は「すべての変数が「1」の時」なので条件を重ねる「かつ」ブロックを使って「もし変数Apple=1 かつ 変数Apple=2 かつ 変数Apple=3ならば」みたいなブロックを作っていきます。

Scratch「りんご拾いゲーム」の作り方の説明画像17

こんな感じですね!

「かつ」ブロックを使えば複数の条件を重ねる事ができます。

それでは実行してみましょう!

Scratch「りんご拾いゲーム」の作り方の説明画像18

クリア判定できました!

遊んでみる

それでは遊んでみましょう!

ゲームスタート!

Scratch「りんご拾いゲーム」の作り方の説明画像19

ネコちゃんを移動して・・・、

Scratch「りんご拾いゲーム」の作り方の説明画像20

りんごを拾って

Scratch「りんご拾いゲーム」の作り方の説明画像21

すべてのりんごがなくなればクリア

Scratch「りんご拾いゲーム」の作り方の説明画像22

全体のプログラムになります!

Sprite1のプログラム

Apple・Apple2・Apple3のプログラム

まだまだできる事は少ないですが、ここまでに学んだ事だけでもクイズゲームやじゃんけんゲームみたいなミニゲームは作れますのでいろいろと工夫してみてください。

次回はいよいよ繰り返しの命令に入ります!

次回

10日目 繰り返し

広告

Copyright 2016 K.N/petitetech.com