aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Brown2003-04-23 05:13:26 +0000
committerJames Brown2003-04-23 05:13:26 +0000
commitf996cd5987a77d75b07c2d368f670c982675f9e5 (patch)
treef1a28a3a9e5200b4820d721d0d9a5c7f21daf7b7
parent8fdcf48fc52924711f9c5d3ed04e4dedf030665c (diff)
downloadscummvm-rg350-f996cd5987a77d75b07c2d368f670c982675f9e5.tar.gz
scummvm-rg350-f996cd5987a77d75b07c2d368f670c982675f9e5.tar.bz2
scummvm-rg350-f996cd5987a77d75b07c2d368f670c982675f9e5.zip
Some more V2 fixes for Zak
svn-id: r7084
-rw-r--r--scumm/intern.h2
-rw-r--r--scumm/script_v2.cpp13
2 files changed, 10 insertions, 5 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index 69dc788bf9..981849d41a 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -251,7 +251,7 @@ protected:
void o2_isNotEqual();
void o2_equalZero();
void o2_notEqualZero();
-
+ void o2_startScript();
};
class Scumm_v4 : public Scumm_v3 {
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 8d6eb1d487..ef8aeab486 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -115,7 +115,7 @@ void Scumm_v2::setupOpcodes() {
/* 40 */
OPCODE(o5_cutscene),
OPCODE(o2_putActor),
- OPCODE(o5_startScript),
+ OPCODE(o2_startScript),
OPCODE(o5_getActorX),
/* 44 */
OPCODE(o2_isLess),
@@ -143,7 +143,7 @@ void Scumm_v2::setupOpcodes() {
OPCODE(o5_getActorMoving),
OPCODE(o2_setState02),
/* 58 */
- OPCODE(o5_overRide),
+ OPCODE(beginOverride),
OPCODE(o5_doSentence),
OPCODE(o5_add),
OPCODE(o2_setBitVar),
@@ -191,7 +191,7 @@ void Scumm_v2::setupOpcodes() {
OPCODE(o5_isSoundRunning),
OPCODE(o5_getActorElevation),
OPCODE(o2_walkActorTo),
- OPCODE(o5_drawBox),
+ OPCODE(o2_ifNotState01),
/* 80 */
OPCODE(o5_breakHere),
OPCODE(o2_putActor),
@@ -275,7 +275,7 @@ void Scumm_v2::setupOpcodes() {
/* C0 */
OPCODE(o5_endCutscene),
OPCODE(o2_putActor),
- OPCODE(o5_startScript),
+ OPCODE(o2_startScript),
OPCODE(o5_getActorX),
/* C4 */
OPCODE(o2_isLess),
@@ -904,3 +904,8 @@ void Scumm_v2::o2_putActor() {
a->putActor(x, y, a->room);
}
+
+void Scumm_v2::o2_startScript() {
+ int script = getVarOrDirectByte(0x80);
+ runScript(script, 0, 0, 0); // FIXME: Need to confirm runScript parameters/mode
+}