OSDN Git Service

[Refactor] #1743 Reshaped load.cpp
authorHourier <66951241+Hourier@users.noreply.github.com>
Sun, 30 Jan 2022 09:38:23 +0000 (18:38 +0900)
committerHourier <66951241+Hourier@users.noreply.github.com>
Sun, 30 Jan 2022 14:51:51 +0000 (23:51 +0900)
src/load/load.cpp

index 1e9781d..40d69fc 100644 (file)
  */
 static errr load_town_quest(PlayerType *player_ptr)
 {
-    if (h_older_than(2, 1, 3))
+    if (h_older_than(2, 1, 3)) {
         return 0;
+    }
 
-    errr load_town_result = load_town();
-    if (load_town_result != 0)
+    auto load_town_result = load_town();
+    if (load_town_result != 0) {
         return load_town_result;
-
+    }
+    
     uint16_t max_quests_load;
     byte max_rquests_load;
-    errr load_quest_result = load_quest_info(&max_quests_load, &max_rquests_load);
-    if (load_quest_result != 0)
+    auto load_quest_result = load_quest_info(&max_quests_load, &max_rquests_load);
+    if (load_quest_result != 0) {
         return load_quest_result;
+    }
 
     analyze_quests(player_ptr, max_quests_load, max_rquests_load);
 
@@ -86,9 +89,10 @@ static errr load_town_quest(PlayerType *player_ptr)
  */
 static void rd_total_play_time()
 {
-    if (loading_savefile_version_is_older_than(4))
+    if (loading_savefile_version_is_older_than(4)) {
         return;
-
+    }
+    
     w_ptr->sf_play_time = rd_u32b();
 }
 
@@ -97,8 +101,9 @@ static void rd_total_play_time()
  */
 static void rd_winner_class()
 {
-    if (loading_savefile_version_is_older_than(4))
+    if (loading_savefile_version_is_older_than(4)) {
         return;
+    }
 
     rd_FlagGroup(w_ptr->sf_winner, rd_byte);
     rd_FlagGroup(w_ptr->sf_retired, rd_byte);
@@ -116,8 +121,9 @@ static void load_player_world(PlayerType *player_ptr)
     rd_global_configurations(player_ptr);
     rd_extra(player_ptr);
 
-    if (player_ptr->energy_need < -999)
+    if (player_ptr->energy_need < -999) {
         player_ptr->timewalk = true;
+    }
 
     load_note(_("特別情報をロードしました", "Loaded extra information"));
 }
@@ -130,7 +136,7 @@ static errr load_hp(PlayerType *player_ptr)
         return 25;
     }
 
