実際のゲーム部の実装に入る。
ググったり、youtubeにある動画を見ながら、ルールの確認が大方できた。
- 通常モグラと数字モグラは1レベルごとに16匹出現。
- モグラを一回たたけば40点。通常モグラ+数字モグラで80点。
- 連続して通常モグラを5匹退治すると、親モグラ「H」が出てくる。
- 親モグラは200点。数字には変化しない。
- ミスのカウントは通常モグラの押し間違いだけ。数字モグラの押し間違い、見逃した場合は、カウントしない。
- 1レベルで1000点を超えなければその時点でゲームオーバー。
- レベルが上がるごとに、モグラのスピードが上がる
1つのレベルでゲームスピードを少しずつコントロールすればよく、
また、GAMEOVERの判定も、1レベルごとのスコアだけで判定すればよい。
だから、1レベル、1ループにしちゃえばよさそうな気がした。
でも、Dishのお約束として、redraw0→redraw1の繰り返しが必要だし、なにより、タッチパネルの入力がリアルタイムで必要なので、やっぱりゲームカウントを設けて一定間隔ごとにモグラの出現処理を実行、タッチパネルの入力は常に受け付けて、押した時点でモグラを叩けたかの判定を行うようにする。
と書き出しては見たが、育児でまとまった時間が取れなくなったこともあり、作成は停滞。
フローチャートも書かず、思い付きで変数作ったり、処理を作るから、思った通りに動かない。
assert命令を追加して、デバッガでソースと値の変化を見ながら、ソースを直さないといけないという、あまりよろしくない状態。
それでも一通りモグラを叩けて、レベルクリアしていくゲームの本体は作れたのだが…