<ClCompile Include="..\..\src\savedata\lore-loader.c" />\r
<ClCompile Include="..\..\src\savedata\monster-loader.c" />\r
<ClCompile Include="..\..\src\savedata\option-loader.c" />\r
+ <ClCompile Include="..\..\src\savedata\player-info-loader.c" />\r
<ClCompile Include="..\..\src\savedata\store-loader.c" />\r
<ClCompile Include="..\..\src\specific-object\death-crimson.c" />\r
<ClCompile Include="..\..\src\spell-kind\blood-curse.c" />\r
<ClInclude Include="..\..\src\savedata\monster-loader.h" />\r
<ClInclude Include="..\..\src\savedata\old-feature-types.h" />\r
<ClInclude Include="..\..\src\savedata\option-loader.h" />\r
+ <ClInclude Include="..\..\src\savedata\player-info-loader.h" />\r
<ClInclude Include="..\..\src\savedata\savedata-flag-types.h" />\r
<ClInclude Include="..\..\src\savedata\store-loader.h" />\r
<ClInclude Include="..\..\src\specific-object\death-crimson.h" />\r
<ClCompile Include="..\..\src\savedata\load-v1-7-0.c">
<Filter>savedata</Filter>
</ClCompile>
+ <ClCompile Include="..\..\src\savedata\player-info-loader.c">
+ <Filter>savedata</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\src\cmd\cmd-basic.h">
<ClInclude Include="..\..\src\savedata\load-v1-7-0.h">
<Filter>savedata</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\savedata\player-info-loader.h">
+ <Filter>savedata</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\src\wall.bmp" />
savedata/load.c savedata/load.h \
savedata/lore-loader.c savedata/lore-loader.h \
savedata/option-loader.c savedata/option-loader.h \
+ savedata/player-info-loader.c savedata/player-info-loader.h \
savedata/savedata-flag-types.h \
savedata/save.c savedata/save.h \
savedata/store-loader.c savedata/store-loader.h \
}
}
-static void rd_base_info(player_type *creature_ptr)
-{
- rd_string(creature_ptr->name, sizeof(creature_ptr->name));
- rd_string(creature_ptr->died_from, sizeof(creature_ptr->died_from));
- if (!h_older_than(1, 7, 0, 1)) {
- char buf[1024];
- rd_string(buf, sizeof buf);
- if (buf[0])
- creature_ptr->last_message = string_make(buf);
- }
-
- load_quick_start();
- const int max_history_lines = 4;
- for (int i = 0; i < max_history_lines; i++)
- rd_string(creature_ptr->history[i], sizeof(creature_ptr->history[i]));
-
- byte tmp8u;
- rd_byte(&tmp8u);
- creature_ptr->prace = (player_race_type)tmp8u;
-
- rd_byte(&tmp8u);
- creature_ptr->pclass = (player_class_type)tmp8u;
-
- rd_byte(&tmp8u);
- creature_ptr->pseikaku = (player_personality_type)tmp8u;
-
- rd_byte(&creature_ptr->psex);
- rd_byte(&tmp8u);
- creature_ptr->realm1 = (REALM_IDX)tmp8u;
-
- rd_byte(&tmp8u);
- creature_ptr->realm2 = (REALM_IDX)tmp8u;
-
- rd_byte(&tmp8u);
- if (z_older_than(10, 4, 4))
- set_zangband_realm(creature_ptr);
-
- rd_byte(&tmp8u);
- creature_ptr->hitdie = (DICE_SID)tmp8u;
- rd_u16b(&creature_ptr->expfact);
-
- rd_s16b(&creature_ptr->age);
- rd_s16b(&creature_ptr->ht);
- rd_s16b(&creature_ptr->wt);
-}
-
/*!
* @brief その他の情報を読み込む / Read the "extra" information
* @param creature_ptr プレーヤーへの参照ポインタ
*/
void rd_extra(player_type *creature_ptr)
{
- rd_base_info(creature_ptr);
rd_base_status(creature_ptr);
strip_bytes(24);
rd_s32b(&creature_ptr->au);
#include "savedata/monster-loader.h"
#include "savedata/old-feature-types.h"
#include "savedata/option-loader.h"
+#include "savedata/player-info-loader.h"
#include "savedata/save.h"
#include "savedata/savedata-flag-types.h"
#include "savedata/store-loader.h"
if (arg_fiddle)
load_note(_("伝説のアイテムをロードしました", "Loaded Artifacts"));
+ rd_base_info(creature_ptr);
rd_extra(creature_ptr);
if (creature_ptr->energy_need < -999)
creature_ptr->timewalk = TRUE;
--- /dev/null
+#include "savedata/player-info-loader.h"
+#include "savedata/angband-version-comparer.h"
+#include "savedata/birth-loader.h"
+#include "savedata/load-util.h"
+#include "savedata/load-zangband.h"
+
+void rd_base_info(player_type *creature_ptr)
+{
+ rd_string(creature_ptr->name, sizeof(creature_ptr->name));
+ rd_string(creature_ptr->died_from, sizeof(creature_ptr->died_from));
+ if (!h_older_than(1, 7, 0, 1)) {
+ char buf[1024];
+ rd_string(buf, sizeof buf);
+ if (buf[0])
+ creature_ptr->last_message = string_make(buf);
+ }
+
+ load_quick_start();
+ const int max_history_lines = 4;
+ for (int i = 0; i < max_history_lines; i++)
+ rd_string(creature_ptr->history[i], sizeof(creature_ptr->history[i]));
+
+ byte tmp8u;
+ rd_byte(&tmp8u);
+ creature_ptr->prace = (player_race_type)tmp8u;
+
+ rd_byte(&tmp8u);
+ creature_ptr->pclass = (player_class_type)tmp8u;
+
+ rd_byte(&tmp8u);
+ creature_ptr->pseikaku = (player_personality_type)tmp8u;
+
+ rd_byte(&creature_ptr->psex);
+ rd_byte(&tmp8u);
+ creature_ptr->realm1 = (REALM_IDX)tmp8u;
+
+ rd_byte(&tmp8u);
+ creature_ptr->realm2 = (REALM_IDX)tmp8u;
+
+ rd_byte(&tmp8u);
+ if (z_older_than(10, 4, 4))
+ set_zangband_realm(creature_ptr);
+
+ rd_byte(&tmp8u);
+ creature_ptr->hitdie = (DICE_SID)tmp8u;
+ rd_u16b(&creature_ptr->expfact);
+
+ rd_s16b(&creature_ptr->age);
+ rd_s16b(&creature_ptr->ht);
+ rd_s16b(&creature_ptr->wt);
+}
--- /dev/null
+#pragma once
+
+#include "system/angband.h"
+
+void rd_base_info(player_type *creature_ptr);