説明
回転する@マークに当たらないように自機を操作し、中央にあるボス本体を撃って倒してください。中心部本体の数値はボスの体力を示しています。0にすればゲームクリアです。回転する@マークに当たると即ゲームオーバーです。自機はカーソルキーの上下左右で動かすことができます。ショットはスペースキーです。なお、本物の某ゲーム同様にボス中心部の上下は安全地帯になってます(他にも安全地帯は多数あります)。ただし、この隙間に入ってしまうとボスは倒せません。また、本物と同様に@マークはどんどん高速回転していきます(高速回転した挙げ句逆回転状態になるのも本物と同様です)。なお、無敵状態にしたい場合はif(scr(fx,fy)>31){の31を331などに変更してください。
// Boss 6
var fx=5,fy=11,rr=3000,ra=1;
var bx=0,by=-1,k=0;
var bossX=16,bossY=11,pow=5;
function key(n){ k=n; }
function main(){
// move fighter
if((k==28)*(fx>0)){fx=fx-1;}
if((k==29)*(fx<27)){fx=fx+1;}
if((k==30)*(fy>1)){fy=fy-1;}
if((k==31)*(fy<21)){fy=fy+1;}
if((k==32)*(by<0)){bx=fx;by=fy;}
k=0;
cls();
lc(bossX,bossY);log(pow);
// move leaf
var r=3,tr=rr/100;
while(r<16){
var n=0;
while(n<360){
var x=bossX+sin8(tr+n+90)*r/250;
var y=bossY+sin8(tr+n)*r/250;
lc(x-1,y);log("@@@");
n=n+60;
}
r=r+3;
}
// move beam
if((bx<29)*(by>-1)){
bx=bx+1;
lc(bx,by);log("--");
if(bx==28){ by=-1; }
}
if(scr(fx,fy)>31){
lc(11,9);
log("Game Over");
lc(0,0);
exit();
}
lc(fx,fy);log(">");
if((bx==bossX)*(by==bossY)){
pow=pow-1;
by=-1;
if(pow<1){
lc(11,9);
log("Game Clear!");
lc(0,0);
exit();
}
}
rr=rr+10+ra;
ra=ra+1;
setTout(main,30);
}
setKprs(key);
main();
目次に戻る