モンスターを一体ずつ巣から出すには?

実際にパックマンではモンスターは1体を除いて巣のなかにいて、時間の経過とともに巣から出てきます。

そこでそのようになるようにプログラムを改良します。

まず巣のなかを以下のように変えます。フィールド変数を変えています。

MoveMonstarメソッドの変更

MoveMonstarメソッドを以下のように変更します。

こでまではモンスターの動きはこれまでの移動方向とは逆の方向に移動することはありませんでした(パワー餌を食べたときは除く)。巣のなかで待機している場合は上下に移動させるためにGetStringMazeCellメソッドが↑や↓を返したときはモンスターの動きを上下反対にしています。

Timer_Tickメソッドの変更

最初は赤以外のモンスターは巣のなかで上下に移動しています。そして時間が経過することで巣の外に出てきます。

そのためにフィールドを表現するための文字列を変更しています。これで時間の経過とともにモンスターは巣の外に出ることができます。

OnPacmanDeadメソッドの変更

フィールド変数TimerTickCountはミスをしたときにリセットされなければなりません。