aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Kagerer2008-06-22 12:31:05 +0000
committerFlorian Kagerer2008-06-22 12:31:05 +0000
commit3be9449e6730ec296091e7caaf5dd8f277d95bc9 (patch)
treea5b1e58dc17bc1bdb67b54542c2168324c28f29d
parentcc72a3b6b0a5a2ce5d1c6c1938776f3791b28737 (diff)
downloadscummvm-rg350-3be9449e6730ec296091e7caaf5dd8f277d95bc9.tar.gz
scummvm-rg350-3be9449e6730ec296091e7caaf5dd8f277d95bc9.tar.bz2
scummvm-rg350-3be9449e6730ec296091e7caaf5dd8f277d95bc9.zip
this should fix bug #1997149: KYRA2: no text in spellbook
svn-id: r32750
-rw-r--r--engines/kyra/gui_hof.cpp22
-rw-r--r--engines/kyra/kyra_hof.cpp3
2 files changed, 22 insertions, 3 deletions
diff --git a/engines/kyra/gui_hof.cpp b/engines/kyra/gui_hof.cpp
index 555934cb7f..e94f88a1d2 100644
--- a/engines/kyra/gui_hof.cpp
+++ b/engines/kyra/gui_hof.cpp
@@ -455,13 +455,29 @@ void KyraEngine_HoF::showBookPage() {
char filename[16];
sprintf(filename, "PAGE%.01X.", _bookCurPage);
- strcat(filename, (_flags.isTalkie || _flags.platform == Common::kPlatformFMTowns || _lang) ? _languageExtension[_lang] : "TXT");
+ strcat(filename, _languageExtension[_lang]);
uint8 *leftPage = _res->fileData(filename, 0);
+ if (!leftPage) {
+ // some floppy version use a TXT extension
+ sprintf(filename, "PAGE%.01X.", _bookCurPage);
+ strcat(filename, "TXT");
+ leftPage = _res->fileData(filename, 0);
+ }
+
int leftPageY = _bookPageYOffset[_bookCurPage];
sprintf(filename, "PAGE%.01X.", _bookCurPage+1);
- strcat(filename, (_flags.isTalkie || _flags.platform == Common::kPlatformFMTowns || _lang) ? _languageExtension[_lang] : "TXT");
- uint8 *rightPage = (_bookCurPage != _bookMaxPage) ? _res->fileData(filename, 0) : 0;
+ strcat(filename, _languageExtension[_lang]);
+ uint8 *rightPage = 0;
+ if (_bookCurPage != _bookMaxPage) {
+ rightPage = _res->fileData(filename, 0);
+ if (!rightPage) {
+ sprintf(filename, "PAGE%.01X.", _bookCurPage);
+ strcat(filename, "TXT");
+ rightPage = _res->fileData(filename, 0);
+ }
+ }
+
int rightPageY = _bookPageYOffset[_bookCurPage+1];
_screen->hideMouse();
diff --git a/engines/kyra/kyra_hof.cpp b/engines/kyra/kyra_hof.cpp
index 57f0dcc24a..a8b8c0dced 100644
--- a/engines/kyra/kyra_hof.cpp
+++ b/engines/kyra/kyra_hof.cpp
@@ -296,6 +296,9 @@ int KyraEngine_HoF::go() {
_res->loadFileList("FILEDATA.FDT");
else
_res->loadFileList(_ingamePakList, _ingamePakListSize);
+
+ if (_flags.platform == Common::kPlatformPC98)
+ _res->loadPakFile("AUDIO.PAK");
}
_menuDirectlyToLoad = (_menuChoice == 3) ? true : false;