
マップ散策中にエンカウントする敵の隊列パターン・出現座標を制御できるようにしました。
どこでエンカウントしようが同じ敵が出るだけだった以前に比べると、だいぶ自由度が高まりました。
1~5体の敵が出てきます。
【下準備】
1:敵の出現パターンをCSVファイルで設定

伝家の宝刀Excel先生を用い、CSVファイルを作成しました。
ご覧の通り、1行=1パターンで、各データは以下のように使われています:
| データの内容 | どこで参照? | 参照後の処理 |
|---|---|---|
| scale 各パターンごとの敵の数 | 戦闘画面を制御するオブジェクト(いわゆるcontroller)がGUI描画イベントで参照。 | 値に応じて各敵の描画位置を決定し、実描画を行う。 |
| habitat 出現しうる座標(後述) | 探索画面上のプレイヤーオブジェクトが歩く度に参照。 | habitatが一致するパターンを「 |
| array パターンに含まれる敵の通し番号をまとめた配列 | エンカウント時、戦闘画面を制御するオブジェクトが参照。 | 番号を基に、別途読み込み済の各敵のデータ(図鑑みたいなやつ)を参照し、パターンに含まれる敵の体力や所持スキル、見た目のデータを読み取り描画 |
2:マップ上に専用オブジェクトoHabitatを敷き、各oHabitatに変数habitatを持たせる。

oPlayerが踏んでいるoHabitatのhabitatが
「h1」なら、「h1で出現しうる」ように設定されている敵パターン、
「h2」なら、「h2で出現しうる」ように設定されている敵パターンとエンカウントする。
「h1/h2で出現しうる」ように設定されている敵パターンなら、どっちのhabitatでも出現する。
ハビタットハビタットうるせー!
ページ: 1 2