もう少し付け加えておくと、@LOOPのラベルがある行のすぐ後にDX=0:DY=0の処理を移動させておくと、BUTTON()関数からの返り値でXとYに加算する数値を判別するIF文が実行されなければキャラクタが移動しないというふうになりますよ。 あと79~82行のSPANIMを止める処理の後の変数RUNに代入する処理は、違う値を代入するのでなければ不必要かと。 だにえるさんも指摘されてますけど、IF文の条件式が同じ処理なら書く順番をうまく考えてやれば一つにまとめたりできるので、 この場合なら多分74~77行目で IF B AND 1 THEN ~ みたく書いてるかと思うんですけど、例えばX=X+0のところをDX=1に置き換えて、88~92行目で同じ条件式を使ってるIF文を消しても、途中で変数Bに新しく代入したりしてないので同じ結果が得られると思いますよ、