From c0f4b3faa7c1b49e4e0a92703de2a3b6ef5b1bb0 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sat, 26 Apr 2008 22:53:00 +0000 Subject: - load new tlk file on chapter change - added warning when trying to play non-existent soundfile svn-id: r31742 --- engines/kyra/resource.cpp | 1 - engines/kyra/scene_v3.cpp | 7 +++++-- engines/kyra/sound_digital.cpp | 4 +++- 3 files changed, 8 insertions(+), 4 deletions(-) (limited to 'engines') 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; -- cgit v1.2.3