スクラッチのジャンプゲーム制作術!重力と着地判定の失敗ゼロ完全版
スクラッチのジャンプゲーム制作術!重力と着地判定の失敗ゼロ完全版に関する注目トピックを速報でお届けします。関心のある方は必見です。
基本の跳躍と着地をマスターした後は、ゲームの爽快感と難易度を演出する応用ギミックを追加していきましょう。
■ 2段ジャンプの実装コード:
空中での追加ジャンプを可能にするには、「ジャンプ回数」という変数を追加します。床に着地した際にジャンプ回数を「2(または最大許可数)」にセットします。キー入力判定の条件を「もし【キーが押された】かつ【ジャンプ回数 > 0】なら」とし、ジャンプ処理が走るたびに「ジャンプ回数を-1する」と設定するだけで、空中での直感的な連続ジャンプが成立します。
■ 障害物・敵キャラクターの当たり判定:
敵を踏みつけて倒すマリオ型アクションの場合、「プレイヤーの足元座標」と「敵の頭上座標」の接触タイミングを正確に区別する必要があります。「もし【敵に触れた】なら」のブロック内で、プレイヤーの「y速度がマイナス(落下中)」であれば敵を消去し自分は小さく跳ね上がり(y速度を8にする等)、y速度が0以上または側面衝突であればミス判定とする分岐ロジックが極めて有効です。
■ 横スクロールとの連動:
画面が右へと広がるスクロールジャンプゲームを作る場合、キャラクター自身のx座標を動かすのではなく、「プレイヤーが画面中央(x座標: 0付近)を超えて進もうとしたら、背景や足場スプライト全体のx座標を逆方向にスライドさせる」という仮想カメラ方式を採用するのが定石です。