From f9dc0355363dfca419a8ec5361673b7f3f9c79de Mon Sep 17 00:00:00 2001 From: dis Date: Wed, 31 Jan 2024 14:59:28 +0900 Subject: [PATCH] =?utf8?q?[Refactor]=20check=5Fvisited=5Ffloor()=E3=81=AE?= =?utf8?q?=E8=A7=A3=E4=BD=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit check* の名称だが実態は保存済フロアの読込及び読込時の処理である。 適当な名称を付けて分割する。 --- src/floor/floor-changer.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/floor/floor-changer.cpp b/src/floor/floor-changer.cpp index aeb6d9be7..43f8c21c7 100644 --- a/src/floor/floor-changer.cpp +++ b/src/floor/floor-changer.cpp @@ -212,13 +212,12 @@ static bool is_visited_floor(saved_floor_type *sf_ptr) return sf_ptr->last_visit != 0; } -static void check_visited_floor(PlayerType *player_ptr, saved_floor_type *sf_ptr, bool *loaded) +/*! + * @brief フロア読込時にプレイヤー足元の地形に必要な情報を設定する + * @params player_ptr プレイヤーへの参照ポインタ + */ +static void set_player_grid(PlayerType *player_ptr) { - if (!is_visited_floor(sf_ptr) || !load_floor(player_ptr, sf_ptr, 0)) { - return; - } - - *loaded = true; if ((player_ptr->change_floor_mode & CFM_NO_RETURN) == 0) { return; } @@ -399,9 +398,9 @@ static void update_floor(PlayerType *player_ptr) } saved_floor_type *sf_ptr; - bool loaded = false; sf_ptr = get_sf_ptr(new_floor_id); - check_visited_floor(player_ptr, sf_ptr, &loaded); + const bool loaded = is_visited_floor(sf_ptr) && load_floor(player_ptr, sf_ptr, 0); + set_player_grid(player_ptr); update_floor_id(player_ptr, sf_ptr); update_new_floor_feature(player_ptr, sf_ptr, loaded); cut_off_the_upstair(player_ptr); -- 2.11.0