diff options
-rw-r--r-- | engines/scumm/intern.h | 2 | ||||
-rw-r--r-- | engines/scumm/script_c64.cpp | 11 |
2 files changed, 7 insertions, 6 deletions
diff --git a/engines/scumm/intern.h b/engines/scumm/intern.h index 1845287532..e24ee432b5 100644 --- a/engines/scumm/intern.h +++ b/engines/scumm/intern.h @@ -442,6 +442,7 @@ protected: void o_animateActor(); void o_putActorAtObject(); void o_pickupObject(); + void o_setObjectName(); void o_lockSound(); void o_lockCostume(); void o_loadCostume(); @@ -455,7 +456,6 @@ protected: void o_unlockCostume(); void o_unlockScript(); void o_decrement(); - void o_badOpcode(); void o_nop(); void o_getActorBitVar(); void o_setActorBitVar(); diff --git a/engines/scumm/script_c64.cpp b/engines/scumm/script_c64.cpp index ccea16e48c..eee67df259 100644 --- a/engines/scumm/script_c64.cpp +++ b/engines/scumm/script_c64.cpp @@ -141,7 +141,7 @@ void ScummEngine_c64::setupOpcodes() { OPCODE(o5_actorFollowCamera), OPCODE(o_lockSound), /* 54 */ - OPCODE(o5_setObjectName), + OPCODE(o_setObjectName), OPCODE(o5_walkActorToActor), OPCODE(o_getActorMoving), OPCODE(o_clearState08), @@ -203,7 +203,7 @@ void ScummEngine_c64::setupOpcodes() { /* 84 */ OPCODE(o_isGreaterEqual), OPCODE(o_stopCurrentScript), - OPCODE(o_badOpcode), + OPCODE(o_nop), OPCODE(o5_getActorRoom), /* 88 */ OPCODE(o_isNotEqual), @@ -301,7 +301,7 @@ void ScummEngine_c64::setupOpcodes() { OPCODE(o5_actorFollowCamera), OPCODE(o_unlockSound), /* D4 */ - OPCODE(o5_setObjectName), + OPCODE(o_setObjectName), OPCODE(o2_actorFromPos), OPCODE(o_getActorMoving), OPCODE(o_setState08), @@ -770,8 +770,9 @@ void ScummEngine_c64::o_pickupObject() { runInventoryScript(1); } -void ScummEngine_c64::o_badOpcode() { - warning("Bad opcode 0x86 encountered"); +void ScummEngine_c64::o_setObjectName() { + int obj = fetchScriptByte(); + setObjectName(obj); } void ScummEngine_c64::o_nop() { |