diff options
author | Max Horn | 2006-10-04 20:22:47 +0000 |
---|---|---|
committer | Max Horn | 2006-10-04 20:22:47 +0000 |
commit | 98f62b9e65ad771cfa1993ac5da492650281f55f (patch) | |
tree | 30865bfa3eb116552f3f0e6adacd2b2e037d4fc9 | |
parent | f7eee205bb6133fb5a65d95c12caa31e1a26d272 (diff) | |
download | scummvm-rg350-98f62b9e65ad771cfa1993ac5da492650281f55f.tar.gz scummvm-rg350-98f62b9e65ad771cfa1993ac5da492650281f55f.tar.bz2 scummvm-rg350-98f62b9e65ad771cfa1993ac5da492650281f55f.zip |
WORKAROUND bug #859513 (ZAK: "Oxygene-bug" on Mars)
svn-id: r24116
-rw-r--r-- | engines/scumm/script_v5.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp index fdc73edac3..b9389f226c 100644 --- a/engines/scumm/script_v5.cpp +++ b/engines/scumm/script_v5.cpp @@ -587,6 +587,18 @@ void ScummEngine_v5::o5_animateActor() { return; } + // WORKAROUND bug #859513: While on mars, going outside without your helmet + // (or missing some other part of your "space suite" will cause your + // character to complain ("I can't breathe."). Unfortunately, this is + // coupled with an animate command, making it very difficult to return to + // safety (from where you came). The following hack works around this by + // ignoring that particular turn command. + if (_game.id == GID_ZAK && _currentRoom == 182 && anim == 246 && + ((_game.version < 3 && vm.slot[_currentScript].number == 82) + || (_game.version == 3 && vm.slot[_currentScript].number == 131))) { + return; + } + Actor *a = derefActor(act, "o5_animateActor"); a->animateActor(anim); } |