トップ

新しい敵を追加する

それでは、新しい敵を追加してみましょう。
Enemyを作成した要領で同じようにSpriteCharで作成してみましょう。


sample2.lzh

適当に画像を用意してみましょう。
上に表示されている画像はpngファイルですが、Downloadできる方はbmpになっていますので、そのまま上書きできます。



Yellow.tonyu
extends SpriteChar;
function onDie() {
  appear(new Bomb(x , y ,$pat_Sample+4));
}
function atariHantei() {
  for (t in $chars) {
   if ( t is Tama && crashTo(t) )  {
     die();
     t.die();
     $score=$score+10;
   }
  }
  if (crashTo($myChar)) $myChar.die();
}
while (y<$screenHeight) {
   y=y+1;
   x=x+vx+sin(8*y)*10;
   atariHantei();
  p=p+vp; vp=-vp;
   update();
}

Enemy.tonyuと同じ動きではつまらないので、不思議な移動パターンを施してみました。
三角関数のsin()を使用して、敵が波打つようにしてあります。

これで、敵は一まず増えましたが、Yellow.tonyuとEnemy.tonyuのコードはonDie()とatariHantei()がまったく同じです。プログラムはさらに短くなりそうです。
「クラスの継承」と呼ばれる操作を行うと短くなるのですが、それは後で行う事にしましょう。

このままでは、Yellow.tonyuは一度しか出てきませんので、次は、ボスがEnemy.tonyu同様にこのYellow.tonyuを出現させるようにしてみましょう。

  トップ