aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/saveload.cpp
diff options
context:
space:
mode:
authorTravis Howell2007-05-20 08:30:43 +0000
committerTravis Howell2007-05-20 08:30:43 +0000
commit11f2d4052a9cfca3414fbaec514930123b434928 (patch)
tree52506aa1838ea9ff22800e3fe7d99469643a62d5 /engines/agos/saveload.cpp
parent4a40ecb4dfe21c4e52ec5d73183369c365a5a62c (diff)
downloadscummvm-rg350-11f2d4052a9cfca3414fbaec514930123b434928.tar.gz
scummvm-rg350-11f2d4052a9cfca3414fbaec514930123b434928.tar.bz2
scummvm-rg350-11f2d4052a9cfca3414fbaec514930123b434928.zip
Update quick load code for Elvira 1/2 and Waxworks, based on original scripts.
svn-id: r26884
Diffstat (limited to 'engines/agos/saveload.cpp')
-rw-r--r--engines/agos/saveload.cpp31
1 files changed, 26 insertions, 5 deletions
diff --git a/engines/agos/saveload.cpp b/engines/agos/saveload.cpp
index 40205ea53a..fca7fe2c01 100644
--- a/engines/agos/saveload.cpp
+++ b/engines/agos/saveload.cpp
@@ -146,15 +146,36 @@ void AGOSEngine::quickLoadOrSave() {
success = loadGame(genSaveName(_saveLoadSlot));
if (!success) {
sprintf(buf, "Failed to load game state to file:\n\n%s", filename);
- } else {
- // Redraw Inventory
- mouseOff();
+ } else if (getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) {
drawIconArray(2, me(), 0, 0);
- mouseOn();
- // Reset engine?
setBitFlag(97, true);
sub = getSubroutineByID(100);
startSubroutine(sub);
+ } else if (getGameType() == GType_WW) {
+ sub = getSubroutineByID(66);
+ startSubroutine(sub);
+ } else if (getGameType() == GType_ELVIRA2) {
+ sub = getSubroutineByID(87);
+ startSubroutine(sub);
+ setBitFlag(7, false);
+ sub = getSubroutineByID(19);
+ startSubroutine(sub);
+ //oe2_printStats();
+ sub = getSubroutineByID(28);
+ startSubroutine(sub);
+ setBitFlag(17, false);
+ sub = getSubroutineByID(207);
+ startSubroutine(sub);
+ sub = getSubroutineByID(71);
+ startSubroutine(sub);
+ } else if (getGameType() == GType_ELVIRA1) {
+ drawIconArray(2, me(), 0, 0);
+ sub = getSubroutineByID(265);
+ startSubroutine(sub);
+ sub = getSubroutineByID(129);
+ startSubroutine(sub);
+ sub = getSubroutineByID(131);
+ startSubroutine(sub);
}
} else {
success = saveGame(_saveLoadSlot, _saveLoadName);