aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scumm/intern.h1
-rw-r--r--scumm/script_c64.cpp9
2 files changed, 8 insertions, 2 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index af19d825d2..aba640f23a 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -410,6 +410,7 @@ protected:
void o_unknown53();
void o_cursorCommand();
void o_lights();
+ void o_getObjectOwner();
void o_subtract();
};
diff --git a/scumm/script_c64.cpp b/scumm/script_c64.cpp
index 9a0570b97d..8cf9682b6b 100644
--- a/scumm/script_c64.cpp
+++ b/scumm/script_c64.cpp
@@ -179,7 +179,7 @@ void ScummEngine_c64::setupOpcodes() {
OPCODE(o_lights),
OPCODE(o5_getActorCostume),
OPCODE(o5_loadRoom),
- OPCODE(o2_roomOps),
+ OPCODE(o_getObjectOwner),
/* 74 */
OPCODE(o5_getDist),
OPCODE(o2_findObject),
@@ -339,7 +339,7 @@ void ScummEngine_c64::setupOpcodes() {
OPCODE(o2_lights),
OPCODE(o5_getActorCostume),
OPCODE(o5_loadRoom),
- OPCODE(o2_roomOps),
+ OPCODE(o_getObjectOwner),
/* F4 */
OPCODE(o5_getDist),
OPCODE(o2_findObject),
@@ -470,6 +470,11 @@ void ScummEngine_c64::o_lights() {
_fullRedraw = 1;
}
+void ScummEngine_c64::o_getObjectOwner() {
+ getResultPos();
+ setResult(getOwner(getVarOrDirectByte(PARAM_1)));
+}
+
void ScummEngine_c64::o_subtract() {
int a;
getResultPos();