aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script/ai
diff options
context:
space:
mode:
authorThanasis Antoniou2019-05-05 14:30:06 +0300
committerThanasis Antoniou2019-05-05 14:33:04 +0300
commit8787bbb39029ef6fc901ded8a09fba4215e03f79 (patch)
treeb8987703920e0ac331f383b43d90e351ecf55373 /engines/bladerunner/script/ai
parentf0420c9c8fe07d8d7d0fce5409fc9f4b1fc50d52 (diff)
downloadscummvm-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.cpp15
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;