炎を避けて進め

説明

炎を避けて進んでください。キャラクタはカーソルキーの左右で移動します。炎に当たるとゲームオーバーです。この世界は閉じているので端まで移動した炎は反対側から出てきます。

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

// Fire
var pc=new PanCake();
var max=8;
var enemy=new Array(max);
var x=40,y=38,f=0x40;
pc.reset();
// fire object
function Fire(){
 this.x=rnd(30)+20;
 this.y=-i*8;
}
var i=0;
while(i<max){
 enemy[i]=new Fire();
 i=i+1;
}
pc.clear(0);
pc.wbuf(1);
// key
function key(k){
 var dx=0;
 if(k==28){dx=2;}
 if(k==29){dx=-2;}
 if(dx==0){return;}
 var i=0;
 while(i<max){
  enemy[i].x=enemy[i].x+dx;
  if(enemy[i].x<-7){enemy[i].x=80;}
  if(enemy[i].x>80){enemy[i].x=-7;}
  i=i+1;
 }
}
function main(){
 var i=0;
 pc.clear(0);
 while(i<max){
  enemy[i].y=enemy[i].y+1;
  if(enemy[i].y>44){enemy[i].x=rnd(30)+20;enemy[i].y=-8;}
  pc.stamps(enemy[i].x,enemy[i].y,f);
  if( (enemy[i].y>(y-6))*(enemy[i].y<(y+4))*((enemy[i].x+5)>x)*(enemy[i].x<(x+5)) ){
   log("Game Over\n");
   exit();
  }
  i=i+1;
 }
 f=f^1;
 pc.stamps(x,y,0);
 pc.wbuf(1);
 setTout(main,0);
}
setKprs(key);
main();

目次に戻る