aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra
diff options
context:
space:
mode:
authorJohannes Schickel2008-04-26 22:53:00 +0000
committerJohannes Schickel2008-04-26 22:53:00 +0000
commitc0f4b3faa7c1b49e4e0a92703de2a3b6ef5b1bb0 (patch)
treeae8076a2ab829bf31508a249bfc56dfff2ade8a6 /engines/kyra
parentb179320edf55db93133dd118be116ede16795fb1 (diff)
downloadscummvm-rg350-c0f4b3faa7c1b49e4e0a92703de2a3b6ef5b1bb0.tar.gz
scummvm-rg350-c0f4b3faa7c1b49e4e0a92703de2a3b6ef5b1bb0.tar.bz2
scummvm-rg350-c0f4b3faa7c1b49e4e0a92703de2a3b6ef5b1bb0.zip
- load new tlk file on chapter change
- added warning when trying to play non-existent soundfile svn-id: r31742
Diffstat (limited to 'engines/kyra')
-rw-r--r--engines/kyra/resource.cpp1
-rw-r--r--engines/kyra/scene_v3.cpp7
-rw-r--r--engines/kyra/sound_digital.cpp4
3 files changed, 8 insertions, 4 deletions
diff --git a/engines/kyra/resource.cpp b/engines/kyra/resource.cpp
index 0a07392d8d..b2564221fc 100644
--- a/engines/kyra/resource.cpp
+++ b/engines/kyra/resource.cpp
@@ -716,7 +716,6 @@ bool ResLoaderTlk::loadFile(const Common::String &filename, Common::SeekableRead
char realFilename[20];
snprintf(realFilename, 20, "%u.AUD", resFilename);
-
uint32 curOffset = stream.pos();
stream.seek(resOffset, SEEK_SET);
entry.size = stream.readUint32LE();
diff --git a/engines/kyra/scene_v3.cpp b/engines/kyra/scene_v3.cpp
index 977d9540f8..8463fc3cb5 100644
--- a/engines/kyra/scene_v3.cpp
+++ b/engines/kyra/scene_v3.cpp
@@ -42,7 +42,10 @@ void KyraEngine_v3::enterNewScene(uint16 sceneId, int facing, int unk1, int unk2
}
musicUpdate(0);
- //XXX
+ if (_curChapter != _currentTalkFile) {
+ _currentTalkFile = _curChapter;
+ openTalkFile(_currentTalkFile);
+ }
musicUpdate(0);
if (!unk3) {
@@ -445,7 +448,7 @@ void KyraEngine_v3::initSceneScript(int unk1) {
_res->exists(filename, true);
_scriptInterpreter->loadScript(filename, &_sceneScriptData, &_opcodes);
- strcpy(filename, scene.filename1);
+ strcpy(filename, scene.filename2);
strcat(filename, ".");
loadLanguageFile(filename, _sceneStrings);
musicUpdate(0);
diff --git a/engines/kyra/sound_digital.cpp b/engines/kyra/sound_digital.cpp
index 24a33e5539..3a4eeba0f5 100644
--- a/engines/kyra/sound_digital.cpp
+++ b/engines/kyra/sound_digital.cpp
@@ -366,8 +366,10 @@ int SoundDigital::playSound(const char *filename, uint8 priority, Audio::Mixer::
}
Common::SeekableReadStream *stream = _vm->resource()->getFileStream(filename);
- if (!stream)
+ if (!stream) {
+ warning("Couldn't find soundfile '%s'", filename);
return -1;
+ }
strncpy(use->filename, filename, sizeof(use->filename));
use->priority = priority;