summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/files.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-09-14 14:40:44 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2008-09-14 14:40:44 +0000
commit85d6ca986365df62d39e76ded8065a0496089205 (patch)
tree1cf816c5c84592ab25761ba7ad4635f738eb15bb /crawl-ref/source/files.cc
parentc878d68b32a75909ef98ca6f8eb4b55ba4d6f1cf (diff)
downloadcrawl-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.cc21
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)