【Scratch】Scratchでアクションゲームを作ろう!前編

Scratch

こんにちは!パンダのプログラミング研究所にようこそ!

今回は、Scratchでアクションゲームを作っていきます。

アクションゲームとは、マリオのような、ステージの中でジャンプしたり移動したりして、障害物や敵キャラをよけたり倒したりしながら、ゴールを目指すゲームです。

「難しそう…」と思う方もいるかもしれませんが、とっても簡単!

素材などは、リミックス用プロジェクトにすべて入っているので、プログラムを組むだけでできます。

それでは、プログラミングスタート!

リミックスとは?

リミックスとは、他人の作ったプロジェクトに変更を加えて、他人のプロジェクトをもとに自分が作った作品として公開できるシステムのことです。

共有されたプロジェクトの右上にある「リミックス」ボタンをクリックするとリミックスできます。

注意:無変更のリミックスをするのはやめましょう。もとの作者が無変更のリミックスによってScratchをやめてしまったケースもあります。

リミックスしたプロジェクトには、右上に原作者への感謝が表示され、プロジェクトのタイトルには、「remix」が追加されます。

  

今回のリミックス用プロジェクトです↓

https://scratch.mit.edu/projects/571498836/

右上の「リミックス」をクリックして、リミックスしてください。

移動・ジャンプのプログラムを作ろう

まず、移動とジャンプのプログラムを作っていきます。

プレイヤーのスプライトを選択して、もともとあるプログラムの下に、制御カテゴリーの「ずっと」を入れます。

そして、もし~ならブロックに、調べるカテゴリーの「スペースキーが押された」をはめます。

そして、右矢印キーを選択します。

その中に、10歩動かすを入れます(歩数は今回は5歩にします)。

同じように、左側もやってみましょう。

それと、向きを設定します。

もし左向き矢印キーが押されたなら

 -90度に向ける

 5歩動かす

右へ動くプログラムも、「90度に向ける」を入れておきましょう。

そして、このままだと、左へ動くときに、ネコがさかさまになってしまうので、「ずっと」の外に、動きのカテゴリーの「回転方向を左右のみにする」を入れます。

そうすると、このようなプログラムになります。

このような挙動をします

このままだと、壁を通り抜けてしまいます(2ステージ目以降です)。

なので、壁に触れたら戻すプログラムを作ります。

今回は、壁があるかどうかは、色で判定します。

調べるカテゴリーの「~色に触れたなら」を使います。

色の選択は、まず、ブロックの、色がついている部分をクリックします。

次に、下にあるスポイトのボタンをクリックします。

そして、ステージの茶色のところにマウスを合わせてクリックします。

そうすると、その部分の色が選択されます。

後は、もし~ならブロックを使って、この色に触れたらマイナス歩動かすようにします。

戻すのを少し大きくすると、それっぽくなります。

次は、ジャンプと重力のプログラムを作ります。

ジャンプと重力は、動きを滑らかにするために、新しく「旗が押されたとき」と「ずっと」を追加します。

重力のプログラムは簡単で、地面の色(黄緑)に触れていなかったら、y座標を減らすだけでOKです。

ジャンプのプログラムは、上矢印キーが押されたらy座標を増やすだけでなく、空中でのジャンプができないようにします。

もし上向き矢印キーが押されたならの中に、もし地面(黄緑色)に触れたならを入れて、地面にいるかを判定します。

これで、移動とジャンプのプログラムは完成です!

ステージ切り替え、ゲームオーバーを作ろう!

次は、ステージ切り替えのプログラムを作ります。

今回は、x座標が239を超えたらステージを切り替えるようにします。

ステージを切り替えるプログラムは、ステージのスプライトに用意してあるので、メッセージを送って座標を初期化するだけでOKです。

ゲームオーバーは、赤いところに触れたら、そのステージをリセットするようにします。

これで、アクションゲームの基礎部分は完成です。

次回は、コインや敵を追加する予定です。

今回の完成サンプルです↓

https://scratch.mit.edu/projects/573319161/

後編はこちら↓

(準備中)

  

今回は、アクションゲームの基礎部分の作り方を紹介しました。

バイバイ!

コメント

タイトルとURLをコピーしました