今回からScratchを使った簡単なシューティングゲーム制作を行っていきます。
第一回では大まかなシステムを決めてゲームの土台を作ってきます。
Scratchの使い方はもちろん、一般的なプログラミングにも活かせる知識をお届けするので、実際にゲームを作りながらプログラミングについてもしっかり学んでいきましょう!
※Scratchの基本的な操作ができる人を対象としています。
ゲームの雰囲気を決める重要な項目です!
かっこいい感じのゲームが作りたかったら背景を宇宙にしてみたり、かわいい感じにしたかったら敵が発射してくる弾をアメにしてみたり……
可能性は無限大です!好きなデザインにしてみましょう!
スプライトを選択してキャラクターの見た目を決めよう。
自分の好きなスプライトをリストから選ぶか、インターネットから好きな画像を保存して、それを選んでみよう。
ゲーム画面に対するキャラクターの大きさをうまく調節しておきましょう。
今回、自機と敵機に使用させていただいた素材は下記のサイトからお借りしました。
https://kage-design.com/2015/01/01/airplane2-1/
スプライトと同様に自分の好きな背景を決めよう!
矢印キーが押されることでキャラクターが動くようにしよう!
まず、操作したいスプライトを選択して、コードを書ける画面を表示させます。
次に肝心なコードを書いていきます。
下の画像のようにブロックを配置するのが一番簡単な方法です。
ですが、いくつか問題点があります……実際にブロックを置いて、矢印キーで操作してみましょう。
いかがですか?
・動きがカクカクしていてなめらかでない
・ボタンを同時に押しても反応しない
といった問題点がこのコードにはあると分かったと思います。(これはScratchの仕様によるものです)
そこで、ループを使うため多少複雑にはなりますが、もっとなめらかな動きを実現したい方は次のコードが最適です。
これで先ほどと比べてなめらかな動きができるとともに、斜め移動もできるようになったと思います。
では、敵を倒すために必要な弾がスペースキーで発射されるようプログラム作っていきましょう。
まずは、今までと同様に好きなデザインの弾を選びましょう。
本ブログでは自分で描いた丸を弾とします。
弾本体に追加すべきプログラムは大まかに次のようなものです。
・画面に複数存在できるよう、クローンさせる
・自機の先頭から弾を発射
・画面端もしくは敵機に当たったら消える
これをもとにプログラムを作ると、次のようになります。
クローンされたとき、つまり弾がコピーされたらキャラクターの先頭に移動して表示する。
端に触れるもしくは敵機に当たるまで弾は画面上に行く。
その後、クローンを削除して、画面がクローンだらけになることを防ぐ。
というのが上のプログラムの説明です。
※クローンについては難しいと感じる人もいると思うので、後日クローンに関する記事も書こうと思います。
最後に、画像のように、スプライトの設定を「表示しない」にして、基本は表示されないようにしておきましょう。
次のようにプログラムしてみるとどうなるでしょうか?
うまく自機の先頭から弾が飛び出してきますが、スペースキー長押しで大量の弾が出せてしまいます。
これでは、ゲームバランスが崩壊してしまうので、長押ししても弾が連続ででないようにしましょう。
では、先ほどのプログラムを次のようなプログラムに変更してみましょう。
これで、スペースキーを押して離すという2個の動作で一回弾が発射されるというプログラムができました。
いかがだったでしょうか?最後まで読んでいただきありがとうございました。
今回は、矢印キーで自機を動かしスペースキーで弾を発射できるようにしました。まだまだゲームとは言いにくいものですが、自分でプログラミングしたものがゲームのように動いているだけでわくわくすると思います。
次回は敵機のプログラミングをしていく予定です。
数学的な話を用いて、自分を狙ってくる弾を作ったり、今回よりもゴリゴリにプログラミングしていくので楽しみにしていてくださいね!
[…] Scratchでシューティングゲーム|… […]