aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Howell2004-09-09 14:07:51 +0000
committerTravis Howell2004-09-09 14:07:51 +0000
commit655728fe7d40a114913e68681ba747b887039d73 (patch)
treef418f78130368c457ae465ab3c7dd40d0f3a8a32
parent9eb69ed03ad2dd635498467e5ec10bfcdbc6fcd1 (diff)
downloadscummvm-rg350-655728fe7d40a114913e68681ba747b887039d73.tar.gz
scummvm-rg350-655728fe7d40a114913e68681ba747b887039d73.tar.bz2
scummvm-rg350-655728fe7d40a114913e68681ba747b887039d73.zip
Change needed for HE 71 too.
svn-id: r14984
-rw-r--r--scumm/intern.h1
-rw-r--r--scumm/script_v72he.cpp15
-rw-r--r--scumm/script_v7he.cpp10
-rw-r--r--scumm/script_v80he.cpp2
-rw-r--r--scumm/script_v90he.cpp2
5 files changed, 9 insertions, 21 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index ada0d10d19..bc3e17c8bf 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -731,7 +731,6 @@ protected:
void o72_printWizImage();
void o72_getArrayDimSize();
void o72_getNumFreeArrays();
- void o72_pickupObject();
void o72_actorOps();
void o72_verbOps();
void o72_arrayOps();
diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp
index 083ebe190a..a460d7e9d3 100644
--- a/scumm/script_v72he.cpp
+++ b/scumm/script_v72he.cpp
@@ -210,7 +210,7 @@ void ScummEngine_v72he::setupOpcodes() {
OPCODE(o6_animateActor),
OPCODE(o6_doSentence),
/* 84 */
- OPCODE(o72_pickupObject),
+ OPCODE(o7_pickupObject),
OPCODE(o6_loadRoomWithEgo),
OPCODE(o6_invalid),
OPCODE(o6_getRandomNumber),
@@ -826,19 +826,6 @@ void ScummEngine_v72he::o72_getNumFreeArrays() {
push (num);
}
-void ScummEngine_v72he::o72_pickupObject() {
- int obj, room;
-
- room = pop();
- obj = pop();
- if (room == 0)
- room = getObjectRoom(obj);
-
- addObjectToInventory(obj, room);
- putOwner(obj, VAR(VAR_EGO));
- runInventoryScript(obj);
-}
-
void ScummEngine_v72he::o72_actorOps() {
Actor *a;
int i, j, k;
diff --git a/scumm/script_v7he.cpp b/scumm/script_v7he.cpp
index 1b2af19821..c9eadfe0e3 100644
--- a/scumm/script_v7he.cpp
+++ b/scumm/script_v7he.cpp
@@ -554,10 +554,12 @@ void ScummEngine_v7he::o7_pickupObject() {
addObjectToInventory(obj, room);
putOwner(obj, VAR(VAR_EGO));
- putClass(obj, kObjectClassUntouchable, 1);
- putState(obj, 1);
- markObjectRectAsDirty(obj);
- clearDrawObjectQueue();
+ if (_heversion <= 70) {
+ putClass(obj, kObjectClassUntouchable, 1);
+ putState(obj, 1);
+ markObjectRectAsDirty(obj);
+ clearDrawObjectQueue();
+ }
runInventoryScript(obj); /* Difference */
}
diff --git a/scumm/script_v80he.cpp b/scumm/script_v80he.cpp
index 9c18167b12..dca1598eae 100644
--- a/scumm/script_v80he.cpp
+++ b/scumm/script_v80he.cpp
@@ -210,7 +210,7 @@ void ScummEngine_v80he::setupOpcodes() {
OPCODE(o6_animateActor),
OPCODE(o6_doSentence),
/* 84 */
- OPCODE(o72_pickupObject),
+ OPCODE(o7_pickupObject),
OPCODE(o6_loadRoomWithEgo),
OPCODE(o6_invalid),
OPCODE(o6_getRandomNumber),
diff --git a/scumm/script_v90he.cpp b/scumm/script_v90he.cpp
index 0d6221b49b..6d98eadd51 100644
--- a/scumm/script_v90he.cpp
+++ b/scumm/script_v90he.cpp
@@ -210,7 +210,7 @@ void ScummEngine_v90he::setupOpcodes() {
OPCODE(o6_animateActor),
OPCODE(o6_doSentence),
/* 84 */
- OPCODE(o72_pickupObject),
+ OPCODE(o7_pickupObject),
OPCODE(o6_loadRoomWithEgo),
OPCODE(o6_invalid),
OPCODE(o6_getRandomNumber),