できる。
三角関数を使ったほうが簡単になるというだけの話。
サンプルを張っておくが、いいサンプルでないから実用的ではない。
//弾の座標
ddim blt_x,24 : ddim blt_y,24;
repeat 24
blt_x(cnt) = 240.0 : blt_y(cnt) = 240.0;
loop
//弾の変化率 ここで三角関数を使うとrepeat〜loopで簡単になる
ddim blt_dx,8 : ddim blt_dy,8;
blt_dx(0) = 1.4 : blt_dy(0) = 1.4;
blt_dx(1) = 0.0 : blt_dy(1) = 2.0;
blt_dx(2) = -1.4 : blt_dy(2) = 1.4;
blt_dx(3) = -2.0 : blt_dy(3) = 0.0;
blt_dx(4) = -1.4 : blt_dy(4) = -1.4;
blt_dx(5) = 0.0 : blt_dy(5) = -2.0;
blt_dx(6) = 1.4 : blt_dy(6) = -1.4;
blt_dx(7) = 2.0 : blt_dy(7) = 0.0;
screen 0,480,640,0 : boxf 0,0,480,640;
*main
repeat 120
i = cnt/5+1;
redraw 0;
color 0,0,0 : boxf 0,0,480,640;
color 255,255,255 : boxf 234,234,246,246;
repeat i
j = cnt \ 8
boxf blt_x(cnt)-2,blt_y(cnt)-2,blt_x(cnt)+2,blt_y(cnt)+2;
blt_x(cnt) += blt_dx(j);
blt_y(cnt) += blt_dy(j);
loop
redraw 1
wait 1;
loop