スクラッチプログラミング - コントローラーでそうさするシューティングゲーム
プロジェクトの中にコントローラーをつくってあそぶシューティングゲームをしょうかいします。スプライトでコントローラーをつくれば、パソコンだけでなくキーボードのないタブレットでもそうさできるようになりますよ。
サンプルさくひんであそんでみよう
今回(こんかい)しょうかいするのは、スプライトのむきをかえて、ねらって、うつ、シューティングゲームです。
ステージ右下にあるコントローラーで、弓(ゆみ)のむきをかえて、矢(や)をうちます。風船(ふうせん)をぜんぶわりましょう!
コントローラーのつかいかた:
- タブレット…コントローラーをタップ
- パソコン…コントローラーをクリック
(プロジェクトがひょうじされないばあいは、ScratchのPyxofyページをごらんください)
このきじをよむとわかること
- スプライトをコントローラーとしてつかうほうほう
- コントローラーを連打(れんだ)、つづけておせないようにするほうほう
コントローラーでそうさするゲームをつくろう
スプライトでつくったコントローラーで、弓(ゆみ)と矢(や)をそうさするシューティングゲームをつくりましょう。
1. コントローラーをつくる
コントローラーのスプライトを3つ用意(ようい)します。メッセージブロックをつかって、コントローラーとしてうごくようにプログラミングしましょう。
ゆみを左へまわす

ゆみを右へまわす

やをうつ

コントローラーとしてつかうスプライトが3つできました!
»コントローラーのくわしいつくりかたは『タブレットでもつかえるコントローラーをつくろう』をごらんください。
2. ゆみのむきをかえる
コントローラーがおされたら、弓(ゆみ)のむきがかわるようにしましょう。
- 弓(ゆみ)のスプライトをえがく

- ひだりをうけとったとき、左へまわす
- みぎをうけとったとき、右へまわす

コントローラーをおすと、弓(ゆみ) がぐるりとまわるようになりました!

3. やを(ゆみのむき)どにむける
矢(や)を、弓(ゆみ)とおなじむきにうごくようにしましょう。
- 矢(や)のスプライトをえがく

- 弓(ゆみ)とおなじ位置(いち)にする
- 弓(ゆみ)より、てまえに表示(ひょうじ)する

弓(ゆみ)とおなじむきにするためつかうブロックは、「しらべる」の中にある「ステージのはいけい」です。

ブロックをタップして「ゆみのむき」にかえて、「90どにむける」とくみあわせましょう。

- ずっと、弓(ゆみ)とおなじむきにする

コントローラーで弓(ゆみ)のむきをかえると、矢(や)もいっしょにうごくようになりました!

4. やのクローンをつくる
コントローラーがおされたら、矢(や)をうつようにしましょう。うつための矢(や)は、クローンをつかいますよ。
- うつをうけとったとき、クローンをつくる

ステージのはしまでうごかしたら、クローンをさくじょします。
- クローンされたとき
- ステージのはしまでうごかしつづける
- クローンをさくじょする

コントローラーをおすと、矢(や)をうてるようになりました!

でもこのままだと、コントローラーをつづけておす、連打(れんだ)すると、矢(や)のクローンがつぎつぎと出てきてしまいます。
5. やを1本ずつうつ
コントローラーを連打(れんだ)できないようにして、矢(や)を1本ずつうつようにしましょう。
そのためにつかうのは、変数(へんすう)です。
へんすうをつくろう
コントローラーがおされたとき、矢(や)のクローンをつくっていいかどうかを、変数(へんすう)できめます。
- 「やをうつ」というなまえの変数(へんすう)をつくる

変数(へんすう)に入れる値(あたい)は、「マル」か「バツ」のどちらかにしますよ。
- マル…矢(や)のクローンをつくれる
- バツ…矢(や)のクローンをつくれない
さいしょは、やをうつを(マル)にする
プログラムをスタートさせるときは、やをうつを(マル)にしておきましょう。

もし、やをうつが(マル)なら
コントローラーがおされたときに、矢(や)のクローンをつくります。
- 「うつをうけとったとき」
- 「もし、やをうつが(マル)なら」
- 「じぶんじしんのクローンをつくる」

やをうつを(バツ)にする
クローンをつくったあと、つぎのクローンがつくれないようにしましょう。
- 「やをうつを(バツ)にする」

やをうつを(マル)にする
うった矢(や)がステージのはしまでうごいたら、つぎのクローンをつくれるようにしましょう。
- 「はしにふれたまでくりかえす」の下に、「やをうつを(マル)にする」を追加(ついか)する

コントローラーをおして、矢(や)を1本ずつうてるようになりました!

6. ふうせんをプログラミングする
カラフルな風船(ふうせん)を、ステージのアチコチに表示(ひょうじ)しましょう。
スプライトをよういしよう
- 「Balloon (ふうせん)」のスプライトをえらぶ
- 矢(や)にあたってわれたときのコスチュームをえがく

クローンをつくろう
- いろのこうかをかえながら、クローンをたくさんつくる

- ステージのアチコチに表示(ひょうじ)する

弓矢(ゆみや)とコントローラーのところには、風船(ふうせん)が表示(ひょうじ)されないようにしましょう。
- はいけいの白いぶぶんに、ふれないようにする

あたりはんてい
- 矢(や)にあたったら、われたコスチュームにかえたあと、クローンをさくじょする

7. プログラムかんせい
コントローラーで弓矢(ゆみや)をそうさして、風船(ふうせん)をわるゲームができました!


「きょうからはじめるスクラッチプログラミング入門」Pyxofy (著)
Pyxofy が Scratch の基本をまとめた電子書籍を出版しました。
Kindle・Apple Books からご購入ください。
まとめ
今回(こんかい)は、プロジェクトの中にコントローラーをつくってあそぶシューティングゲームをつくってみました。
スプライトでコントローラーをつくれば、キーボードのないタブレットでもゲームをたのしむことができますね!
次回(じかい)は、キーボードの「やじるしキー」でスプライトをうごかす方法(ほうほう)をしょうかいします。
\この記事が参考になったら Tweet おねがいします/