From 5b7157e3c9c8809b20171e1bfb5170847944759c Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Sun, 4 Jul 2004 12:06:17 +0000 Subject: [PATCH] Match disasm., applies to The Dig too. svn-id: r14167 --- scumm/intern.h | 1 - scumm/script_v6.cpp | 11 +++++++++++ scumm/script_v8.cpp | 15 +-------------- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/scumm/intern.h b/scumm/intern.h index 3cfb92acba3..63399b1303a 100644 --- a/scumm/intern.h +++ b/scumm/intern.h @@ -682,7 +682,6 @@ protected: void o8_blastText(); void o8_cursorCommand(); - void o8_createBoxMatrix(); void o8_resourceRoutines(); void o8_roomOps(); void o8_actorOps(); diff --git a/scumm/script_v6.cpp b/scumm/script_v6.cpp index b18e4af726e..9242f0eadaa 100644 --- a/scumm/script_v6.cpp +++ b/scumm/script_v6.cpp @@ -1465,7 +1465,18 @@ void ScummEngine_v6::o6_setBoxFlags() { } void ScummEngine_v6::o6_createBoxMatrix() { + int i; + Actor *a; + createBoxMatrix(); + + if ((_gameId == GID_DIG) || (_gameId == GID_CMI)) { + for (i = 1; i < _numActors; i++) { + a = &_actors[i]; + if (a && a->isInCurrentRoom()) + a->putActor(a->_pos.x, a->_pos.y, _currentRoom); + } + } } void ScummEngine_v6::o6_resourceRoutines() { diff --git a/scumm/script_v8.cpp b/scumm/script_v8.cpp index 3a3b4a8fb65..27f2cc00936 100644 --- a/scumm/script_v8.cpp +++ b/scumm/script_v8.cpp @@ -251,7 +251,7 @@ void ScummEngine_v8::setupOpcodes() { OPCODE(o6_pickupObject), OPCODE(o6_setBoxFlags), /* A8 */ - OPCODE(o8_createBoxMatrix), + OPCODE(o6_createBoxMatrix), OPCODE(o6_invalid), OPCODE(o8_resourceRoutines), OPCODE(o8_roomOps), @@ -779,19 +779,6 @@ void ScummEngine_v8::o8_cursorCommand() { VAR(VAR_USERPUT) = _userPut; } -void ScummEngine_v8::o8_createBoxMatrix() { - int i; - Actor *a; - - createBoxMatrix(); - - for (i = 1; i < _numActors; i++) { - a = &_actors[i]; - if (a && a->isInCurrentRoom()) - a->adjustActorPos(); - } -} - void ScummEngine_v8::o8_resourceRoutines() { byte subOp = fetchScriptByte(); int resid = pop();