aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/script_v1.cpp
diff options
context:
space:
mode:
authorJohannes Schickel2007-01-31 18:35:50 +0000
committerJohannes Schickel2007-01-31 18:35:50 +0000
commitd82c67b48cc25d44b27331cf82b4371ff6438d3c (patch)
tree3e044bb8a55aeb2ad26f19e8179f12a588dc9a37 /engines/kyra/script_v1.cpp
parent9799b346d86c5151d66d93f034cf5d1a40dbb15b (diff)
downloadscummvm-rg350-d82c67b48cc25d44b27331cf82b4371ff6438d3c.tar.gz
scummvm-rg350-d82c67b48cc25d44b27331cf82b4371ff6438d3c.tar.bz2
scummvm-rg350-d82c67b48cc25d44b27331cf82b4371ff6438d3c.zip
Fix for bug #Fix for bug #1523200 ("KYRA1: Voice-only mode has no lips animation").
svn-id: r25313
Diffstat (limited to 'engines/kyra/script_v1.cpp')
-rw-r--r--engines/kyra/script_v1.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/engines/kyra/script_v1.cpp b/engines/kyra/script_v1.cpp
index d82430ec57..e08eb5b439 100644
--- a/engines/kyra/script_v1.cpp
+++ b/engines/kyra/script_v1.cpp
@@ -45,15 +45,10 @@ int KyraEngine::o1_characterSays(ScriptState *script) {
_skipFlag = false;
if (_flags.isTalkie) {
debugC(3, kDebugLevelScriptFuncs, "o1_characterSays(%p) (%d, '%s', %d, %d)", (const void *)script, stackPos(0), stackPosString(1), stackPos(2), stackPos(3));
- if (speechEnabled()) {
- snd_voiceWaitForFinish();
- snd_playVoiceFile(stackPos(0));
- }
- if (textEnabled())
- characterSays(stackPosString(1), stackPos(2), stackPos(3));
+ characterSays(stackPos(0), stackPosString(1), stackPos(2), stackPos(3));
} else {
debugC(3, kDebugLevelScriptFuncs, "o1_characterSays(%p) ('%s', %d, %d)", (const void *)script, stackPosString(0), stackPos(1), stackPos(2));
- characterSays(stackPosString(0), stackPos(1), stackPos(2));
+ characterSays(-1, stackPosString(0), stackPos(1), stackPos(2));
}
return 0;
@@ -644,6 +639,8 @@ int KyraEngine::o1_customPrintTalkString(ScriptState *script) {
int KyraEngine::o1_restoreCustomPrintBackground(ScriptState *script) {
debugC(3, kDebugLevelScriptFuncs, "o1_restoreCustomPrintBackground(%p) ()", (const void *)script);
+ snd_voiceWaitForFinish();
+ snd_stopVoice();
_text->restoreTalkTextMessageBkgd(2, 0);
return 0;
}