問題点は
1右に弾を撃った後左を向くと弾が消える。
2左を向いて弾を打つと4回中1回しか左に飛ばない
といったところでしょうか?
弾の位置を別の配列で置いて自分の向きと発射後の位置を切り離せばよいかと
後自分がどっち向いてるかを右なら1左なら-1みたいなフラグになる変数を作ればよいかと
shotall=50
dim shot,shotall,3//shot(n,0)...x座標:shot(n,1)...y座標:shot(n,2)...x方向の速度
//割愛
//弾を撃つ
shotnumber++
if shotnumber>=shotall : shotnumber=0
shot(ahotnumber,0)=???//自分のX座標
shot(ahotnumber,1)=???//自分のY座標
shot(ahotnumber,2)=turnflag//方向のフラグ
//割愛
//弾の描画
for a,0,shotall
put shot(a,0),shot(a,1)
gcopy 1,?,?,?,?
next
//割愛
//弾の運動
for a,0,shotall
shot(a,0)+=shot(a,2)
next
こんな感じで書けばよいかと
適当に速攻で作ったので間違い、配列の要素の無効がでても勘弁してくださいね。