brown water

ゲームやアニメの感想とかプログラムとか

2Dアクションゲームの制作-2

前回に引き続き、今回は衝突した時の反応を作ります。

f:id:chaz4:20171230125459p:plain

壁の作成

壁にぶつかったら進めないようにする。

方向キーを押したら、実際に移動する前に、現在位置に移動値を加えた位置で壁と衝突するかどうかを調べる。
衝突しなければそのまま移動値を加えて移動。
衝突する場合は壁にくっつく位置まで移動。

これを水平方向と垂直方向で別々に行う。

ジャンプと重力

スペースキーを押したらジャンプし、下に地面等が無い場合は落下する。

下方向の衝突判定を調べ、衝突していなければ重力値を加える。
衝突していたらそれ以上は進まない、そしてジャンプが可能な状態。

 

参考にしたページ 

youtu.be

上記の動画を参考にし、元々GameMakerというソフトで作っていたのですが、参考にしたプログラムはGameMaker独自の機能をほとんど使わずに作っていたので、JavaScriptでも作れるのではないかと思いました。

f:id:chaz4:20171230030710p:plain

これで2Dジャンプアクションゲームの基本的な部分が出来るようになりました。