/*!
- * @brief プレイヤー構造体の内容を初期値で消去する / Clear all the global "character" data
+ * @brief プレイヤー構造体の内容を初期値で消去する(名前を除く) / Clear all the global "character" data (without name)
* @return なし
*/
-static void player_wipe(void)
+static void player_wipe_without_name(void)
{
int i;
+ player_type tmp;\r
+\r
+ /* Temporary copy for migration - written back later */\r
+ COPY(&tmp, p_ptr, player_type);\r
/* Hack -- free the "last message" string */
if (p_ptr->last_message) string_free(p_ptr->last_message);
dungeon_type = 0;
p_ptr->recall_dungeon = DUNGEON_GALGALS;
}
+\r
+ /* Data migration */\r
+ memcpy(p_ptr->name, tmp.name, sizeof(tmp.name));\r
}
wipe_m_list();
/* Wipe the player */
- player_wipe();
+ player_wipe_without_name();
/* Create a new character */
if (player_birth_aux()) break;
/* Wipe the player */
- player_wipe();
+ player_wipe_without_name();
}
}