OSDN Git Service

[Refactor] #37353 コメント整理 / Refactor comments.
[hengband/hengband.git] / src / rooms-vault.c
index 7f33134..3746791 100644 (file)
@@ -1,4 +1,4 @@
-#include "angband.h"\r
+#include "angband.h"\r
 #include "grid.h"\r
 #include "rooms.h"\r
 #include "generate.h"\r
 * Note: If two centers are on the same point then this algorithm will create a\r
 *       blank bubble filled with walls. - This is prevented from happening.\r
 */\r
-static void build_bubble_vault(int x0, int y0, int xsize, int ysize)\r
+static void build_bubble_vault(POSITION x0, POSITION y0, POSITION xsize, POSITION ysize)\r
 {\r
 #define BUBBLENUM 10           /* number of bubbles */\r
 \r
        /* array of center points of bubbles */\r
        coord center[BUBBLENUM];\r
 \r
-       int i, j, x, y;\r
+       int i, j;\r
+       POSITION x, y;\r
        u16b min1, min2, temp;\r
        bool done;\r
 \r
        /* Offset from center to top left hand corner */\r
-       int xhsize = xsize / 2;\r
-       int yhsize = ysize / 2;\r
+       POSITION xhsize = xsize / 2;\r
+       POSITION yhsize = ysize / 2;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\96A\8c^\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Room Vault."));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("泡型ランダムVaultを生成しました。", "Room Vault."));\r
 \r
        /* Allocate center of bubbles */\r
        center[0].x = (byte)randint1(xsize - 3) + 1;\r
@@ -89,7 +90,6 @@ static void build_bubble_vault(int x0, int y0, int xsize, int ysize)
                {\r
                        /* Get distances to two closest centers */\r
 \r
-                       /* initialize */\r
                        min1 = (u16b)distance(x, y, center[0].x, center[0].y);\r
                        min2 = (u16b)distance(x, y, center[1].x, center[1].y);\r
 \r
@@ -147,24 +147,25 @@ static void build_bubble_vault(int x0, int y0, int xsize, int ysize)
 }\r
 \r
 /* Create a random vault that looks like a collection of overlapping rooms */\r
-static void build_room_vault(int x0, int y0, int xsize, int ysize)\r
+static void build_room_vault(POSITION x0, POSITION y0, POSITION xsize, POSITION ysize)\r
 {\r
-       int i, x1, x2, y1, y2, xhsize, yhsize;\r
+       POSITION x1, x2, y1, y2, xhsize, yhsize;\r
+       int i;\r
 \r
        /* get offset from center */\r
        xhsize = xsize / 2;\r
        yhsize = ysize / 2;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\95\94\89®\8c^\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Room Vault."));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("部屋型ランダムVaultを生成しました。", "Room Vault."));\r
 \r
        /* fill area so don't get problems with arena levels */\r
        for (x1 = 0; x1 < xsize; x1++)\r
        {\r
-               int x = x0 - xhsize + x1;\r
+               POSITION x = x0 - xhsize + x1;\r
 \r
                for (y1 = 0; y1 < ysize; y1++)\r
                {\r
-                       int y = y0 - yhsize + y1;\r
+                       POSITION y = y0 - yhsize + y1;\r
 \r
                        place_extra_bold(y, x);\r
                        cave[y][x].info &= (~CAVE_ICKY);\r
@@ -195,10 +196,11 @@ static void build_room_vault(int x0, int y0, int xsize, int ysize)
 \r
 \r
 /* Create a random vault out of a fractal cave */\r
-static void build_cave_vault(int x0, int y0, int xsiz, int ysiz)\r
+static void build_cave_vault(POSITION x0, POSITION y0, POSITION xsiz, POSITION ysiz)\r
 {\r
-       int grd, roug, cutoff, xhsize, yhsize, xsize, ysize, x, y;\r
+       int grd, roug, cutoff;\r
        bool done, light, room;\r
+       POSITION xhsize, yhsize, xsize, ysize, x, y;\r
 \r
        /* round to make sizes even */\r
        xhsize = xsiz / 2;\r
@@ -206,7 +208,7 @@ static void build_cave_vault(int x0, int y0, int xsiz, int ysiz)
        xsize = xhsize * 2;\r
        ysize = yhsize * 2;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\93´\8c\8a\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Cave Vault."));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("洞穴ランダムVaultを生成しました。", "Cave Vault."));\r
 \r
        light = done = FALSE;\r
        room = TRUE;\r
@@ -246,13 +248,13 @@ static void build_cave_vault(int x0, int y0, int xsiz, int ysiz)
 \r
 \r
 /*!\r
-* @brief Vault\92n\8c`\82ð\89ñ\93]\81A\8fã\89º\8d\89E\94½\93]\82·\82é\82½\82ß\82Ì\8dÀ\95W\95Ï\8a·\82ð\95Ô\82· / coordinate translation code\r
-* @param x \95Ï\8a·\82µ\82½\82¢\93_\82ÌX\8dÀ\95W\8eQ\8fÆ\83|\83C\83\93\83^\r
-* @param y \95Ï\8a·\82µ\82½\82¢\93_\82ÌY\8dÀ\95W\8eQ\8fÆ\83|\83C\83\93\83^\r
-* @param xoffset Vault\90\90¬\8e\9e\82Ì\8aî\8f\80X\8dÀ\95W\r
-* @param yoffset Vault\90\90¬\8e\9e\82Ì\8aî\8f\80Y\8dÀ\95W\r
-* @param transno \8f\88\97\9dID\r
-* @return \82È\82µ\r
+* @brief Vault地形を回転、上下左右反転するための座標変換を返す / coordinate translation code\r
+* @param x 変換したい点のX座標参照ポインタ\r
+* @param y 変換したい点のY座標参照ポインタ\r
+* @param xoffset Vault生成時の基準X座標\r
+* @param yoffset Vault生成時の基準Y座標\r
+* @param transno 処理ID\r
+* @return なし\r
 */\r
 static void coord_trans(POSITION *x, POSITION *y, POSITION xoffset, POSITION yoffset, int transno)\r
 {\r
@@ -289,16 +291,16 @@ static void coord_trans(POSITION *x, POSITION *y, POSITION xoffset, POSITION yof
 \r
 \r
 /*!\r
-* @brief Vault\82ð\83t\83\8d\83A\82É\94z\92u\82·\82é / Hack -- fill in "vault" rooms\r
-* @param yval \90\90¬\8aî\8f\80Y\8dÀ\95W\r
-* @param xval \90\90¬\8aî\8f\80X\8dÀ\95W\r
-* @param ymax Vault\82ÌY\83T\83C\83Y\r
-* @param xmax Vault\82ÌX\83T\83C\83Y\r
-* @param data Vault\82Ì\83f\81[\83^\95\8e\9a\97ñ\r
-* @param xoffset \95Ï\8a·\8aî\8f\80X\8dÀ\95W\r
-* @param yoffset \95Ï\8a·\8aî\8f\80Y\8dÀ\95W\r
-* @param transno \95Ï\8a·ID\r
-* @return \82È\82µ\r
+* @brief Vaultをフロアに配置する / Hack -- fill in "vault" rooms\r
+* @param yval 生成基準Y座標\r
+* @param xval 生成基準X座標\r
+* @param ymax VaultのYサイズ\r
+* @param xmax VaultのXサイズ\r
+* @param data Vaultのデータ文字列\r
+* @param xoffset 変換基準X座標\r
+* @param yoffset 変換基準Y座標\r
+* @param transno 変換ID\r
+* @return なし\r
 */\r
 static void build_vault(POSITION yval, POSITION xval, POSITION ymax, POSITION xmax, cptr data,\r
        POSITION xoffset, POSITION yoffset, int transno)\r
@@ -335,8 +337,6 @@ static void build_vault(POSITION yval, POSITION xval, POSITION ymax, POSITION xm
 \r
                        /* Hack -- skip "non-grids" */\r
                        if (*t == ' ') continue;\r
-\r
-                       /* Access the grid */\r
                        c_ptr = &cave[y][x];\r
 \r
                        /* Lay down a floor */\r
@@ -452,6 +452,23 @@ static void build_vault(POSITION yval, POSITION xval, POSITION ymax, POSITION xm
                                place_object(y, x, AM_GOOD | AM_GREAT);\r
                                object_level = base_level;\r
                                break;\r
+\r
+                       case '~':\r
+                               set_cave_feat(y, x, feat_shallow_water);\r
+                               break;\r
+\r
+                       case '=':\r
+                               set_cave_feat(y, x, feat_deep_water);\r
+                               break;\r
+\r
+                       case 'v':\r
+                               set_cave_feat(y, x, feat_shallow_lava);\r
+                               break;\r
+\r
+                       case 'w':\r
+                               set_cave_feat(y, x, feat_deep_lava);\r
+                               break;\r
+\r
                        }\r
                }\r
        }\r
@@ -557,8 +574,8 @@ static void build_vault(POSITION yval, POSITION xval, POSITION ymax, POSITION xm
 \r
 \r
 /*!\r
-* @brief \83^\83C\83v7\82Ì\95\94\89®\81cv_info.txt\82æ\82è\8f¬\8c^vault\82ð\90\90¬\82·\82é / Type 7 -- simple vaults (see "v_info.txt")\r
-* @return \82È\82µ\r
+* @brief タイプ7の部屋…v_info.txtより小型vaultを生成する / Type 7 -- simple vaults (see "v_info.txt")\r
+* @return なし\r
 */\r
 bool build_type7(void)\r
 {\r
@@ -582,7 +599,7 @@ bool build_type7(void)
        /* No lesser vault found */\r
        if (dummy >= SAFE_MAX_ATTEMPTS)\r
        {\r
-               msg_print_wizard(CHEAT_DUNGEON, _("\8f¬\8c^\8cÅ\92èVault\82ð\94z\92u\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½\81B", "Could not place lesser vault."));\r
+               msg_print_wizard(CHEAT_DUNGEON, _("小型固定Vaultを配置できませんでした。", "Could not place lesser vault."));\r
                return FALSE;\r
        }\r
 \r
@@ -627,8 +644,7 @@ bool build_type7(void)
        v_ptr = &v_info[2];\r
 #endif\r
 \r
-       /* Message */\r
-       msg_format_wizard(CHEAT_DUNGEON, _("\8f¬\8c^Vault(%s)\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Lesser vault (%s)."), v_name + v_ptr->name);\r
+       msg_format_wizard(CHEAT_DUNGEON, _("小型Vault(%s)を生成しました。", "Lesser vault (%s)."), v_name + v_ptr->name);\r
 \r
        /* Hack -- Build the vault */\r
        build_vault(yval, xval, v_ptr->hgt, v_ptr->wid,\r
@@ -638,8 +654,8 @@ bool build_type7(void)
 }\r
 \r
 /*!\r
-* @brief \83^\83C\83v8\82Ì\95\94\89®\81cv_info.txt\82æ\82è\91å\8c^vault\82ð\90\90¬\82·\82é / Type 8 -- greater vaults (see "v_info.txt")\r
-* @return \82È\82µ\r
+* @brief タイプ8の部屋…v_info.txtより大型vaultを生成する / Type 8 -- greater vaults (see "v_info.txt")\r
+* @return なし\r
 */\r
 bool build_type8(void)\r
 {\r
@@ -648,7 +664,7 @@ bool build_type8(void)
        POSITION xval, yval;\r
        POSITION x, y;\r
        int transno;\r
-       int xoffset, yoffset;\r
+       POSITION xoffset, yoffset;\r
 \r
        /* Pick a greater vault */\r
        for (dummy = 0; dummy < SAFE_MAX_ATTEMPTS; dummy++)\r
@@ -663,7 +679,7 @@ bool build_type8(void)
        /* No greater vault found */\r
        if (dummy >= SAFE_MAX_ATTEMPTS)\r
        {\r
-               msg_print_wizard(CHEAT_DUNGEON, _("\91å\8c^\8cÅ\92èVault\82ð\94z\92u\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½\81B", "Could not place greater vault."));\r
+               msg_print_wizard(CHEAT_DUNGEON, _("大型固定Vaultを配置できませんでした。", "Could not place greater vault."));\r
                return FALSE;\r
        }\r
 \r
@@ -714,7 +730,7 @@ bool build_type8(void)
        v_ptr = &v_info[76 + randint1(3)];\r
 #endif\r
 \r
-       msg_format_wizard(CHEAT_DUNGEON, _("\91å\8c^\8cÅ\92èVault(%s)\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Greater vault (%s)."), v_name + v_ptr->name);\r
+       msg_format_wizard(CHEAT_DUNGEON, _("大型固定Vault(%s)を生成しました。", "Greater vault (%s)."), v_name + v_ptr->name);\r
 \r
        /* Hack -- Build the vault */\r
        build_vault(yval, xval, v_ptr->hgt, v_ptr->wid,\r
@@ -729,18 +745,18 @@ bool build_type8(void)
 * This is made by two concentric "crypts" with perpendicular\r
 * walls creating the cross-hairs.\r
 */\r
-static void build_target_vault(int x0, int y0, int xsize, int ysize)\r
+static void build_target_vault(POSITION x0, POSITION y0, POSITION xsize, POSITION ysize)\r
 {\r
-       int rad, x, y;\r
+       POSITION rad, x, y;\r
 \r
        /* Make a random metric */\r
-       int h1, h2, h3, h4;\r
+       POSITION h1, h2, h3, h4;\r
        h1 = randint1(32) - 16;\r
        h2 = randint1(16);\r
        h3 = randint1(32);\r
        h4 = randint1(32) - 16;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\91Î\8fÌ\8c`\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Elemental Vault"));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("対称形ランダムVaultを生成しました。", "Elemental Vault"));\r
 \r
        /* work out outer radius */\r
        if (xsize > ysize)\r
@@ -853,15 +869,16 @@ static void build_target_vault(int x0, int y0, int xsize, int ysize)
 *\r
 * Miniture rooms are then scattered across the vault.\r
 */\r
-static void build_elemental_vault(int x0, int y0, int xsiz, int ysiz)\r
+static void build_elemental_vault(POSITION x0, POSITION y0, POSITION xsiz, POSITION ysiz)\r
 {\r
        int grd, roug;\r
        int c1, c2, c3;\r
        bool done = FALSE;\r
-       int xsize, ysize, xhsize, yhsize, x, y, i;\r
+       POSITION xsize, ysize, xhsize, yhsize, x, y;\r
+       int i;\r
        int type;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\90¸\97ì\8aE\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Elemental Vault"));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("精霊界ランダムVaultを生成しました。", "Elemental Vault"));\r
 \r
        /* round to make sizes even */\r
        xhsize = xsiz / 2;\r
@@ -945,14 +962,14 @@ static void build_elemental_vault(int x0, int y0, int xsiz, int ysiz)
 * The vault has two entrances on opposite sides to guarantee\r
 * a way to get in even if the vault abuts a side of the dungeon.\r
 */\r
-static void build_mini_c_vault(int x0, int y0, int xsize, int ysize)\r
+static void build_mini_c_vault(POSITION x0, POSITION y0, POSITION xsize, POSITION ysize)\r
 {\r
-       int dy, dx;\r
-       int y1, x1, y2, x2, y, x, total;\r
+       POSITION dy, dx;\r
+       POSITION y1, x1, y2, x2, y, x, total;\r
        int m, n, num_vertices;\r
        int *visited;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\8f¬\8c^\83`\83F\83b\83J\81[\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Mini Checker Board Vault."));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("小型チェッカーランダムVaultを生成しました。", "Mini Checker Board Vault."));\r
 \r
        /* Pick a random room size */\r
        dy = ysize / 2 - 1;\r
@@ -1068,11 +1085,11 @@ static void build_mini_c_vault(int x0, int y0, int xsize, int ysize)
 *\r
 *This makes a vault that looks like a castle/ city in the dungeon.\r
 */\r
-static void build_castle_vault(int x0, int y0, int xsize, int ysize)\r
+static void build_castle_vault(POSITION x0, POSITION y0, POSITION xsize, POSITION ysize)\r
 {\r
-       int dy, dx;\r
-       int y1, x1, y2, x2;\r
-       int y, x;\r
+       POSITION dy, dx;\r
+       POSITION y1, x1, y2, x2;\r
+       POSITION y, x;\r
 \r
        /* Pick a random room size */\r
        dy = ysize / 2 - 1;\r
@@ -1083,7 +1100,7 @@ static void build_castle_vault(int x0, int y0, int xsize, int ysize)
        y2 = y0 + dy;\r
        x2 = x0 + dx;\r
 \r
-       msg_print_wizard(CHEAT_DUNGEON, _("\8fé\8c^\83\89\83\93\83_\83\80Vault\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Castle Vault"));\r
+       msg_print_wizard(CHEAT_DUNGEON, _("城型ランダムVaultを生成しました。", "Castle Vault"));\r
 \r
        /* generate the room */\r
        for (y = y1 - 1; y <= y2 + 1; y++)\r
@@ -1106,14 +1123,13 @@ static void build_castle_vault(int x0, int y0, int xsize, int ysize)
 \r
 \r
 /*!\r
-* @brief \83^\83C\83v10\82Ì\95\94\89®\81c\83\89\83\93\83_\83\80\90\90¬vault / Type 10 -- Random vaults\r
-* @return \82È\82µ\r
+* @brief タイプ10の部屋…ランダム生成vault / Type 10 -- Random vaults\r
+* @return なし\r
 */\r
 bool build_type10(void)\r
 {\r
        POSITION y0, x0, xsize, ysize, vtype;\r
 \r
-       /* Get size */\r
        /* big enough to look good, small enough to be fairly common. */\r
        xsize = randint1(22) + 22;\r
        ysize = randint1(11) + 11;\r
@@ -1160,8 +1176,8 @@ bool build_type10(void)
 \r
 \r
 /*!\r
-* @brief \83^\83C\83v16\82Ì\95\94\89®\81cv_info.txt\82æ\82è\8cÅ\92è\93Á\8eê\95\94\89®\82ð\90\90¬\82·\82é / Type 16 -- fixed special room (see "v_info.txt")\r
-* @return \82È\82µ\r
+* @brief タイプ16の部屋…v_info.txtより固定特殊部屋を生成する / Type 16 -- fixed special room (see "v_info.txt")\r
+* @return なし\r
 */\r
 bool build_type17(void)\r
 {\r
@@ -1185,7 +1201,7 @@ bool build_type17(void)
        /* No lesser vault found */\r
        if (dummy >= SAFE_MAX_ATTEMPTS)\r
        {\r
-               msg_print_wizard(CHEAT_DUNGEON, _("\8cÅ\92è\93Á\8eê\95\94\89®\82ð\94z\92u\82Å\82«\82Ü\82¹\82ñ\82Å\82µ\82½\81B", "Could not place fixed special room."));\r
+               msg_print_wizard(CHEAT_DUNGEON, _("固定特殊部屋を配置できませんでした。", "Could not place fixed special room."));\r
                return FALSE;\r
        }\r
 \r
@@ -1230,8 +1246,7 @@ bool build_type17(void)
        v_ptr = &v_info[2];\r
 #endif\r
 \r
-       /* Message */\r
-       msg_format_wizard(CHEAT_DUNGEON, _("\93Á\8eê\8cÅ\92è\95\94\89®(%s)\82ð\90\90¬\82µ\82Ü\82µ\82½\81B", "Special Fix room (%s)."), v_name + v_ptr->name);\r
+       msg_format_wizard(CHEAT_DUNGEON, _("特殊固定部屋(%s)を生成しました。", "Special Fix room (%s)."), v_name + v_ptr->name);\r
 \r
        /* Hack -- Build the vault */\r
        build_vault(yval, xval, v_ptr->hgt, v_ptr->wid,\r