BGGETの式としては正しいですが、取得できるのはアトリビュート込みの値ですので注意です。 奥、というのはその移動をさせない、という意味でしょうか? 移動予定の座標を先に判定をして、移動可能なら実際にその座標に移動させます。 XX=0:YY=0 IF BUTTON(0)==#UP THEN YY=-2  ~略(4方向処理)~ IF (BGGET(0,X+XX,Y+YY,1) AND &H999)==0 THEN X=X+XX:Y=Y+YY SPSET 0,X,Y みたいな感じで。 実際はキャラのサイズが16x16などの大きさなのに対して、BGGETは1ドットでしか判定しないので、キャラの4隅で4回判定するなどの処理が必要な場合が多いですが。