aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2008-07-14 10:33:57 +0000
committerPaul Gilbert2008-07-14 10:33:57 +0000
commiteaeb1587f408e540a1449d4b035e794e65937220 (patch)
treee4a704154dfca1f0370991fde253750fdba33780
parent0860df5d0e42fa8f9059b7f3c212bf3487a2f754 (diff)
downloadscummvm-rg350-eaeb1587f408e540a1449d4b035e794e65937220.tar.gz
scummvm-rg350-eaeb1587f408e540a1449d4b035e794e65937220.tar.bz2
scummvm-rg350-eaeb1587f408e540a1449d4b035e794e65937220.zip
Fix for missing data in the savegame format that could result in not being able to talk to Goewin in the apothecary after restoring a savegame
svn-id: r33057
-rw-r--r--engines/lure/luredefs.h2
-rw-r--r--engines/lure/res_struct.cpp6
2 files changed, 7 insertions, 1 deletions
diff --git a/engines/lure/luredefs.h b/engines/lure/luredefs.h
index 603102a099..922e1207d0 100644
--- a/engines/lure/luredefs.h
+++ b/engines/lure/luredefs.h
@@ -36,7 +36,7 @@ namespace Lure {
#define LURE_DAT_MAJOR 1
#define LURE_DAT_MINOR 29
#define LURE_MIN_SAVEGAME_MINOR 25
-#define LURE_SAVEGAME_MINOR 32
+#define LURE_SAVEGAME_MINOR 33
#define LURE_DEBUG 1
diff --git a/engines/lure/res_struct.cpp b/engines/lure/res_struct.cpp
index de09f982d1..92cea948f9 100644
--- a/engines/lure/res_struct.cpp
+++ b/engines/lure/res_struct.cpp
@@ -456,6 +456,8 @@ void HotspotData::saveToStream(WriteStream *stream) {
stream->writeSint16LE(startY);
stream->writeUint16LE(roomNumber);
stream->writeByte(layer);
+ stream->writeUint16LE(walkX);
+ stream->writeUint16LE(walkY);
stream->writeUint16LE(width);
stream->writeUint16LE(height);
@@ -503,6 +505,10 @@ void HotspotData::loadFromStream(ReadStream *stream) {
uint8 saveVersion = LureEngine::getReference().saveVersion();
if (saveVersion >= 29)
layer = stream->readByte();
+ if (saveVersion >= 33) {
+ walkX = stream->readUint16LE();
+ walkY = stream->readUint16LE();
+ }
width = stream->readUint16LE();
height = stream->readUint16LE();