0. Puzmonとは
このページは、スッキリ分かるPython入門第2版に掲載されている「Puzmon」の続きです。ゲームの仕様や課題1~5は本書を確認してください。また、課題9のリンクはこちらです。課題9 攻撃処理の実装
1. 完成動作イメージ
2. 課題10 のゴール
- 基本的には課題9の仕様を踏襲する。
- 宝石消滅後の左詰めやランダムな宝石の発生で消滅が可能であれば、さらに消滅処理を連鎖的に発生させる(コンボ)。
課題10 突破のポイント
コンボ処理を実装するには、次のアルゴリズムが参考になるでしょう。
コンボ処理のアルゴリズム
- 3つ以上揃った宝石を消す(もし2組以上が同時に揃ったら左側を優先)。
- 消滅した宝石に応じて敵モンスターに攻撃する。
- 宝石を左詰めする。
- 詰めコンボが発生するか確認する。
- 詰めコンボが発生するなら1.に戻る。詰めコンボが発生しないなら、右側の空きスロットに宝石を生成する(ただし、コンボによる消滅や一度に4つ以上宝石が消える可能性があるので、生成する宝石は3個とは限らない)。
- 沸きコンボが発生するか確認する。
- 沸きコンボが発生するなら宝石を消去しコンボによる攻撃後、5.に戻る。発生しないなら敵のターンとなる。
以上
以上で拙書「スッキリわかるPython入門 第2版」が提供するpuzmon課題は全て終了です。本書を手に取ったばかりとの時は初心者だった皆様も、今では立派なPythonプログラミングの中級者かと思います。課題を解いていく中で多くの躓きがあったかと思いますが、その壁を乗り越えることで、あなたのスキルと理解が一段と深まったかと思います。この経験を糧に、さらに高い目標に向かって前進していっていただけたら著者としてこの上ない喜びです。ひとまず、お疲れ様でした!!!!