この条件で判定している事からわかるようにブロックに対して頭はぶつかりません。単純にすり抜ける感じです。頭がぶつかるようにしたかったら、それは別途判定を加えて処理する必要があります。 18〜21:判定したBGが0以外、つまりなにかあった時に実行される部分です。 18:Y座標の位置がブロックの上になるように補正しています。BGは16×16のサイズなので、Yを16で割って(余りのでないDIVを使用してます)、再度16をかけることでちょうどキリの良い値にしてブロックの上に乗っかるようにしています。 19:ブロックに乗ったので加速度であるAYは0にしています。 20:ここはA(ジャンプ)ボタンの処理です。ボタンが押された時に上方向へ-12の加速度を入れているだけです。