aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/script_lol.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/kyra/script_lol.cpp')
-rw-r--r--engines/kyra/script_lol.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/engines/kyra/script_lol.cpp b/engines/kyra/script_lol.cpp
index 5fb5f18116..6b88c090cb 100644
--- a/engines/kyra/script_lol.cpp
+++ b/engines/kyra/script_lol.cpp
@@ -1287,8 +1287,10 @@ int LoLEngine::olol_releaseMonsterShapes(EMCState *script) {
int LoLEngine::olol_playCharacterScriptChat(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_playCharacterScriptChat(%p) (%d, %d, %d)", (const void *)script, stackPos(0), stackPos(1), stackPos(2));
- snd_stopSpeech(1);
- updatePortraits();
+ if (_flags.isTalkie) {
+ snd_stopSpeech(1);
+ updatePortraits();
+ }
return playCharacterScriptChat(stackPos(0), stackPos(1), 1, getLangString(stackPos(2)), script, 0, 3);
}
@@ -1427,9 +1429,10 @@ int LoLEngine::olol_playEndSequence(EMCState *script){
return 0;
}
-int LoLEngine::olol_stopCharacterSpeech(EMCState *script) {
- debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_stopCharacterSpeech(%p)", (const void *)script);
- snd_stopSpeech(1);
+int LoLEngine::olol_updatePortraits(EMCState *script) {
+ debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_updatePortraits(%p)", (const void *)script);
+ if (_flags.isTalkie)
+ snd_stopSpeech(1);
updatePortraits();
return 1;
}
@@ -2184,7 +2187,7 @@ int LoLEngine::olol_restoreMagicShroud(EMCState *script) {
_res->loadFileToBuf("LITEPAL3.COL", tpal1, 768);
_screen->generateFadeTable(tpal2, tpal4, tpal1, 4);
- Palette pal(768);
+ Palette pal(256);
for (int i = 0; i < 21; i++) {
uint32 etime = _system->getMillis() + 20 * _tickLength;
@@ -2804,7 +2807,7 @@ void LoLEngine::setupOpcodeTable() {
// 0x68
Opcode(olol_countAllMonsters);
Opcode(olol_playEndSequence);
- Opcode(olol_stopCharacterSpeech);
+ Opcode(olol_updatePortraits);
Opcode(olol_setPaletteBrightness);
// 0x6C