初心者でございます。
シューティングで弾を出す処理をしたいのですが、何故か1発しか弾が出ません。
screen 0,450,450
celload "自機.png",1
celload "弾.png",2
celdiv 2,16,16
//配列の作成
dim bullet,20
dim bx,20
dim by,20
x=190
y=390
gmode 2
//メインループ
*main
redraw 0
color:boxf
pos x,y
celput 1
//弾の描画
repeat 20
if bullet(cnt)=1{
pos bx,by
celput 2
}
loop
gosub*move
gosub*wall
gosub*b_check2
gosub*b_check3
redraw 1
await 10
goto*main
*move
//自機の移動
stick key,15
if(key=1):x-=10
if(key=2):y-=10
if(key=4):x+=10
if(key=8):y+=10
if(key=16):goto*b_check
return
*wall
//端まで行ったら止める
if(x<0):x=0
if(y<0):y=0
if(x>390):x=390
if(y>390):y=390
return
*b_check
//空いている弾の配列チェック
repeat 20
if bullet(cnt)=0{
bullet(cnt)=1
bx(cnt)=x+20
by(cnt)=y
break
}
loop
goto*main
*b_check2
//画面にある弾を動かす
repeat 20
if bullet(cnt)=1{
by(cnt)-=15
}
loop
return
*b_check3
//画面外の弾は元に戻す
repeat 20
if bullet(cnt)=1{
if by>510:bullet(cnt)=0
}
loop
return
間違いがあったらどんどんお願いします!
if文の使い方は気にしないでねw