OSDN Git Service

[Refactor] #40467 Separated set_zangband_realm() from extra-loader.c to load-zangband.c/h
authorHourier <hourier@users.sourceforge.jp>
Sun, 5 Jul 2020 03:02:58 +0000 (12:02 +0900)
committerHourier <hourier@users.sourceforge.jp>
Sun, 5 Jul 2020 03:02:58 +0000 (12:02 +0900)
src/savedata/extra-loader.c
src/savedata/load-zangband.c
src/savedata/load-zangband.h

index a80477e..45c9070 100644 (file)
@@ -1,4 +1,11 @@
-#include "savedata/extra-loader.h"
+/*!
+ * todo 「その他」が雑多すぎて肥大化している。今後の課題として分割を検討する
+ * @brief その他の情報を読み込む処理
+ * @date 2020/07/05
+ * @author Hourier
+ */
+
+#include "savedata/extra-loader.h"
 #include "cmd-building/cmd-building.h"
 #include "dungeon/dungeon.h"
 #include "floor/floor.h"
@@ -14,6 +21,7 @@
 #include "player/special-defense-types.h"
 #include "realm/realm-types.h"
 #include "savedata/angband-version-comparer.h"
+#include "savedata/load-zangband.h"
 #include "savedata/birth-loader.h"
 #include "savedata/load-util.h"
 #include "savedata/monster-loader.h"
@@ -57,16 +65,8 @@ void rd_extra(player_type *creature_ptr)
     creature_ptr->realm2 = (REALM_IDX)tmp8u;
 
     rd_byte(&tmp8u);
-    if (z_older_than(10, 4, 4)) {
-        if (creature_ptr->realm1 == 9)
-            creature_ptr->realm1 = REALM_MUSIC;
-        if (creature_ptr->realm2 == 9)
-            creature_ptr->realm2 = REALM_MUSIC;
-        if (creature_ptr->realm1 == 10)
-            creature_ptr->realm1 = REALM_HISSATSU;
-        if (creature_ptr->realm2 == 10)
-            creature_ptr->realm2 = REALM_HISSATSU;
-    }
+    if (z_older_than(10, 4, 4))
+        set_zangband_realm(creature_ptr);
 
     rd_byte(&tmp8u);
     creature_ptr->hitdie = tmp8u;
index 5987caa..97fc453 100644 (file)
@@ -1,5 +1,6 @@
 #include "savedata/load-zangband.h"
 #include "game-option/option-flags.h"
+#include "realm/realm-types.h"
 
 void load_zangband_options(void)
 {
@@ -48,3 +49,18 @@ void load_zangband_options(void)
     else
         option_flag[5] |= (0x00000001 << 3);
 }
+
+void set_zangband_realm(player_type* creature_ptr)
+{
+    if (creature_ptr->realm1 == 9)
+        creature_ptr->realm1 = REALM_MUSIC;
+
+    if (creature_ptr->realm2 == 9)
+        creature_ptr->realm2 = REALM_MUSIC;
+
+    if (creature_ptr->realm1 == 10)
+        creature_ptr->realm1 = REALM_HISSATSU;
+
+    if (creature_ptr->realm2 == 10)
+        creature_ptr->realm2 = REALM_HISSATSU;
+}
index fc5f116..11ae27d 100644 (file)
@@ -1,3 +1,6 @@
 #pragma once
 
+#include "system/angband.h"
+
 void load_zangband_options(void);
+void set_zangband_realm(player_type *player_ptr);