「Lv2 恐ろしい迷路からの脱出!」では、当たり判定を学びます。

当たり判定とは、キャラクターが何かとぶつかったり、当たった時に「触れた」という事をプログラミングする事です。

ゲームでは、必ずと言っていいほど出てきますし、出来る事が広がりますので、覚えておくといいでしょう。

 

ここをクリックして「Lv2 恐ろしい迷路からの脱出」のウェブページを開いてください。

緑色の旗(はた)をクリックして、どのようなゲームなのか遊んでみましょう。


プログラミングは、いくつかの要素(ようそ)が組み合わさって出来ています。

このゲームは、8つの要素(ようそ)で作られています。

 

1. 勇者(ゆうしゃ)は足踏(あしぶ)みしている

2. 勇者(ゆうしゃ)はマウスポインターにくっついている

3. 画面は、黒い壁の迷路になっている

4. 動かないドクロが1体いる

5. 出てきたり消えたりするドクロが2体いる

6. 勇者(ゆうしゃ)が壁やドクロに触れると「しまった!」といってゲームが止まる

7. 勇者が青い丸に触れたとき「やったー!」といってゲームが止まる

8. 50秒たっても青い丸に触れていなければ、ゲームオーバーになる

 

ひとつひとつプログラミングしていきましょう。

 

ゲームを作る為の素材(そざい)は、こちらとなります。

TSUKURUキャラ
https://scratch.mit.edu/projects/116263060/

 

画面(がめん)右上の「中を見る」をクリックします。

 

画面上あたりにハサミのマークがあるので、これをクリックして使わないキャラクターを消してしまいましょう。

 

ハサミをクリックすると、マウスポインターがハサミのマークに変わりますので、コウモリのキャラクターの上にハサミを移動(いどう)させて、クリックすると削除(さくじょ)されます。

 

使わないキャラクターを全て消すと、以下のような画面になります。

間違(まちが)って、勇者(ゆうしゃ)やドクロを消してしまった場合(ばあい)は、もう一度(いちど)ウェブページを開くところからやり直してください。

 

1. 勇者(ゆうしゃ)は足踏(あしぶ)みしている

勇者(ゆうしゃ)にプログラミングする為には、スプライトにある「ゆうしゃ01」をクリックします。

勇者(ゆうしゃ)の足踏(あしぶ)みも、2枚のコスチュームを入れ替える事で出来(でき)ています。

Lv1で行ったドラゴンの羽ばたきと同じように、プログラミングしてみましょう。

 

2. 勇者(ゆうしゃ)はマウスポインターにくっついている

コスチュームを入れ替(か)えたのとは別に、もう一度、「旗がクリックされたとき」「ずっと」を置(お)きます。

 

「動き」カテゴリーに切り替え、「マウスポインター▼へ行く」というブロックを選(えら)びます。

 

「旗がクリックされたとき」「ずっと」の中に入れます。

この時、「0.2秒待つ」の下に入れてしまうと、0.2秒止まりながらマウスポインターについていくので、スムーズに動きません。

 

3. 画面は、黒い壁の迷路になっている

それでは迷路を作りましょう。

「ステージ」をクリックし

 

「背景(はいけい)」をクリックして、「最初(さいしょ)の背景(はいけい)」が選ばれている事を確認(かくにん)します。

 

まずは簡単(かんたん)な迷路(めいろ)を作ってみます。

四角形ツールをクリックしましょう。

 

続いて画面下にある塗(ぬ)りつぶされた四角をクリックします。

 

右側の白いステージの上で、ドラッグして長方形を描(えが)き、次のような迷路(めいろ)を作ります。

 

最初(さいしょ)は上手くいかないかもしれません。

少し練習(れんしゅう)して、操作(そうさ)に慣(な)れましょう。

間違えた場合は、画面上にある「取り消し」をクリックすると、一つ前に戻れます。

 

全部消してやり直したい場合は、「消す」をクリックします。

 

 

4. 動かないドクロが1体いる

迷路が描けたら、ドクロを配置(はいち)します。

ドクロのコスチュームは2つあるので、コスチュームを切り替えて、少し動きを出してみましょう。

 

1体目は動かないドクロで、2体目、3体目は消えたり出てきたりするドクロです。

3体必要(ひつよう)ですので、ドクロを増(ふ)やしてみましょう。

画面上部にあるスタンプのマークをクリックします。

 

ハサミの左となりがスタンプです。

マウスポインターがスタンプのマークに変わったら、ドクロの上にのせてドラッグします。

するとドクロがコピーされて、増えます。

次のように配置(はいち)してみましょう。

 

ドクロが大きくて画面からはみ出してしまいます。

勇者も大きすぎて、迷路を通れません。

少し小さくしましょう。

スタンプやハサミと同じところに、内向きの矢印(やじるし)マークがあります。

 

この「縮小(しゅくしょう)」マークをクリックして、ドクロや勇者の上でクリックすると、キャラクターが小さくなります。

縮小とは、小さくするという意味です。

このように調整(ちょうせい)しましょう。

 

右下のドクロは動きませんので、次に出たり消えたりするプログラミングを行います。

 

 

5. 出てきたり消えたりするドクロが2体いる

「見た目」カテゴリーをクリックしてみると、「表示(ひょうじ)する」「隠(かく)す」という2つのスクリプトブロックがあります。

これを組み合わせると、ドクロが出てきたり消えたりします。

使うスクリプトブロックはこれです。

どのように組み合わせれば、出てきたり消えたりするかやってみましょう。

 

 

 

 

出来ましたか。

いろいろと組み合わせてみて、試(ため)してみましょう。

失敗してもやってみる事で身についていきます。

 

 

やり方はいくつかありますが、このように組み合わせると出来上がります。

 

