aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/script_e2.cpp
diff options
context:
space:
mode:
authorTravis Howell2007-06-07 09:37:22 +0000
committerTravis Howell2007-06-07 09:37:22 +0000
commit3f819b90852bc7f64faeff0f3d7585d55285a0f5 (patch)
treeb42bb6a30fd2439cc98cfa05c94d1ff772b3b76f /engines/agos/script_e2.cpp
parent6db23fa056dd2bebb2821ac0f130f1141a9c48a0 (diff)
downloadscummvm-rg350-3f819b90852bc7f64faeff0f3d7585d55285a0f5.tar.gz
scummvm-rg350-3f819b90852bc7f64faeff0f3d7585d55285a0f5.tar.bz2
scummvm-rg350-3f819b90852bc7f64faeff0f3d7585d55285a0f5.zip
Add details for French and German Amiga versions of Elvira 1. Remove restart state from Elvira 1 detection, due to two byte difference in the restart state on each disk of Amiga versions.
svn-id: r27164
Diffstat (limited to 'engines/agos/script_e2.cpp')
-rw-r--r--engines/agos/script_e2.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/agos/script_e2.cpp b/engines/agos/script_e2.cpp
index 13cb15a8b9..8251510fac 100644
--- a/engines/agos/script_e2.cpp
+++ b/engines/agos/script_e2.cpp
@@ -145,7 +145,7 @@ void AGOSEngine_Elvira2::setupOpcodes() {
OPCODE(o_comment),
/* 88 */
OPCODE(o_invalid),
- OPCODE(oe1_loadGame),
+ OPCODE(oe2_loadGame),
OPCODE(o_getParent),
OPCODE(o_getNext),
/* 92 */
@@ -315,6 +315,17 @@ void AGOSEngine_Elvira2::oe2_pObj() {
showMessageFormat("%s\n", (const char *)getStringPtrByID(subObject->objectFlagValue[0])); // Difference
}
+void AGOSEngine_Elvira2::oe2_loadGame() {
+ // 89: load game
+ uint16 stringId = getNextStringID();
+
+ if (!scumm_stricmp(getFileName(GAME_RESTFILE), (const char *)getStringPtrByID(stringId))) {
+ loadGame(getFileName(GAME_RESTFILE), true);
+ } else {
+ loadGame((const char *)getStringPtrByID(stringId));
+ }
+}
+
void AGOSEngine_Elvira2::oe2_drawItem() {
// 113: draw item
Item *i = getNextItemPtr();