シンプルなシューティングゲーム(スプライト版)

説明

ロケットを操作して上からやってくるUFOをビームで破壊してください。ロケットはカーソルキーの左右で動きます。スペースキーでビームが発射されます。UFOが下までくるとゲームオーバーになります。なお、UFOは画面下で撃てば高得点になります。

[サンプルプログラムをダウンロード]

// Simple Shooting (Sprite)
var pc=new PanCake();
var x=40,y=38,tx=rnd(32)+16,ty=0,dx=1,flag=0,bx=0,by=0,score=0;
cls();
pc.reset();
pc.sStart(6);
pc.sCreate(0,0x1c);
pc.sCreate(1,0x1d);
pc.sCreate(2,0x7d);
// Fighter
function moveFtr(k){
 if((k==28)*(x>1)){x=x-4;}
 if((k==29)*(x<72)){x=x+4;}
 if((k==32)*(flag==0)){
  flag=1;
  bx=x-1;
  by=y-7;
 }
 pc.sMove(0,x,y);
}
function main(){
 if(flag){
  pc.sMove(2,bx,by);
  by=by-1;
  if(by<-9){flag=0;}
  if(((bx+4)>tx)*(bx<(tx+4))*((by+8)>ty)*(by<(ty+8))){
   flag=0;
   pc.sMove(2,0,-9);
   score=score+ty;
   tx=rnd(32)+16;
   ty=0;
   pc.mScore(0,1,0x03,"CBG");
    lc(0,0);
   log("Score:",score,"\n");
  }
 }
 pc.sMove(1,tx,ty);
 tx=tx+dx;
 if((tx>72)+(tx<1)){
  dx=-dx;
  ty=ty+4;
  if(ty>44){
   log("Game Over\n");
   exit();
  }
 }
 setTout(main,4);
}
setKprs(moveFtr);
moveFtr(0);
pc.sMove(2,0,-9);
main();

目次に戻る