2体目のドクロにも同じようにプログラムしてみましょう。

代わる代わる出てきたり消えたりするためには、どのように変えるといいでしょうか。

答えは最後(さいご)にのせますので、がんばってみてください。

 

 

6. 勇者(ゆうしゃ)が壁(かべ)やドクロに触れると「しまった!」といってゲームが止まる

壁(かべ)やドクロは、両方(りょうほう)とも黒い色をしています。

ですので、黒い色に当たったら「しまった!」といって止まるようにプログラムします。

勇者(ゆうしゃ)のスプライトをクリックして、勇者にプログラムする用意をしましょう。

 

当たったかどうか調(しら)べるには、「調べる」カテゴリーが使えます。

「調べる」カテゴリーをクリックすると、「□色に触れたら」というスクリプトブロックがあります。

四角の色のがついている部分をクリックすると、マウスポインターが手のマークに変わります。

手のマークのまま、迷路の黒い部分に移動しクリックします。

すると、色が変わります。

 

このスクリプトブロックは、制御カテゴリーの中にある「もし なら」というブロックと合わせて使います。

「もし なら」の六角形(ろっかくけい)の穴に「黒い色に触れた」をドラッグしてはめます。

続いて、「すべてを止める」を「もし黒い色に触れたなら」の中に置(お)きましょう。

 

これを「マウスポインターへ行く」の下に置(お)きます。

勇者(ゆうしゃ)が黒い色に触れたとき、「しまった!」というセリフが表示されるようにします。

「見た目」カテゴリーの「Hello!と2秒言う」を右側にドラッグし、「Hello!」の部分を「しまった!」に変えます。

「しまった!と2秒言う」を「すべてを止める」の上に置きます。

これでゲームオーバーが出来ました。

 

7. 勇者が青い丸に触れたとき「やったー!」といってゲームが止まる

続いてゲームクリアを作ります。

作り方は、ゲームオーバーとほとんど同じですが、ゲームクリアは黒い色に触れるのではなく、青い色に触れたときに「やったー!」と言います。

まずは、青い丸を描きましょう。

「ステージ」の「背景」に進(すす)み、迷路(めいろ)を描(か)いた画面(がめん)に移動(いどう)します。

 

左にある丸いマークをクリックします。

下のカラーパレットから、青い色を選(えら)びます。

迷路(めいろ)の左上に青い丸を描きます。

ここがゴールになります。

 

スプライトの勇者(ゆうしゃ)をクリックして、「やったー!」といって止まるプログラムを行います。

コスチュームの画面になっている場合は、スクリプトをクリックします。

黒い色に触れたときに「しまった!」というのと同じように、プログラミングしてみましょう。

使うスクリプトブロックは次の通りです。

 

8. 50秒たっても青い丸に触れていなければ、ゲームオーバーになる

最後にタイマーを作りましょう。

簡単(かんたん)な迷路(めいろ)ですので、10秒でクリアするようにします。

 

ステージエリアの背景(はいけい)を選択(せんたく)し、

「データ」カテゴリーから「変数(へんすう)を作る」 をクリックします。

 

変数名(へんすうめい)にキーボードで「タイマー」と入力(にゅうりょく)してください。

 

「旗がクリックされたとき」をドラッグし その下に「タイマーを 0 にする」を配置(はいち)します。

タイマーの 0 を 10 に変えます。(20や30にすると、タイマーの時間を変える事ができます。)

 

タイマーは、勝手(かって)に1秒ずつ減(へ)ったりしません。

そのようにプログラミングしてみましょう。

「タイマーを 10 にする」の下に「ずっと」をドラッグ し、その中に「1秒待つ」を入れ、「タイマーを 1 ずつ 変える」を入れます。

 

1ずつ変(か)えるままだと、1ずつ足されていくので -1 にし、1ずつ引いていきます。

 

タイマーが 1 減(へ)る度(たび)に、1秒待ちますから 1 秒ずつ減(へ)っていくタイマーが出来上(できあ)がります。

ただし、このままでは 10 秒たっても何も起き ません。

タイマーがゼロになったら、全てを止めましょう。

プログラミングを言葉(ことば)で表現(ひょうげん)すると、

「もしタイマーがゼロと同じになったら、全てを止める」

となります。

少し複雑(ふくざつ)ですが、頑張りましょう。

 

「制御」カテゴリーから「もし なら」をドラッグします。

次に「演算(えんざん)」カテゴリーから「 □ = □ 」を選択(せんたく)し、「もし なら」の六角形(ろっかくけい)にはめます。

 

□の左側には、「データ」カテゴリーで先ほど作ったタイマーを配置(はいち)し、右側には数値入力(すうちにゅうりょく)で「 0 」を入れます。

 

そして「もしタイマー=0 なら」の中に「制御」の 「すべてを止める」をドラッグしましょう。

 

このスクリプトを「タイマーを -1 ずつ変える」の 下にドラッグします。

 

これで 10 秒たっても青い丸に触(ふ)れていなければ、ゲームオーバーになるタイマーが出来ました。

これでゲームは完成(かんせい)です。

ちゃんと遊べるか確認(かくにん)してみましょう。

 

このゲームは迷路(めいろ)の描き方によって、様々(さまざま)に工夫(くふう)する事が出来ます。

また、Lv1のドラゴンと合わせてみると、さらにむずかしいゲームになったりします。

ぜひ、いろいろと遊(あそ)んでみてください。

 

最後(さいご)に、すべてのスクリプトをのせておきます。

 

ゆうしゃ01のプログラム

 

右下のドクロのプログラム

 

真ん中上のドクロのプログラム

 

左下のドクロのプログラム

 

ステージにプログラムしたタイマー

カテゴリー: カリキュラム