インベーダータイプのゲームを作る

今回はインベーダータイプのゲームを作成します。インベーダーゲームを知らない人も多いでしょうから簡単に説明します。上空から押し寄せてくる侵略者(インベーダー)を砲台からビームを発射して破壊する、というゲームです。本家タイトーのインベーダーゲームではUFOが出たり防御壁が用意されています。さすがに、そこまで実現するとプログラムが長くなってしまいますので、ここでは以下のルールでゲームを作成します。

  1. 敵は左右に揺れながら少しずつ画面下に移動し、自機より下に来たらゲームオーバー
  2. 敵は弾を撃たない
  3. 自機の弾は単発で、自動発射。つまりボタンクリックで発射しない。
  4. 敵を全て倒したら敵を全て復活させてゲームを延々と繰り返す

敵が弾を撃たないと簡単そうに見えますが、操作するのはiPhoneのタッチパネルですし、自機は自動発射のため思うようにはいきません。もっとも、改造して敵が弾を撃つようにしてみるのもよいでしょう。

今回は前回作成したブロック崩しのプログラムを少し改良したものになっています。このため、前回とは異なる部分についてのみ解説を行います。

ゲーム画面。全ての敵(虫)をやっつける