aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/akos.cpp
diff options
context:
space:
mode:
authorSven Meier2018-06-17 17:08:27 +0200
committerAdrian Frühwirth2018-06-23 13:50:57 +0200
commit64c54591c356f41abe8df7de7afbd291279a99a5 (patch)
tree2dd64e4576b3487d43c8aca6bde48276bb07f798 /engines/scumm/akos.cpp
parent18fd6f603d3a4efff7db704ceac37571dc083d25 (diff)
downloadscummvm-rg350-64c54591c356f41abe8df7de7afbd291279a99a5.tar.gz
scummvm-rg350-64c54591c356f41abe8df7de7afbd291279a99a5.tar.bz2
scummvm-rg350-64c54591c356f41abe8df7de7afbd291279a99a5.zip
SCUMM: Workaround erroneous AKC_JUMP in German SPY Fox 3
Fixes Trac#3813 and makes this version of the game completable.
Diffstat (limited to 'engines/scumm/akos.cpp')
-rw-r--r--engines/scumm/akos.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/scumm/akos.cpp b/engines/scumm/akos.cpp
index 6d80315ccb..3d98a7b9b2 100644
--- a/engines/scumm/akos.cpp
+++ b/engines/scumm/akos.cpp
@@ -1632,6 +1632,15 @@ bool ScummEngine_v6::akos_increaseAnim(Actor *a, int chan, const byte *aksq, con
case AKC_Jump:
curpos = GUW(2);
+
+ // WORKAROUND bug #3813: In the German version of SPY Fox 3: Operation Ozone
+ // the wig maker room 21 contains a costume animation 352 of an LED ticker
+ // with a jump to an erroneous position 846.
+ // To prevent an undefined 'uSweat token' the animation is reset to its start.
+ if (_game.id == GID_HEGAME && _language == Common::DE_DEU && \
+ _currentRoom == 21 && a->_costume == 352 && curpos == 846) {
+ curpos = a->_cost.start[chan];
+ }
break;
case AKC_Return: