brown water

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

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

前回でブロックの上に乗れるようになりました。
今回はそれの発展編です。

f:id:chaz4:20171230125211p:plain

移動床の処理

移動する床に乗ったら一緒に移動する。
移動床は下から衝突した場合はすり抜ける。

gistafb318e15c021aba219d4d03738267b4

前回のプログラムを改良・追加したものです。

壁の場合は衝突したかどうかが分かれば良かったのですが、移動床は位置を特定する必要があったためにhitTest関数は衝突相手のオブジェクトを返すようにしました。
衝突していない場合はnullを返すので、今まで通りtrue/falseの判定でも使えます。

細かい位置判定をするために上端と下端を取得してから処理。

移動床に乗っている間は、自分に相手の移動値を加えます。

f:id:chaz4:20171230125812p:plain