>スムージーさん
IF BUTTON() AND 1の条件が一致したときにY座標を操作
するところが2カ所有るため移動量が正しく処理されていません。
毎回BUTTON()と記述するのも長ったらしいのでIFで判別する
前にBTにBUTTON()の値を代入してから8行目を
IF BT AND 1 THEN Y=Y-2+((BT AND 4)||(BT AND 8)):SPCHR 0,508:CH=508
として10行目は削除して下さい。
9,11行目も同様にして下さい。
12,13行目は上か下の入力が有ったら移動量を減らして下さい。
斜めの時はX,Y座標共に1ドットずつの移動って事でよろしい
でしょうか?
ANDで処理する場合は特定の条件の時に移動量を調整する
事で解決できるかと思います。
具体的には
BT=BUTTON()
IF BT AND 1 THEN Y=Y-2+((BT AND 8)||(BT AND 4))
(|記号はキーボードAの左の記号です)
上方向に移動するときに右か左も入力されていたら移動量を
減らす処理をそれぞれの方向に追加したら斜めの時はX,Y
1ドットずつの移動になりますが、これで目的の処理となりますか?