aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scumm/script_v5.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/scumm/script_v5.cpp b/scumm/script_v5.cpp
index 19b287c1ae..fdeb6ba936 100644
--- a/scumm/script_v5.cpp
+++ b/scumm/script_v5.cpp
@@ -986,7 +986,7 @@ void Scumm_v5::o5_getActorX() {
int a;
getResultPos();
- if ((_gameId == GID_INDY3_256) || (_gameId == GID_INDY3))
+ if (_gameId == GID_INDY3_256 || _gameId == GID_INDY3)
a = getVarOrDirectByte(0x80);
else
a = getVarOrDirectWord(0x80);
@@ -998,9 +998,7 @@ void Scumm_v5::o5_getActorY() {
int a;
getResultPos();
- if (_gameId == GID_INDY3)
- a = getVarOrDirectByte(0x80);
- else if (_gameId == GID_INDY3_256) {
+ if (_gameId == GID_INDY3_256 || _gameId == GID_INDY3) {
a = getVarOrDirectByte(0x80);
// Indy3 hack to cheat the 'Leap of Faith' grail test
@@ -1009,10 +1007,12 @@ void Scumm_v5::o5_getActorY() {
setResult(94);
return;
}
- setResult(getObjY(a) - 1); // FIXME: Is this right, or can it be less specific?
- // It's here to fix bug 636433 in specific, the actors
- // are one pixel off what the script waits for.
- return;
+
+ // Hack to fix bug 636433 (can't get into Zeppelin)
+ if (_roomResource == 36) {
+ setResult(getObjY(a) - 1);
+ return;
+ }
} else
a = getVarOrDirectWord(0x80);