スクラッチプログラミング - シューティングゲームのつくりかた
タマをはっしゃして敵(てき)をやっつける、シューティングゲームをつくってみましょう。タマと敵(てき)は、クローンでたくさんつくります。そうさは画面(がめん)をタッチするだけでかんたんです!
サンプルさくひんであそんでみよう
今回(こんかい)は、シューティングゲームのつくりかたをしょうかいします。
ロケットのそうさほうほう
- タブレット…画面(がめん)をゆびでタッチして左右にうごかす
- パソコン…マウスのポインターを左右にうごかす
(プロジェクトがひょうじされないばあいは、ScratchのPyxofyページをごらんください)
このきじをよむとわかること
- 画面(がめん)のタッチ(マウスポインター)で、スプライトを左右にうごかすほうほう
- クローンのつくりかた
- あたりはんてい(もしなにかにふれたなら)
シューティングゲームをつくろう
ロケットからタマをはっしゃして、火の玉をやっつけるゲームをつくってみましょう。
1. スプライトをよういする
ロケットから出るタマには、ボールのスプライトをつかいます。
- 「Rocketship (ロケット)」、「Ball (ボール)」のスプライトをえらぶ
![ロケットとボールのスプライトが選ばれている ロケットとボールのスプライトが選ばれている](https://www.pyxofy.com/content/images/2021/10/choose-sprites.jpg)
- 「火の玉」のスプライトをえがく
![火の玉のスプライトを描くページ 火の玉のスプライトを描くページ](https://www.pyxofy.com/content/images/2021/10/draw-sprite-2.jpg)
スプライトの用意(ようい)ができました!
2. ロケットをプログラミングする
ロケットを左右にうごかせるようにプログラミングしましょう。
- サイズを小さくしておく
![はたがおされたときと大きさを30%にするをつなげる はたがおされたときと大きさを30%にするをつなげる](https://www.pyxofy.com/content/images/2021/10/set-size-to-30-.jpg)
yざひょう
ロケットはよこにだけうごかします。上下にはうごかしたくないので、yざひょうはきめておきますよ。
- 「ずっと」
- 「yざひょうを(-120)にする」
![ロケットがステージの下側に表示されている画像 ロケットがステージの下側に表示されている画像](https://www.pyxofy.com/content/images/2021/10/set-y-negative-120.jpg)
xざひょう
xざひょうをかえて、左右にうごくようにしましょう。
「xざひょうを(10)にする」と「マウスのxざひょう」をくみあわせます。すると、ステージをタッチしているばしょ、マウスポインターのばしょにxざひょうがかわって、よこにうごくようになりますよ。
- 「xざひょうを(マウスのxざひょう)にする」を追加(ついか)する
![x座標をマウスのx座標にするをずっとの中に追加する x座標をマウスのx座標にするをずっとの中に追加する](https://www.pyxofy.com/content/images/2021/10/set-x-to-mouse-x.jpg)
ステージの中をタッチしてゆびをうごかす、パソコンではポインターをうごかすと、ロケットが左右にうごくようになりました!
![ロケットを左右に動かすコード ロケットを左右に動かすコード](https://www.pyxofy.com/content/images/2021/10/rocket-moves.jpg)
3. タマをプログラミングする
タマをロケットからはっしゃできるようにプログラミングしましょう。
- ロケットのサイズにあうように、小さくしておく
![はたがおされたときの下に大きさを20%にするをつなげる はたがおされたときの下に大きさを20%にするをつなげる](https://www.pyxofy.com/content/images/2021/10/set-size-to-20-.jpg)
クローンをつくろう
たくさんタマをはっしゃできるように、クローンをつくりますよ。
- クローンするまえのスプライトは、かくしておく
- 0.1びょうかんかくで、クローンをつくりつづける
![ボールのスプライトのクローンを作るコード ボールのスプライトのクローンを作るコード](https://www.pyxofy.com/content/images/2021/10/5875744A-92D5-4ED2-A8BA-42A904509CBF.jpeg)
クローンをうごかそう
クローンを表示(ひょうじ)して、上のほうへうごかしましょう。
- クローンされたとき、表示(ひょうじ)する
- 上へうごかしつづける
- ステージのいちばん上にふれたら、クローンを削除(さくじょ)してけす
![クローンを上へうごかすコード クローンを上へうごかすコード](https://www.pyxofy.com/content/images/2021/10/when-i-start-as-a-clone.jpg)
タマがつぎつぎと表示(ひょうじ)されるようになりました!
![ステージにボールのクローンが表示されている ステージにボールのクローンが表示されている](https://www.pyxofy.com/content/images/2021/10/clone-shows.jpg)
クローンのいちをかえよう
タマがロケットから出てくるようにしましょう。つかうブロックは「どこかのばしょへいく」です。
- 「クローンされたとき」の下に、「Rocketshipへいく」を追加(ついか)する
![クローンされたときの下にRocketshipへいくを追加する クローンされたときの下にRocketshipへいくを追加する](https://www.pyxofy.com/content/images/2021/10/go-to-rocketship.jpg)
ロケットのうしろがわから出てくるようにしますよ。
- 「さいはいめんへいどうする」を追加(ついか)する
![ロケットの背後からタマがはっしゃされるようにするコード ロケットの背後からタマがはっしゃされるようにするコード](https://www.pyxofy.com/content/images/2021/10/go-back-layer.jpg)
タマがロケットから出てくるようになりました!
![ロケットからタマが発射されている画像 ロケットからタマが発射されている画像](https://www.pyxofy.com/content/images/2021/10/clones-from-rocket.jpg)
4. 火の玉をプログラミングする
敵(てき)としてつかう火の玉をプログラミングしましょう。
クローンをつくろう
クローンで火の玉をたくさんつくりますよ。
- クローンするまえのスプライトは、かくしておく
- 1びょうかんかくで、クローンをつくりつづける
![火の玉のクローンを作るコード 火の玉のクローンを作るコード](https://www.pyxofy.com/content/images/2021/10/fireball-makes-clone.jpg)
クローンをひょうじしよう
クローンをステージの上がわに表示(ひょうじ)しましょう。
- クローンされたとき、いろいろなところに表示(ひょうじ)する
![火の玉のクローンがステージのあちこち表示されている画像](https://www.pyxofy.com/content/images/2021/10/go-to-random-position-1.jpg)
- yざひょうをステージのいちばん上にする
![火の玉のクローンがステージのいちばん上に表示されている画像](https://www.pyxofy.com/content/images/2021/10/set-y-to-180.jpg)
たくさんのクローンが、ステージの上がわに表示(ひょうじ)されるようになりました!
クローンをうごかそう
ステージの下までうごかしつづけましょう。
- 下へうごかしつづける
- いちばん下までうごいたら、クローンを削除(さくじょ)してけす
![ステージの下まで動き続けるコード ステージの下まで動き続けるコード](https://www.pyxofy.com/content/images/2021/10/go-down.jpg)
火の玉がつぎつぎと表示(ひょうじ)されて、下へうごくようになりました!
![火の玉のクローンが上から下へうごくがぞう 火の玉のクローンが上から下へうごくがぞう](https://www.pyxofy.com/content/images/2021/10/fireballs-go-down.jpg)
5. あたりはんてい
「あたりはんてい」とは、モノとモノがふれたかどうかをチェックすることです。
- 火の玉…タマにあたったら、けす
- ロケット…火の玉にあたったら、ゲームオーバーにする
ひのたまをけす
火の玉にブロックを追加(ついか)しましょう。
- 「もし<Ballにふれた>なら」
- 「このクローンをさくじょする」
![ボールにふれたらクローンを削除するコード ボールにふれたらクローンを削除するコード](https://www.pyxofy.com/content/images/2021/10/if-touching-ball.jpg)
ゲームオーバー
ロケットにブロックを追加(ついか)しましょう。
- 「もし<ひのたまにふれた>なら」
- 「すべてをとめる」
![火の玉にふれたらゲームオーバーにするコード 火の玉にふれたらゲームオーバーにするコード](https://www.pyxofy.com/content/images/2021/10/add-game-over-code.jpg)
6. プログラムかんせい
火の玉をやっつけるシューティングゲームができました!
![ロケットの完成プログラム ロケットの完成プログラム](https://www.pyxofy.com/content/images/2021/10/rocket-program.jpg)
(サンプルさくひんのプログラムをぜんぶ見たいかたは、 ScratchのPyxofyページから、「中を見る」でごらんください)
![](https://www.pyxofy.com/content/images/2024/07/cover-page-320-4.png)
Pyxofy (著)「きょうからはじめるスクラッチプログラミング入門」
Pyxofy が Scratch の電子書籍を出版しました!Kindle・Apple Books からご購入ください。
まとめ
今回(こんかい)は、シューティングゲームのつくりかたをしょうかいしました。
クローンのブロックをつかうと、はっしゃするタマや敵(てき)をたくさんつくることができますよ。
次回(じかい)は、シューティングゲームでつかうコントローラーをつくってみましょう。
\この記事が参考になったら Tweet おねがいします/