aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v7he.cpp
diff options
context:
space:
mode:
authorTravis Howell2004-06-24 15:13:00 +0000
committerTravis Howell2004-06-24 15:13:00 +0000
commit08cebae47298a15895fc35e8755dd5bfa85ff6eb (patch)
tree2de67b58f8e84a40a797300a1d5b2ca0d0606289 /scumm/script_v7he.cpp
parentd6cfe9a5e90ffc6697e8ac621e93e309ea0fa034 (diff)
downloadscummvm-rg350-08cebae47298a15895fc35e8755dd5bfa85ff6eb.tar.gz
scummvm-rg350-08cebae47298a15895fc35e8755dd5bfa85ff6eb.tar.bz2
scummvm-rg350-08cebae47298a15895fc35e8755dd5bfa85ff6eb.zip
Add some more HE7 differences.
svn-id: r14032
Diffstat (limited to 'scumm/script_v7he.cpp')
-rw-r--r--scumm/script_v7he.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/scumm/script_v7he.cpp b/scumm/script_v7he.cpp
index 7fb712c5a9..63cebc892d 100644
--- a/scumm/script_v7he.cpp
+++ b/scumm/script_v7he.cpp
@@ -226,7 +226,7 @@ void ScummEngine_v7he::setupOpcodes() {
OPCODE(o6_getActorMoving),
OPCODE(o6_isScriptRunning),
/* 8C */
- OPCODE(o6_getActorRoom),
+ OPCODE(o7_getActorRoom),
OPCODE(o6_getObjectX),
OPCODE(o6_getObjectY),
OPCODE(o6_getObjectOldDir),
@@ -243,7 +243,7 @@ void ScummEngine_v7he::setupOpcodes() {
/* 98 */
OPCODE(o6_isSoundRunning),
OPCODE(o6_setBoxFlags),
- OPCODE(o6_createBoxMatrix),
+ OPCODE(o6_invalid),
OPCODE(o6_resourceRoutines),
/* 9C */
OPCODE(o6_roomOps),
@@ -645,6 +645,16 @@ void ScummEngine_v7he::o7_pickupObject() {
}
+void ScummEngine_v7he::o7_getActorRoom() {
+ int act = pop();
+
+ if (act < _numActors) {
+ Actor *a = derefActor(act, "o7_getActorRoom");
+ push(a->room);
+ } else
+ push(getObjectRoom(act));
+}
+
void ScummEngine_v7he::o7_startSound() {
byte op;
op = fetchScriptByte();