キャラクターが右方向と下方向に正常に移動しません。
スクリプトは
x = 320 : y = 512 : move = 16 gf = 1 : muki = 1 : key = 0 : k = 0 : game = 0 screen 0,672,704 repeat ifx = x : ify = y redraw 0 stick key,15 if key & 1 : ifx -= move : muki = 1 if key & 2 : ify -= move : muki = 2 if key & 4 : ifx += move : muki = 3 if key & 8 : ify += move : muki = 4 ifx = limit(ifx,0,ginfo_winx-31) ify = limit(ify,0,ginfo_winy-31) //衝突判定=============================================== if muki = 1 : mx = int(ifx/32) : my = int(ify/32) if muki = 2 : mx = int(ifx/32) : my = int(ify/32) if muki = 4 : mx = int(ifx/32)+1 : my = int(ify/32) if muki = 8 : mx = int(ifx/32) : my = int(ify/32)+1 mapmum = mx + (21*my) mapcode = peek(map,mapmum) if mapcode = '0' : x = ifx : y = ify //======================================================= gosub *map_draw pos x,y gmode 2,31,31 if gf = 0 { gcopy muki,0,0;画像コピー gf = 1 }else{ gcopy muki,32,0;画像コピー gf = 0 } redraw 1 await 1 loop stop *map_draw i = 0 redraw 0 repeat 22 my = cnt repeat 21 maps = peek(map,i) if maps = '0' : dmap = 0 if maps = '1' : dmap = 1 if maps = '2' : dmap = 2 if game = 0{ if dmap = 1{ kabex(k) = i*32 kabey(k) = my*32 if kabex(k) > 640 : kabex(k) -= 672 k += 1 } if dmap = 2{ kabex(k) = i*32 kabey(k) = my*32 if kabex(k) > 640 : kabex(k) -= 672 k += 1 } game = -1 } pos cnt*32,my*32 gmode 2,32,32 gcopy 9,dmap*32,0 i += 1 await 1 loop await 1 loop redraw 1 return です。 どこをどう直せばいいのかご教授の程お願いします。 長文失礼しました。