OSDN Git Service

[Refactor] #37353 一般的な部屋生成処理を rooms.c から rooms-normal.c/h へ分離。
[hengband/hengband.git] / src / rooms.h
index 75ac13d..51eeab2 100644 (file)
@@ -1,48 +1,46 @@
-/*
- * File: rooms.h
- * Purpose: Header file for rooms.c, used only in generate.c
- */
-
-/*
- * Copyright (c) 1997 Ben Harrison, James E. Wilson, Robert A. Koeneke
- *
+/*!
+ * @file rooms.h
+ * @brief 部屋生成処理の定義ヘッダー / Header file for rooms.c, used only in generate.c
+ * @date 2014/09/07
+ * @author
+ * Copyright (c) 1997 Ben Harrison, James E. Wilson, Robert A. Koeneke<br>
  * This software may be copied and distributed for educational, research,
  * and not for profit purposes provided that this copyright and statement
- * are included in all such copies.  Other copyrights may also apply.
+ * are included in all such copies.  Other copyrights may also apply.<br
  */
 
-
-/* Number of rooms to attempt (was 50) */
-#define DUN_ROOMS_MAX  40
+#define DUN_ROOMS_MAX  40 /*!< 部屋生成処理の最大試行数 / Number of rooms to attempt (was 50) */
 
 
-/* Room types for generate_lake() */
-#define LAKE_T_LAVA        1
-#define LAKE_T_WATER       2
-#define LAKE_T_CAVE        3
-#define LAKE_T_EARTH_VAULT 4
-#define LAKE_T_AIR_VAULT   5
-#define LAKE_T_WATER_VAULT 6
-#define LAKE_T_FIRE_VAULT  7
+/* 池型地形の生成ID / Room types for generate_lake() */
+#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 */
 
 
-/* Room types for room_build() */
-#define ROOM_T_NORMAL         0         /* Simple (33x11) */
-#define ROOM_T_OVERLAP        1         /* Overlapping (33x11) */
-#define ROOM_T_CROSS          2         /* Crossed (33x11) */
-#define ROOM_T_INNER_FEAT     3         /* Large (33x11) */
-#define ROOM_T_NEST           4         /* Monster nest (33x11) */
-#define ROOM_T_PIT            5         /* Monster pit (33x11) */
-#define ROOM_T_LESSER_VAULT   6         /* Lesser vault (33x22) */
-#define ROOM_T_GREATER_VAULT  7         /* Greater vault (66x44) */
-#define ROOM_T_FRACAVE        8         /* Fractal cave (42x24) */
-#define ROOM_T_RANDOM_VAULT   9         /* Random vault (44x22) */
-#define ROOM_T_OVAL          10         /* Circular rooms (22x22) */
-#define ROOM_T_CRYPT         11         /* Crypts (22x22) */
-#define ROOM_T_TRAP_PIT      12         /* Trapped monster pit */
-#define ROOM_T_TRAP          13         /* Piranha/Armageddon trap room */
+/* 部屋型ID / Room types for room_build() */
+#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 14
+#define ROOM_T_MAX 16 /*!<部屋型ID最大数 */
 
 
 /*
@@ -68,4 +66,8 @@ extern void build_cavern(void);
 
 extern bool generate_rooms(void);
 extern void build_maze_vault(int x0, int y0, int xsize, int ysize, bool is_vault);
+extern void place_secret_door(int y, int x, int type);
+extern void place_locked_door(int y, int x);
+extern bool find_space(POSITION *y, POSITION *x, POSITION height, POSITION width);
+