とりあえず レベル1 のやり方。
//爆発アニメ作成
buffer 1,64*4,64 :cls 4
repeat 4
cnt_=3-cnt
color 255 :circle 64*cnt_,0,64*cnt_+64,64
color :circle (64-20)*cnt_,32-20*cnt_,(64+20)*cnt_,32+20*cnt_
loop
gsel 0
gmode 2
cx=250 ;自機X
cy=400 ;自機Y
ex=250 ;敵X
ey=20 ;敵Y
e_move=2 ;敵移動速度
shot_flg=0 ;弾発射フラグ
shot_x=0 ;弾X
shot_y=0 ;弾Y
koma=0 ;何コマ目の爆発アニメを表示するか
explosion_flg=0 ;爆発フラグ
*mainloop
redraw 0
color 255,255,255 :boxf
stick key,15+16
//自機の移動処理
if key&1 :cx-=8
if key&2 :cy-=8
if key&4 :cx+=8
if key&8 :cy+=8
//弾発射キー処理
if shot_flg=0 {
if key&16 :shot_flg=1 :shot_x=cx+20 :shot_y=cy
}
//適当に敵が移動
ex+=e_move
if ex>400|ex<200 :e_move*=-1
//当たり
if (ex-10<shot_x)&(ex+50>shot_x) {
if (ey<shot_y)&(ey+30>shot_y) :explosion_flg=1 :
}
//自機と敵を表示
color
pos cx,cy :mes " A \n< U >\n VWV"
pos ex,ey :mes "∧ ∧\n[^v^]"
//弾発射処理
if shot_flg {
pos shot_x,shot_y :mes "!!"
shot_y-=32
if shot_y<0 :shot_flg=0
}
//爆発処理
if explosion_flg=1 {
pos ex-10,ey-10
gcopy 1,64*koma,0,64,64
koma=(koma+1)\4
if koma=0 :explosion_flg=0
}
redraw 1
await 20
goto *mainloop
えっとレベル2は・・・。 |_・)