aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe/statesaver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/fullpipe/statesaver.cpp')
-rw-r--r--engines/fullpipe/statesaver.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/fullpipe/statesaver.cpp b/engines/fullpipe/statesaver.cpp
index d06bd9c593..942c07ae53 100644
--- a/engines/fullpipe/statesaver.cpp
+++ b/engines/fullpipe/statesaver.cpp
@@ -31,7 +31,7 @@
namespace Fullpipe {
-bool GameLoader::writeSavegame(Scene *sc, const char *fname) {
+bool GameLoader::writeSavegame(Scene *sc, const char *fname, const Common::String &description) {
GameVar *v = _gameVar->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME");
if (!v) {
@@ -146,6 +146,11 @@ bool GameLoader::writeSavegame(Scene *sc, const char *fname) {
saveFile->writeUint16LE(header2.time);
saveFile->writeUint32LE(header2.playtime);
+ // Added in save version 2
+ Common::String desc(description.c_str(), MIN(255u, description.size())); // Restrict description size
+ saveFile->writeByte(desc.size());
+ saveFile->writeString(desc);
+
g_fp->_currentScene->draw();
Graphics::saveThumbnail(*saveFile); // FIXME. Render proper screen