2013/01/24
■ [変愚蛮怒/スポイラー] level_gen()関数によるフロアサイズ確定の流れ(変愚蛮怒 Ver2.1.1)
ダンジョン生成の処理の内、最も根幹にあるgenerate_cave()の内、ダンジョン(地上より深いフロア)の処理はlevel_gen()関数で定義されている。
level_gen()関数は、グローバル変数(怨)dungeon_typeをidとして、 d.info.txtで定義されたダンジョン情報をd_info配列上より参照し、フロアサイズの確定を行なった後、フロアの中身をcave_gen()関数に任せる。
- 以下の条件で「小さなフロア」を生成する。
- オプションによる「常に非常に小さいフロアを生成する」をONにしている
- 「非常に小さいフロアの生成を可能にする」をONにしている状態では1/3の確率。
- ダンジョンにBEGINNERフラグがある。
- ダンジョンにSMALLESTフラグがあり、かつBIGフラグがない時。
- 「小さなフロア状態」ではサイズを以下の通りに定める。
- SMALLESTの時は縦横1画面分に完全固定(66x22)。
- BEGINNERの時は縦横2画面分に完全固定(132x44)。
- さもなくば、縦横をそれぞれ1d2画面分に定める。
- そうでない場合、最大縦横3画面分(198x66)にする。
この透明な感じが…スケルトンな感じのブルーが…たまらなく好きです!!
ありがとうございます。塗りが比較的上手く行った方だとは自分なりに思っていました。 <br>