aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/saveload.cpp
diff options
context:
space:
mode:
authorTravis Howell2007-05-27 11:32:19 +0000
committerTravis Howell2007-05-27 11:32:19 +0000
commit7d8619350f70f6ca82970b8a12ae0d35c0dacca2 (patch)
treeb3b73f1d2dcdbde7d12651e0f3e5463006220226 /engines/agos/saveload.cpp
parentc42c65686e3d2783be960181f23a876ed2389114 (diff)
downloadscummvm-rg350-7d8619350f70f6ca82970b8a12ae0d35c0dacca2.tar.gz
scummvm-rg350-7d8619350f70f6ca82970b8a12ae0d35c0dacca2.tar.bz2
scummvm-rg350-7d8619350f70f6ca82970b8a12ae0d35c0dacca2.zip
Fix loading restart state in Waxworks for now.
svn-id: r26966
Diffstat (limited to 'engines/agos/saveload.cpp')
-rw-r--r--engines/agos/saveload.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/engines/agos/saveload.cpp b/engines/agos/saveload.cpp
index bb4bf6e294..8af398c859 100644
--- a/engines/agos/saveload.cpp
+++ b/engines/agos/saveload.cpp
@@ -980,6 +980,14 @@ bool AGOSEngine_Elvira2::loadGame(const char *filename, bool restartMode) {
addTimeEvent(timeout, subroutine_id);
}
+ if (getGameType() == GType_WW) {
+ // TODO Load room state data
+ for (uint s = 0; s <= _numRoomStates; s++) {
+ f->readUint16BE();
+ }
+ f->readUint16BE();
+ }
+
item_index = 1;
for (num = _itemArrayInited - 1; num; num--) {
Item *item = _itemArrayPtr[item_index++], *parent_item;
@@ -1120,6 +1128,14 @@ bool AGOSEngine_Elvira2::saveGame(uint slot, const char *caption) {
f->writeUint16BE(te->subroutine_id);
}
+ if (getGameType() == GType_WW) {
+ // TODO Save room state data
+ for (uint s = 0; s <= _numRoomStates; s++) {
+ f->writeUint16BE(0);
+ }
+ f->writeUint16BE(_currentRoom);
+ }
+
item_index = 1;
for (num_item = _itemArrayInited - 1; num_item; num_item--) {
Item *item = _itemArrayPtr[item_index++];