diff options
author | Thanasis Antoniou | 2019-05-05 14:30:06 +0300 |
---|---|---|
committer | Thanasis Antoniou | 2019-05-05 14:33:04 +0300 |
commit | 8787bbb39029ef6fc901ded8a09fba4215e03f79 (patch) | |
tree | b8987703920e0ac331f383b43d90e351ecf55373 /engines/bladerunner/script/ai | |
parent | f0420c9c8fe07d8d7d0fce5409fc9f4b1fc50d52 (diff) | |
download | scummvm-rg350-8787bbb39029ef6fc901ded8a09fba4215e03f79.tar.gz scummvm-rg350-8787bbb39029ef6fc901ded8a09fba4215e03f79.tar.bz2 scummvm-rg350-8787bbb39029ef6fc901ded8a09fba4215e03f79.zip |
BLADERUNNER: fix for Clovis being stuck at BB11
This is a possible bugfix, hopefully it will be enough
The bug occurs when skipping fast through the dialogue of Clovis with Sadik at BB11 rooftop. But it does not happen always. I've managed to capture the case when this happens a few times (_animationState == 0 switch clause), but I'm unsure if there are other unhandled _animationState values that would cause this.
Diffstat (limited to 'engines/bladerunner/script/ai')
-rw-r--r-- | engines/bladerunner/script/ai/clovis.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/bladerunner/script/ai/clovis.cpp b/engines/bladerunner/script/ai/clovis.cpp index 542beb027a..b26df93697 100644 --- a/engines/bladerunner/script/ai/clovis.cpp +++ b/engines/bladerunner/script/ai/clovis.cpp @@ -1436,13 +1436,28 @@ bool AIScriptClovis::ChangeAnimationMode(int mode) { case kAnimationModeSit: switch (_animationState) { +#if BLADERUNNER_ORIGINAL_BUGS +#else + // Sometimes the animationState will be 0 here (seems to happen randomly if skipping fast through the dialogue) + // and this would cause Clovis to not switch to his sitting animation + // and thus the BB11 rooftop scene would get stuck there + case 0: + // fall through +#endif // BLADERUNNER_ORIGINAL_BUGS case 4: + // fall through case 5: + // fall through case 6: + // fall through case 7: + // fall through case 8: + // fall through case 9: + // fall through case 10: + // fall through case 11: _animationState = 3; _animationFrame = 0; |