原点が左上にある16x16のキャラだと、BGGET(0,X+XX,Y+YY,1)はキャラの左上だけ当たり判定していますが、これだと左または上に壁があるとうまくいきますが、右や下に壁があると埋まりますよね。
なので、0,0、0,15、15,0、15,15の4隅で判定する場合は、
BGGET(0,X+XX,Y+YY,1)
BGGET(0,X+XX+15,Y+YY,1)
BGGET(0,X+XX,Y+YY+15,1)
BGGET(0,X+XX+15,Y+YY+15,1)
の4点がすべて0(もしくは通り抜けられるBGキャラ番号)の場合のみ、移動を許可する、という事です。
(実際は15だと大きすぎる場合もあるので調整を)
ただ、上下左右のみ動くならこれでいいですが、ナナメに動ける場合(左右移動+ジャンプも含む)、X方向とY方向の移動処理は別々にやった方がいいと思います。
1そうだね プレイ済み