スクラッチプログラミング - コントローラーでそうさするシューティングゲーム

プロジェクトの中にコントローラーをつくってあそぶシューティングゲームをしょうかいします。スプライトでコントローラーをつくれば、パソコンだけでなくキーボードのないタブレットでもそうさできるようになりますよ。

スクラッチプログラミング - コントローラーでそうさするシューティングゲーム
Photo by Volodymyr Tokar on Unsplash

サンプルさくひんであそんでみよう

今回(こんかい)しょうかいするのは、スプライトのむきをかえて、ねらって、うつ、シューティングゲームです。

ステージ右下にあるコントローラーで、弓(ゆみ)のむきをかえて、矢(や)をうちます。風船(ふうせん)をぜんぶわりましょう!

コントローラーのつかいかた:

  • タブレット…コントローラーをタップ
  • パソコン…コントローラーをクリック

(プロジェクトがひょうじされないばあいは、ScratchのPyxofyページをごらんください)

このきじをよむとわかること

  • スプライトをコントローラーとしてつかうほうほう
  • コントローラーを連打(れんだ)、つづけておせないようにするほうほう

コントローラーでそうさするゲームをつくろう

スプライトでつくったコントローラーで、弓(ゆみ)と矢(や)をそうさするシューティングゲームをつくりましょう。

  1. コントローラーをつくる
  2. ゆみのむきをかえる
  3. やを(ゆみのむき)どにむける
  4. やのクローンをつくる
  5. やを1本ずつうつ
  6. ふうせんをプログラミングする
  7. プログラムかんせい

コントローラーのスプライトを3つ用意(ようい)します。メッセージブロックをつかって、コントローラーとしてうごくようにプログラミングしましょう。

ゆみを左へまわす

スプライトがおされたときメッセージ左を送るコード

ゆみを右へまわす

スプライトがおされたときメッセージ右を送るコード

やをうつ

スプライトがおされたときメッセージうつを送るコード

コントローラーとしてつかうスプライトが3つできました!

»コントローラーのくわしいつくりかたは『タブレットでもつかえるコントローラーをつくろう』をごらんください。

Scratch (スクラッチ) - タブレットでもつかえるコントローラーをつくろう
キャラクターをうごかすためのコントローラーを、スプライトでつくってみましょう。キーボードのないタブレットをつかうばあい、「メッセージ」ブロックをつかうことで、キャラクターをそうさできるようになりますよ。

コントローラーがおされたら、弓(ゆみ)のむきがかわるようにしましょう。

弦の中央にスプライトの中心を合わせて弓のスプライトを描く
  • ひだりをうけとったとき、左へまわす
  • みぎをうけとったとき、右へまわす
弓がコントローラーからのメッセージを受け取るコード

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

コントローラーからのメッセージを受け取って弓の向きが変わる画像

矢(や)を、弓(ゆみ)とおなじむきにうごくようにしましょう。

  • 矢(や)のスプライトをえがく
後端を中心に合わせて矢のスプライトを描く
  • 弓(ゆみ)とおなじ位置(いち)にする
  • 弓(ゆみ)より、てまえに表示(ひょうじ)する
矢の位置を弓と同じにするコード

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

ブロックパレットにあるステージのはいけいブロック

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

ブロックをクリックして出てきたメニューからゆみのむきにする
  • ずっと、弓(ゆみ)とおなじむきにする
矢の向きを弓と同じにするコード

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

コントローラーを押すと矢と弓が同じように動く画像

コントローラーがおされたら、矢(や)をうつようにしましょう。うつための矢(や)は、クローンをつかいますよ。

  • うつをうけとったとき、クローンをつくる
コントローラーからのメッセージをうけとってクローンを作るコード

ステージのはしまでうごかしたら、クローンをさくじょします。

  • クローンされたとき
  • ステージのはしまでうごかしつづける
  • クローンをさくじょする
クローンをステージの端まで動かしてから削除するコード

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

矢のクローンが連続で表示されている画像

でもこのままだと、コントローラーをつづけておす、連打(れんだ)すると、矢(や)のクローンがつぎつぎと出てきてしまいます。

コントローラーを連打(れんだ)できないようにして、矢(や)を1本ずつうつようにしましょう。

そのためにつかうのは、変数(へんすう)です。

へんすうをつくろう

コントローラーがおされたとき、矢(や)のクローンをつくっていいかどうかを、変数(へんすう)できめます。

  • やをうつ」というなまえの変数(へんすう)をつくる
矢を打つという名前の変数がブロックパレットに表示されている画像

変数(へんすう)に入れる値(あたい)は、「マル」か「バツ」のどちらかにしますよ。

  • マル…矢(や)のクローンをつくれる
  • バツ…矢(や)のクローンをつくれない

さいしょは、やをうつを(マル)にする

プログラムをスタートさせるときは、やをうつを(マル)にしておきましょう。

はたがおされたときの下に矢を打つをマルにするを追加する

もし、やをうつが(マル)なら

コントローラーがおされたときに、矢(や)のクローンをつくります。

  • 「うつをうけとったとき」
  • もし、やをうつが(マル)なら
  • 「じぶんじしんのクローンをつくる」
打つを受け取った時の下にもし矢を打つがマルならを追加する

やをうつを(バツ)にする

クローンをつくったあと、つぎのクローンがつくれないようにしましょう。

  • やをうつを(バツ)にする
クローンをつくったあとに矢を打つをバツにするをつなげる

やをうつを(マル)にする

うった矢(や)がステージのはしまでうごいたら、つぎのクローンをつくれるようにしましょう。

  • 「はしにふれたまでくりかえす」の下に、「やをうつを(マル)にする」を追加(ついか)する
クローンがステージの端まで動いた後に矢を打つをマルにするを追加する

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

矢の完成プログラム

カラフルな風船(ふうせん)を、ステージのアチコチに表示(ひょうじ)しましょう。

スプライトをよういしよう

風船が割れた様子を表すコスチューム

クローンをつくろう

カラフルなクローンを50個作るコード
  • ステージのアチコチに表示(ひょうじ)する
どこかの場所へ行くコード

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

  • はいけいの白いぶぶんに、ふれないようにする
白色にふれたではないまでどこかの場所へ行くをくりかえす

あたりはんてい

  • 矢(や)にあたったら、われたコスチュームにかえたあと、クローンをさくじょする
矢にふれたらクローンを削除するコード

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

風船のプログラム

まとめ

今回(こんかい)は、プロジェクトの中にコントローラーをつくってあそぶシューティングゲームをつくってみました。

スプライトでコントローラーをつくれば、キーボードのないタブレットでもゲームをたのしむことができますね!

次回(じかい)は、キーボードの「やじるしキー」でスプライトをうごかす方法(ほうほう)をしょうかいします。

\この記事が参考になったら おねがいします/

Start Here - Scratch (スクラッチ)
Scratch (スクラッチ)記事(きじ)のレベル別一覧です。初級、中級、上級、拡張機能にわけてまとめました。
Scratch Programming ebook for Beginners - 入門
スクラッチ初心者の方へ向けた内容を ebook にまとめました。スクラッチの基本から簡単なスクリプト(プログラム)の作り方まで、全108ページ。ぜひダウンロードしてご活用ください。