OSDN Git Service

[Refactor] #38995 world_type 構造体に dungeon_turn_limit を取り込む。 / Move dungeon_turn_limi...
authordeskull <deskull@users.sourceforge.jp>
Thu, 28 Feb 2019 11:44:39 +0000 (20:44 +0900)
committerdeskull <deskull@users.sourceforge.jp>
Thu, 28 Feb 2019 11:44:39 +0000 (20:44 +0900)
src/birth.c
src/bldg.c
src/dungeon.c
src/externs.h
src/load.c
src/spells-world.c
src/types.h
src/variable.c

index ddfba26..12cb026 100644 (file)
@@ -1906,7 +1906,7 @@ static void init_turn(void)
        }
 
        current_world_ptr->dungeon_turn = 1;
-       dungeon_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
+       current_world_ptr->dungeon_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
 }
 
 
index 490c551..7c7f30d 100644 (file)
@@ -1948,10 +1948,10 @@ static bool inn_comm(int cmd)
                                        do_cmd_write_nikki(NIKKI_BUNSHOU, 0, _("宿屋に泊まった。", "stay over night at the inn."));
                                
                                current_world_ptr->game_turn = (current_world_ptr->game_turn / (TURNS_PER_TICK * TOWN_DAWN / 2) + 1) * (TURNS_PER_TICK * TOWN_DAWN / 2);
-                               if (current_world_ptr->dungeon_turn < dungeon_turn_limit)
+                               if (current_world_ptr->dungeon_turn < current_world_ptr->dungeon_turn_limit)
                                {
                                        current_world_ptr->dungeon_turn += MIN((current_world_ptr->game_turn - oldturn), TURNS_PER_TICK * 250) * INN_DUNGEON_TURN_ADJ;
-                                       if (current_world_ptr->dungeon_turn > dungeon_turn_limit) current_world_ptr->dungeon_turn = dungeon_turn_limit;
+                                       if (current_world_ptr->dungeon_turn > current_world_ptr->dungeon_turn_limit) current_world_ptr->dungeon_turn = current_world_ptr->dungeon_turn_limit;
                                }
 
                                prevent_turn_overflow();
index 76cd096..474b903 100644 (file)
@@ -5498,7 +5498,7 @@ static void dungeon(bool load_game)
                /* Count game turns */
                current_world_ptr->game_turn++;
 
-               if (current_world_ptr->dungeon_turn < dungeon_turn_limit)
+               if (current_world_ptr->dungeon_turn < current_world_ptr->dungeon_turn_limit)
                {
                        if (!p_ptr->wild_mode || wild_regen) current_world_ptr->dungeon_turn++;
                        else if (p_ptr->wild_mode && !(current_world_ptr->game_turn % ((MAX_HGT + MAX_WID) / 2))) current_world_ptr->dungeon_turn++;
index 8d7155a..387ca80 100644 (file)
@@ -160,7 +160,6 @@ extern bool msg_flag;
 extern s16b running;
 extern GAME_TURN resting;
 extern bool invoking_midnight_curse;
-extern GAME_TURN dungeon_turn_limit;
 extern GAME_TURN old_turn;
 extern GAME_TURN old_battle;
 extern bool use_sound;
index a87acef..7131b2a 100644 (file)
@@ -2262,7 +2262,7 @@ static void rd_extra(void)
                current_world_ptr->game_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
                break;
        }
-       dungeon_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
+       current_world_ptr->dungeon_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
 
        /* Turn when level began */
        rd_s32b(&old_turn);
index f1db60a..2c34fd2 100644 (file)
@@ -9,13 +9,13 @@ bool set_gametime(void)
        int tmp_int = 0;
        char ppp[80], tmp_val[40];
 
-       sprintf(ppp, "Dungeon Turn (0-%ld): ", (long)dungeon_turn_limit);
+       sprintf(ppp, "Dungeon Turn (0-%ld): ", (long)current_world_ptr->dungeon_turn_limit);
        sprintf(tmp_val, "%ld", (long)current_world_ptr->dungeon_turn);
        if (!get_string(ppp, tmp_val, 10)) return (FALSE);
        tmp_int = atoi(tmp_val);
 
        /* Verify */
-       if (tmp_int >= dungeon_turn_limit) tmp_int = dungeon_turn_limit - 1;
+       if (tmp_int >= current_world_ptr->dungeon_turn_limit) tmp_int = current_world_ptr->dungeon_turn_limit - 1;
        else if (tmp_int < 0) tmp_int = 0;
        current_world_ptr->dungeon_turn = current_world_ptr->game_turn = tmp_int;
        return (TRUE);
index 143a189..e65d90b 100644 (file)
@@ -1904,5 +1904,6 @@ typedef struct {
        GAME_TURN game_turn;                    /*!< 画面表示上のゲーム時間基準となるターン / Current game turn */
        GAME_TURN game_turn_limit;              /*!< game_turnの最大値 / Limit of game_turn */
        GAME_TURN dungeon_turn;                 /*!< NASTY生成の計算に関わる内部ターン値 / Game current_world_ptr->game_turn in dungeon */
+       GAME_TURN dungeon_turn_limit;   /*!< dungeon_turnの最大値 / Limit of game_turn in dungeon */
 
 } world_type;
index a3510d9..eb74f40 100644 (file)
@@ -113,7 +113,6 @@ GAME_TURN resting;                  /* Current counter for resting, if any */
 
 bool invoking_midnight_curse; /*!< 悪夢モード時の真夜中太古の呪い発生処理フラグ */
 
-GAME_TURN dungeon_turn_limit;  /*!< current_world_ptr->dungeon_turnの最大値 / Limit of game current_world_ptr->game_turn in dungeon */
 GAME_TURN old_turn;                    /* Turn when level began */
 GAME_TURN old_battle;