-    for (int i = 0; i < tmp16u; i++) {
+    for (auto i = 0; i < tmp16u; i++) {
         player_ptr->player_hp[i] = rd_s16b();
     }
 
@@ -145,23 +151,25 @@ static void load_spells(PlayerType *player_ptr)
     player_ptr->spell_worked2 = rd_u32b();
     player_ptr->spell_forgotten1 = rd_u32b();
     player_ptr->spell_forgotten2 = rd_u32b();
-
-    if (h_older_than(0, 0, 5))
+    if (h_older_than(0, 0, 5)) {
         set_zangband_learnt_spells(player_ptr);
-    else
+    } else {
         player_ptr->learned_spells = rd_s16b();
+    }
 
-    if (h_older_than(0, 0, 6))
+    if (h_older_than(0, 0, 6)) {
         player_ptr->add_spells = 0;
-    else
+    } else {
         player_ptr->add_spells = rd_s16b();
+    }
 }
 
 static errr verify_checksum()
 {
     auto n_v_check = v_check;
-    if (rd_u32b() == n_v_check)
+    if (rd_u32b() == n_v_check) {
         return 0;
+    }
 
     load_note(_("チェックサムがおかしい", "Invalid checksum"));
     return 11;
@@ -170,8 +178,9 @@ static errr verify_checksum()
 static errr verify_encoded_checksum()
 {
     auto n_x_check = x_check;
-    if (rd_u32b() == n_x_check)
+    if (rd_u32b() == n_x_check) {
         return 0;
+    }
 
     load_note(_("エンコードされたチェックサムがおかしい", "Invalid encoded checksum"));
     return 11;
@@ -189,16 +198,18 @@ static errr exe_reading_savefile(PlayerType *player_ptr)
     load_lore();
     auto item_loader = ItemLoaderFactory::create_loader();
     item_loader->load_item();
-    errr load_town_quest_result = load_town_quest(player_ptr);
-    if (load_town_quest_result != 0)
+    auto load_town_quest_result = load_town_quest(player_ptr);
+    if (load_town_quest_result != 0) {
         return load_town_quest_result;
+    }
 
     load_note(_("クエスト情報をロードしました", "Loaded Quests"));
     item_loader->load_artifact();
     load_player_world(player_ptr);
-    errr load_hp_result = load_hp(player_ptr);
-    if (load_hp_result != 0)
+    auto load_hp_result = load_hp(player_ptr);
+    if (load_hp_result != 0) {
         return load_hp_result;
+    }
 
     auto short_pclass = enum2i(player_ptr->pclass);
     sp_ptr = &sex_info[player_ptr->psex];
@@ -210,37 +221,44 @@ static errr exe_reading_savefile(PlayerType *player_ptr)
     mp_ptr = &m_info[short_pclass];
 
     load_spells(player_ptr);
-    if (player_ptr->pclass == PlayerClassType::MINDCRAFTER)
+    if (player_ptr->pclass == PlayerClassType::MINDCRAFTER) {
         player_ptr->add_spells = 0;
+    }
 
-    errr load_inventory_result = load_inventory(player_ptr);
-    if (load_inventory_result != 0)
+    auto load_inventory_result = load_inventory(player_ptr);
+    if (load_inventory_result != 0) {
         return load_inventory_result;
+    }
 
     load_store(player_ptr);
     player_ptr->pet_follow_distance = rd_s16b();
-    if (h_older_than(0, 4, 10))
+    if (h_older_than(0, 4, 10)) {
         set_zangband_pet(player_ptr);
-    else
+    } else {
         player_ptr->pet_extra_flags = rd_u16b();
+    }
 
     if (!h_older_than(1, 0, 9)) {
         std::vector<char> buf(SCREEN_BUF_MAX_SIZE);
         rd_string(buf.data(), SCREEN_BUF_MAX_SIZE);
-        if (buf[0])
+        if (buf[0]) {
             screen_dump = string_make(buf.data());
+        }
     }
 
-    errr restore_dungeon_result = restore_dungeon(player_ptr);
-    if (restore_dungeon_result != 0)
+    auto restore_dungeon_result = restore_dungeon(player_ptr);
+    if (restore_dungeon_result != 0) {
         return restore_dungeon_result;
+    }
 
-    if (h_older_than(1, 7, 0, 6))
+    if (h_older_than(1, 7, 0, 6)) {
         remove_water_cave(player_ptr);
+    }
 
-    errr checksum_result = verify_checksum();
-    if (checksum_result != 0)
+    auto checksum_result = verify_checksum();
+    if (checksum_result != 0) {
         return checksum_result;
+    }
 
     return verify_encoded_checksum();
 }
@@ -255,12 +273,14 @@ static errr rd_savefile(PlayerType *player_ptr)
     safe_setuid_grab(player_ptr);
     loading_savefile = angband_fopen(savefile, "rb");
     safe_setuid_drop();
-    if (!loading_savefile)
+    if (!loading_savefile) {
         return -1;
+    }
 
     errr err = exe_reading_savefile(player_ptr);
-    if (ferror(loading_savefile))
+    if (ferror(loading_savefile)) {
         err = -1;
+    }
 
     angband_fclose(loading_savefile);
     return err;
@@ -290,11 +310,12 @@ static bool can_takeover_savefile(const PlayerType *player_ptr)
  */
 bool load_savedata(PlayerType *player_ptr, bool *new_game)
 {
-    concptr what = "generic";
+    auto what = "generic";
     w_ptr->game_turn = 0;
     player_ptr->is_dead = false;
-    if (!savefile[0])
+    if (!savefile[0]) {
         return true;
+    }
 
 #ifndef WINDOWS
     if (access(savefile, 0) < 0) {
@@ -305,16 +326,18 @@ bool load_savedata(PlayerType *player_ptr, bool *new_game)
     }
 #endif
 
-    bool err = false;
-    int fd = -1;
+    auto err = false;
+    auto fd = -1;
     char tmp_ver[14]{};
     if (!err) {
         fd = fd_open(savefile, O_RDONLY);
-        if (fd < 0)
+        if (fd < 0) {
             err = true;
+        }
 
-        if (err)
+        if (err) {
             what = _("セーブファイルを開けません", "Cannot open savefile");
+        }
     }
 
     if (!err) {
@@ -360,24 +383,28 @@ bool load_savedata(PlayerType *player_ptr, bool *new_game)
 
     if (!err) {
         term_clear();
-        if (rd_savefile(player_ptr))
+        if (rd_savefile(player_ptr)) {
             err = true;
-        if (err)
+        }
+
+        if (err) {
             what = _("セーブファイルを解析出来ません。", "Cannot parse savefile");
+        }
     }
 
     if (!err) {
-        if (!w_ptr->game_turn)
+        if (!w_ptr->game_turn) {
             err = true;
+        }
 
-        if (err)
+        if (err) {
             what = _("セーブファイルが壊れています", "Broken savefile");
+        }
     }
 
     if (err) {
         msg_format(_("エラー(%s)がバージョン%d.%d.%d.%d 用セーブファイル読み込み中に発生。", "Error (%s) reading %d.%d.%d.% savefile."), what,
             w_ptr->h_ver_major, w_ptr->h_ver_minor, w_ptr->h_ver_patch, w_ptr->h_ver_extra);
-
         msg_print(nullptr);
         return false;
     }
@@ -391,6 +418,7 @@ bool load_savedata(PlayerType *player_ptr, bool *new_game)
             msg_print(nullptr);
             return false;
         }
+
         player_ptr->is_dead = true;
         player_ptr->wait_report_score = false;
     }
@@ -403,12 +431,13 @@ bool load_savedata(PlayerType *player_ptr, bool *new_game)
     }
 
     w_ptr->character_loaded = true;
-    uint32_t tmp = counts_read(player_ptr, 2);
+    auto tmp = counts_read(player_ptr, 2);
     if (tmp > player_ptr->count)
         player_ptr->count = tmp;
 
-    if (counts_read(player_ptr, 0) > w_ptr->play_time || counts_read(player_ptr, 1) == w_ptr->play_time)
+    if (counts_read(player_ptr, 0) > w_ptr->play_time || counts_read(player_ptr, 1) == w_ptr->play_time) {
         counts_write(player_ptr, 2, ++player_ptr->count);
+    }
 
     counts_write(player_ptr, 1, w_ptr->play_time);
     return true;