diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-09-14 14:40:44 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-09-14 14:40:44 +0000 |
commit | 85d6ca986365df62d39e76ded8065a0496089205 (patch) | |
tree | 1cf816c5c84592ab25761ba7ad4635f738eb15bb /crawl-ref/source/files.cc | |
parent | c878d68b32a75909ef98ca6f8eb4b55ba4d6f1cf (diff) | |
download | crawl-ref-85d6ca986365df62d39e76ded8065a0496089205.tar.gz crawl-ref-85d6ca986365df62d39e76ded8065a0496089205.zip |
FR 1969858: Store message history across saves.
Spin-off from BR 2085502: Don't autoswap weapons if a monster turns
invisible.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6924 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/files.cc')
-rw-r--r-- | crawl-ref/source/files.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/crawl-ref/source/files.cc b/crawl-ref/source/files.cc index 183ab171a5..ec7a0169d6 100644 --- a/crawl-ref/source/files.cc +++ b/crawl-ref/source/files.cc @@ -1442,6 +1442,17 @@ void save_game(bool leave_game, const char *farewellmsg) DO_CHMOD_PRIVATE(tutorFile.c_str()); } + /* messages */ + std::string msgFile = get_savedir_filename(you.your_name, "", "msg"); + FILE *msgf = fopen(msgFile.c_str(), "wb"); + if (msgf) + { + writer outf(msgf); + save_messages(outf); + fclose(msgf); + DO_CHMOD_PRIVATE(msgFile.c_str()); + } + std::string charFile = get_savedir_filename(you.your_name, "", "sav"); FILE *charf = fopen(charFile.c_str(), "wb"); if (!charf) @@ -1635,6 +1646,16 @@ void restore_game(void) load_tutorial(inf); fclose(tutorf); } + + /* messages */ + std::string msgFile = get_savedir_filename(you.your_name, "", "msg"); + FILE *msgf = fopen(msgFile.c_str(), "rb"); + if (msgf) + { + reader inf(msgf); + load_messages(inf); + fclose(msgf); + } } static void _restore_level(const level_id &original) |