スクラッチでシューティングゲームを作ろう①

小学校でも利用されている「スクラッチ」を使ってシューティングゲームの作り方を何回かに分けて解説します。

スクラッチはパソコンやタブレットなど無料で使えるのでまずプログラミングを体験するのにおすすめです。

今回のシューティングゲームはキーボードを使うのでパソコンでスクラッチを使うことをおすすめします。

今回作るシューティングゲームはこちら

どんなゲームを作る?

まずはどんなゲームを作るかまとめてみましょう

  • 矢印キーを使って主人公を動かす
  • スペースキーを押すと弾が出てくる
  • 敵(てき)がでてくる。弾にあたると消える。
  • 敵(てき)を倒すと点数が増える
  • 主人公が敵(てき)に当たるとダメージを受ける
  • 時間制限をつける
シューティングゲーム

プログラミングをやる前に

プログラミングは正解は1つだけではありません。人によっていろいろやり方があります。
ここにあるやり方以外にもっとよいやり方もあるかもしれません。

大切なのは、「自分が考えた動きを作れること」です。

プログラミングにもよいもの、あまりよくないものはありますが、まずは
色々な方法を試して、自分が一番面白いと思うやり方をみつけてみましょう。

シューティングゲームを作ってみよう

矢印キーをつかって主人公を動かす

主人公を矢印キーで動かすにはどうやればよいでしょうか

スプライトを動かす方法は大きく分けて2通りあります。

1つめは「○歩動かす」というブロックを使うこと。
これはスプライトが今向いている方向に進むというものです。(数字をマイナスにすると逆方向に動きます)
ゲームステージの下に「向き」と書いてる数字が今の方向でここをクリックするとどの向きなのか矢印でわかるようになっています。スクラッチでは方向は数字で管理されています。
「○度回す」を使ってプログラムで方向を変えることもできます。

スプライトを動かす方法

2つめは座標(ざひょう)を使って動かす方法です。
座標とはステージ上の場所を2つの数字で表す方法です。
横の位置は「x(エックス)」という名前です。真ん中が「0」で右に行くほど数字が大きくなって、左に行くほど数字が小さくなります。真ん中より左はマイナスの数字になります。
縦の位置は「y(ワイ)という名前です。真ん中が「0」で上に行くほど数字が大きくなって、下に行くほど数字が小さくなります。真ん中より下はマイナスの数字になります。
ペンギンの位置はxは-40、yは40です。
魚の位置はxは40、yは80です。

スクラッチの座標

今回のシューティングゲームでは2つめの座標を使って動かしていきます。
右の絵のように矢印キーに方向によってx座標、y座標の数を大きくしたり小さくしたりしていきます。

座標を使って動かす

それではプログラミングをやっていきましょう。
最初は「🚩が押されたとき」のブロックを置きます。これはプログラムが開始されたときに動くという合図です。
次に大きさを70%としています。スプライトが大きい場合は最初にここで自分のよい大きさにしてあげてください。

次の「ずっと」ブロックからが矢印キーを押すとスプライトが動くプログラムになります。
「もし~~なら」の中に各矢印キーを押したら座標を変えるとなっています。
上向き矢印キーならy座標の数を大きくしてあげればよいので10を足してあげています。
下向き矢印きーならy座標の数を小さくしてあげればよいので-10で数を引いてあげています。
右向き左向きも考え方は同じでx座標の数を変えています。

Warning

ここでよく忘れてしまうのが「ずっと」ブロック(くりかえし)を入れることです。
🚩を押されたあとは1度しかプログラムは実行されません。そのため「ずっと」ブロックがないとコンピュータは一度だけキーが押されているか確認しただけでプログラムも終わってしまいます。
ゲームなどでボタンを押したら何かが実行されるというプログラムを作る場合は必ず「ずっと」ブロックををつかってくりかえすようにしましょう。


キーでキャラクターを動かすプログラミング

ここまでできたら🚩を押してプログラムを実行してみてください。矢印キーを押すと思った通りにきゃたくたーが動くでしょうか。
座標を変えるところの数を変えるとキャラクターが動く速度が変わります。自分の好きな速度に変えてみましょう。

参考:キャラクターをアニメーションみたいに動かしてみよう

シューティングゲームのサンプルを動かしてみると主人公のネコのしっぽが動いてる。これどうやってやるの?
と思った方もいると思います。

スプライトの中にはコスチュームというものがあります。画面の左上に「コード」「コスチューム」「音」と3つのタブがあるので「コスチューム」をクリックしてみましょう。
スプライトによってはコスチュームが複数あるものがあります。今回はネコのコスチュームのしっぽの位置を変えたものを新しく作っています。
プログラムはこのコスチュームを0.1秒ごとに変えるように作っています。コスチュームが一定の時間ごとに表示されることによってアニメーションのように見えます。もちろんコスチュームの数が3つ4つあっても問題ありません。
1つのスプライトの中に「🚩が押されたとき」が複数あっても大丈夫です。
いろいろなプログラムが組み合わさることによってよりよいゲームを作ることが出ます。

キャラクターのアニメーション

次回はシューティングの弾(たま)を作っていきたいと思います。