こんにちは、プログラミング教室Willowの柳です!
今回は、2Dアクションゲームを作っていきます。上の解説動画で基本的なことはすべて解説しています。(よければご試聴ください!)
この記事では、アクションゲームにおいて重要な、「重力」「移動」「ジャンプ」のプログラミング方法にしぼって、説明していきます。
事前準備
プロジェクトを新規作成したら、まず背景を変更します。
いろいろな背景が用意されていますが。今回は、この“Blue Sky”を背景に使います。(あとあと都合がいいので、この背景にしてください。)
他の背景を使うと上手く動作しない可能性があります。今回作るプログラムの仕組みが理解できたら、ほかの背景で試してみてもいいかもしれません。
背景が変更できたら、ネコに動作をさせるためのプログラムを作成していきます。
重力
みなさんが地面に立てているのは、重力があるからですよね!
なので、重力のプログラムを作ってあげないと・・・!
こんな風に、空中に浮かんでしまいます。
私たは、地球の重力によって、下に引っ張られていますよね。
なので、ゲーム内のネコも下に引っ張ってあげましょう。
下に引っ張るということは、ネコを↓方向に自動で動かしてあげればよいので、
Y座標をマイナスの方向に「ずっと」動かしてあげればよいのです。
こちらが、重力のプログラムです。(もっと他にも方法がありますが、今回は簡単なものを使います!)
これで、重力がくわわりました!
はい!このように、無事重力が加わって、ネコが地面にめり込みました!!(だめじゃん!!)
重力のプログラムを追加しただけでは、ネコは地面があることに気づかずに、下に落ちていってしまいます。
「地面に立つ」ためのプログラムを追加しましょう。
今回は、このようにプログラムを追加しました!
ネコの足の色(オレンジ)が、地面の色(茶色)に触れていたら、「地面に触れている」と判断して、下に引っ張るプログラムを行いません。
そうでなければ、下に引っ張るとしているので、空中にいるときは重力が加わります。
これで、地面に立つことができました!! ネコも満足そうです。
移動
移動のプログラムを追加してあげます!
こちらです。
上から読んで行けば、プログラムの意味は分かると思います。
右の矢印キーが押されたら、右に進ませるので、90度(右向き)にネコを向けて、右に移動させます(x座標を10)。
左の矢印キーが押されたら、左に進ませるので、-90度(右向き)にネコを向けて、左に移動させます(x座標を-10)。
「回転方法を左右のみにする」ブロックを付けているのは、やってみればわかりますが
これがないと、ネコがひっくり返ります。
※補足
今回は、左右の移動に「x座標を〇〇ずつ変える」ブロックを使いましたが、「〇〇歩動かす」
でも代用できます。
でも、座標の概念が身に着くまでは「x座標を〇〇ずつ変える」 を使って、座標に慣れていってほしいです!
ジャンプ
スペースキーが押されたらジャンプをできるようにします。
ジャンプを実現する方法にもいろいろありますが、一番簡単な方法を使います。
ジャンプの処理はこれだけです!
スペースキーが押されたら、上方向に10動かすのを、10回繰り返します。
(繰り返しの回数や、移動の数値を大きくすれば、高くジャンプします。)
これにより、ネコが上方向に移動するので、ジャンプしたようになります。
このプログラムを・・・
こんな風に、重力のプログラムと合体させます。
「地面に触れているなら」という条件の中に、ジャンプのプログラムを組み込んでいるので
空中で2回以上のジャンプができないようになっています。
ジャンプした後は、重力によって勝手に地面に落ちてきてくれます。
まとめ
今回は、重力、移動、ジャンプのについて説明しました。
上で紹介した動画も参考にしながら、是非アクションゲーム作りに挑戦してみてください。
もう少し改良したい人は、以下の記事も参考にしてみてください
コメント