部屋生成処理の定義ヘッダー / Header file for rooms.c, used only in generate.c [詳細]
データ構造 | |
struct | room_info_type |
マクロ定義 | |
#define | DUN_ROOMS_MAX 40 |
部屋生成処理の最大試行数 / Number of rooms to attempt (was 50) [詳細] | |
#define | LAKE_T_LAVA 1 |
池型地形ID: 溶岩 [詳細] | |
#define | LAKE_T_WATER 2 |
池型地形ID: 池 [詳細] | |
#define | LAKE_T_CAVE 3 |
池型地形ID: 空洞 [詳細] | |
#define | LAKE_T_EARTH_VAULT 4 |
池型地形ID: 地属性VAULT [詳細] | |
#define | LAKE_T_AIR_VAULT 5 |
池型地形ID: 風属性VAULT [詳細] | |
#define | LAKE_T_WATER_VAULT 6 |
池型地形ID: 水属性VAULT [詳細] | |
#define | LAKE_T_FIRE_VAULT 7 |
池型地形ID: 火属性VAULT [詳細] | |
#define | ROOM_T_NORMAL 0 |
部屋型ID:基本長方形 / Simple (33x11) [詳細] | |
#define | ROOM_T_OVERLAP 1 |
部屋型ID:長方形二つ重ね / Overlapping (33x11) [詳細] | |
#define | ROOM_T_CROSS 2 |
部屋型ID:十字 / Crossed (33x11) [詳細] | |
#define | ROOM_T_INNER_FEAT 3 |
部屋型ID:二重壁 / Large (33x11) [詳細] | |
#define | ROOM_T_NEST 4 |
部屋型ID:モンスターNEST / Monster nest (33x11) [詳細] | |
#define | ROOM_T_PIT 5 |
部屋型ID:モンスターPIT / Monster pit (33x11) [詳細] | |
#define | ROOM_T_LESSER_VAULT 6 |
部屋型ID:小型VAULT / Lesser vault (33x22) [詳細] | |
#define | ROOM_T_GREATER_VAULT 7 |
部屋型ID:大型VAULT / Greater vault (66x44) [詳細] | |
#define | ROOM_T_FRACAVE 8 |
部屋型ID:フラクタル地形 / Fractal cave (42x24) [詳細] | |
#define | ROOM_T_RANDOM_VAULT 9 |
部屋型ID:ランダムVAULT / Random vault (44x22) [詳細] | |
#define | ROOM_T_OVAL 10 |
部屋型ID:円形部屋 / Circular rooms (22x22) [詳細] | |
#define | ROOM_T_CRYPT 11 |
部屋型ID:聖堂 / Crypts (22x22) [詳細] | |
#define | ROOM_T_TRAP_PIT 12 |
部屋型ID:トラップつきモンスターPIT / Trapped monster pit [詳細] | |
#define | ROOM_T_TRAP 13 |
部屋型ID:トラップ部屋 / Piranha/Armageddon trap room [詳細] | |
#define | ROOM_T_GLASS 14 |
部屋型ID:ガラス部屋 / Glass room [詳細] | |
#define | ROOM_T_ARCADE 15 |
部屋型ID:商店 / Arcade [詳細] | |
#define | ROOM_T_MAX 16 |
部屋型ID最大数 [詳細] | |
型定義 | |
typedef struct room_info_type | room_info_type |
関数 | |
bool | generate_rooms (void) |
部屋生成処理のメインルーチン(Sangbandを経由してOangbandからの実装を引用) / Generate rooms in dungeon. [詳細] | |
void | build_maze_vault (int x0, int y0, int xsize, int ysize, bool is_vault) |
部屋生成処理の定義ヘッダー / Header file for rooms.c, used only in generate.c
#define DUN_ROOMS_MAX 40 |
部屋生成処理の最大試行数 / Number of rooms to attempt (was 50)
#define LAKE_T_AIR_VAULT 5 |
池型地形ID: 風属性VAULT
#define LAKE_T_CAVE 3 |
池型地形ID: 空洞
#define LAKE_T_EARTH_VAULT 4 |
池型地形ID: 地属性VAULT
#define LAKE_T_FIRE_VAULT 7 |
池型地形ID: 火属性VAULT
#define LAKE_T_LAVA 1 |
池型地形ID: 溶岩
#define LAKE_T_WATER 2 |
池型地形ID: 池
#define LAKE_T_WATER_VAULT 6 |
池型地形ID: 水属性VAULT
#define ROOM_T_ARCADE 15 |
部屋型ID:商店 / Arcade
#define ROOM_T_CROSS 2 |
部屋型ID:十字 / Crossed (33x11)
#define ROOM_T_CRYPT 11 |
部屋型ID:聖堂 / Crypts (22x22)
#define ROOM_T_FRACAVE 8 |
部屋型ID:フラクタル地形 / Fractal cave (42x24)
#define ROOM_T_GLASS 14 |
部屋型ID:ガラス部屋 / Glass room
#define ROOM_T_GREATER_VAULT 7 |
部屋型ID:大型VAULT / Greater vault (66x44)
#define ROOM_T_INNER_FEAT 3 |
部屋型ID:二重壁 / Large (33x11)
#define ROOM_T_LESSER_VAULT 6 |
部屋型ID:小型VAULT / Lesser vault (33x22)
#define ROOM_T_MAX 16 |
部屋型ID最大数
#define ROOM_T_NEST 4 |
部屋型ID:モンスターNEST / Monster nest (33x11)
#define ROOM_T_NORMAL 0 |
部屋型ID:基本長方形 / Simple (33x11)
#define ROOM_T_OVAL 10 |
部屋型ID:円形部屋 / Circular rooms (22x22)
#define ROOM_T_OVERLAP 1 |
部屋型ID:長方形二つ重ね / Overlapping (33x11)
#define ROOM_T_PIT 5 |
部屋型ID:モンスターPIT / Monster pit (33x11)
#define ROOM_T_RANDOM_VAULT 9 |
部屋型ID:ランダムVAULT / Random vault (44x22)
#define ROOM_T_TRAP 13 |
部屋型ID:トラップ部屋 / Piranha/Armageddon trap room
#define ROOM_T_TRAP_PIT 12 |
部屋型ID:トラップつきモンスターPIT / Trapped monster pit
typedef struct room_info_type room_info_type |
void build_maze_vault | ( | int | x0, |
int | y0, | ||
int | xsize, | ||
int | ysize, | ||
bool | is_vault | ||
) |
bool generate_rooms | ( | void | ) |
部屋生成処理のメインルーチン(Sangbandを経由してOangbandからの実装を引用) / Generate rooms in dungeon.
Build bigger rooms at first. [from SAngband (originally from OAngband)]
ダンジョンにBEGINNER、CHAMELEON、SMALLESTいずれのフラグもなく、かつ「常に通常でない部屋を生成する」フラグがONならば、GRATER_VAULTのみを生成対象とする。 / Ironman sees only Greater Vaults
ダンジョンにNO_VAULTフラグがあるならば、LESSER_VAULT / GREATER_VAULT/ RANDOM_VAULTを除外 / Forbidden vaults
ダンジョンにNO_CAVEフラグがある場合、FRACAVEの生成枠がNORMALに与えられる。CRIPT、OVALの生成枠がINNER_Fに与えられる。/ NO_CAVE dungeon (Castle)
ダンジョンにCAVEフラグがある場合、NORMALの生成枠がFRACAVEに与えられる。/ CAVE dungeon (Orc cave etc.)
ダンジョンの基本地形が最初から渓谷かアリーナ型の場合 FRACAVE は生成から除外。 / No caves when a (random) cavern exists: they look bad
ダンジョンに最初からGLASS_ROOMフラグがある場合、GLASS を生成から除外。/ Forbidden glass rooms
ARCADEは同フラグがダンジョンにないと生成されない。 / Forbidden glass rooms
部屋生成数が2未満の場合生成失敗を返す