OSDN Git Service

[Refactor] ARENA_DEFEATED_OLD_VER をcmd-building.h からarena-entry.h に移した
authorHourier <66951241+Hourier@users.noreply.github.com>
Sun, 9 Jun 2024 02:56:03 +0000 (11:56 +0900)
committerHourier <66951241+Hourier@users.noreply.github.com>
Wed, 12 Jun 2024 11:51:36 +0000 (20:51 +0900)
src/cmd-building/cmd-building.h
src/io-dump/character-dump.cpp
src/load/player-info-loader.cpp
src/market/arena-entry.h

index 8e543ae..1bce0ff 100644 (file)
@@ -9,11 +9,6 @@
 #define BUILDING_OWNER      2 /*!< 施設の種族/職業条件が一致している状態値 */
 // clang-format on
 
-/*
- * Arena constants
- */
-#define ARENA_DEFEATED_OLD_VER (-(MAX_SHORT)) /*<! 旧バージョンの闘技場敗北定義 */
-
 extern bool reinit_wilderness;
 
 extern uint32_t mon_odds[4];
index 1bd7db8..9d61a26 100644 (file)
@@ -1,7 +1,6 @@
 #include "io-dump/character-dump.h"
 #include "artifact/fixed-art-types.h"
 #include "avatar/avatar.h"
-#include "cmd-building/cmd-building.h"
 #include "dungeon/quest.h"
 #include "flavor/flavor-describer.h"
 #include "floor/floor-town.h"
@@ -275,19 +274,19 @@ static void dump_aux_arena(PlayerType *player_ptr, FILE *fff)
     const auto &entries = ArenaEntryList::get_instance();
     const auto arena_number = player_ptr->arena_number;
     if (arena_number < 0) {
-        if (arena_number <= ARENA_DEFEATED_OLD_VER) {
-            fprintf(fff, _("\n 闘技場: 敗北\n", "\n Arena: Defeated\n"));
-        } else {
-            constexpr auto mes = _("\n 闘技場: %d回戦で%sの前に敗北\n", "\n Arena: Defeated by %s in the %d%s fight\n");
-            const auto &arena = arena_info[-1 - arena_number];
-            const auto &arena_monrace = monraces_info[arena.r_idx];
+        if (arena_number == ARENA_DEFEATED_OLD_VER) {
+            fprintf(fff, _("\n 闘技場: 敗北\n\n", "\n Arena: Defeated\n\n"));
+            return;
+        }
+
+        constexpr auto fmt = _("\n 闘技場: %d回戦で%sの前に敗北\n", "\n Arena: Defeated by %s in the %d%s fight\n");
+        const auto &arena = arena_info[-1 - arena_number];
+        const auto &arena_monrace = monraces_info[arena.r_idx];
 #ifdef JP
-            fprintf(fff, mes, -arena_number, arena_monrace.name.data());
+        fprintf(fff, fmt, -arena_number, arena_monrace.name.data());
 #else
-            fprintf(fff, mes, arena_monrace.name.data(), -arena_number, get_ordinal_number_suffix(-arena_number).data());
+        fprintf(fff, fmt, arena_monrace.name.data(), -arena_number, get_ordinal_number_suffix(-arena_number).data());
 #endif
-        }
-
         fprintf(fff, "\n");
         return;
     }
index 2b7acf4..d066e89 100644 (file)
@@ -1,5 +1,4 @@
 #include "load/player-info-loader.h"
-#include "cmd-building/cmd-building.h"
 #include "load/angband-version-comparer.h"
 #include "load/birth-loader.h"
 #include "load/dummy-loader.h"
@@ -10,6 +9,7 @@
 #include "load/player-class-specific-data-loader.h"
 #include "load/savedata-old-flag-types.h"
 #include "load/world-loader.h"
+#include "market/arena-entry.h"
 #include "market/arena.h"
 #include "monster-race/race-ability-flags.h"
 #include "mutation/mutation-calculator.h"
index 82da188..a9c1285 100644 (file)
@@ -1,6 +1,7 @@
 #pragma once
 
 #include "system/baseitem-info.h"
+#include "system/h-type.h"
 #include <vector>
 
 /*!
@@ -37,3 +38,5 @@ private:
 };
 
 extern const std::vector<ArenaMonsterEntry> arena_info;
+
+constexpr auto ARENA_DEFEATED_OLD_VER = -MAX_SHORT; /*<! 旧バージョンの闘技場敗北定義 */