現在地ではなく移動先の状態を調べてから、 実際に移動するかどうかを 決定するようにしてみては、どうでしょう? 今、 IF ~ THEN Y=Y~ IF ~ THEN X=X~ となっているところを 例えば IF ~ THEN KY=Y~ IF ~ THEN KX=X~ IF KX,KYなど4点とも空白 THEN X=KX:Y=KY みたいにします。