From 63e3dfb1d146bdb79e57973f4330f44d39b40b73 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Wed, 7 Feb 2007 19:30:49 +0000 Subject: Support for new kyra.dat, which includes static data from the fm-towns version. svn-id: r25416 --- engines/kyra/seqplayer.cpp | 17 ++++------------- engines/kyra/staticres.cpp | 17 ++++++++++------- 2 files changed, 14 insertions(+), 20 deletions(-) (limited to 'engines/kyra') diff --git a/engines/kyra/seqplayer.cpp b/engines/kyra/seqplayer.cpp index 5f7f020e1b..af173cad44 100644 --- a/engines/kyra/seqplayer.cpp +++ b/engines/kyra/seqplayer.cpp @@ -400,20 +400,11 @@ void SeqPlayer::s1_playEffect() { void SeqPlayer::s1_playTrack() { uint8 msg = *_seqData++; - // HACK: as long as we don't have extracted static data from the fm-towns - // version in kyra.dat we use this to get music working - if (_vm->gameFlags().platform == Common::kPlatformFMTowns) { - if (msg <= 1) - _vm->snd_playWanderScoreViaMap(msg, 0); - else - _vm->snd_playWanderScoreViaMap(msg+55, 0); + if (msg == 1) { + _sound->beginFadeOut(); } else { - if (msg == 1) { - _sound->beginFadeOut(); - } else { - _sound->haltTrack(); - _sound->playTrack(msg); - } + _sound->haltTrack(); + _sound->playTrack(msg); } } diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp index 2367a8e268..fe7a68d988 100644 --- a/engines/kyra/staticres.cpp +++ b/engines/kyra/staticres.cpp @@ -31,7 +31,7 @@ namespace Kyra { -#define RESFILE_VERSION 14 +#define RESFILE_VERSION 15 bool StaticResource::checkKyraDat() { Common::File kyraDat; @@ -74,7 +74,7 @@ enum { GF_AMIGA = 1 << 17 // this is no special version flag yet! }; -#define GAME_FLAGS (GF_FLOPPY | GF_TALKIE | GF_DEMO/* | GF_AUDIOCD*/) +#define GAME_FLAGS (GF_FLOPPY | GF_TALKIE | GF_DEMO | GF_FMTOWNS) #define LANGUAGE_FLAGS (GF_ENGLISH | GF_FRENCH | GF_GERMAN | GF_SPANISH | GF_ITALIAN | GF_JAPANESE | GF_LNGUNK) uint32 createFeatures(const GameFlags &flags) { @@ -82,8 +82,8 @@ uint32 createFeatures(const GameFlags &flags) { return GF_TALKIE; if (flags.isDemo) return GF_DEMO; - //if (flags.platform == Common::kPlatformFMTowns) - // return GF_FMTOWNS; + if (flags.platform == Common::kPlatformFMTowns) + return GF_FMTOWNS; return GF_FLOPPY; } @@ -98,6 +98,8 @@ uint32 createLanguage(const GameFlags &flags) { return GF_SPANISH; if (flags.lang == Common::IT_ITA) return GF_ITALIAN; + if (flags.lang == Common::JA_JPN) + return GF_JAPANESE; return GF_LNGUNK; } @@ -112,6 +114,7 @@ static const LanguageTypes languages[] = { { GF_GERMAN, "GER" }, { GF_SPANISH, "SPA" }, { GF_ITALIAN, "ITA" }, + { GF_JAPANESE, "JPN" }, { 0, 0 } }; @@ -203,7 +206,7 @@ bool StaticResource::init() { { kPaletteList, kPaletteTable, "1 33 PALTABLE" }, // FM-TOWNS specific - { kKyra1TownsSFXTable, kRawData, "SFXTABLE.TSX" }, + { kKyra1TownsSFXTable, kRawData, "SFXTABLE" }, { 0, 0, 0 } }; @@ -607,9 +610,9 @@ uint8 *StaticResource::getFile(const char *name, int &size) { ext = ".CD"; } else if (_engine->gameFlags().isDemo) { ext = ".DEM"; - } /*else if (_engine->gameFlags().platform == Common::kPlatformFMTowns) { + } else if (_engine->gameFlags().platform == Common::kPlatformFMTowns) { ext = ".TNS"; - } */ + } snprintf(buffer, 64, "%s%s", name, ext); uint32 tempSize = 0; uint8 *data = _engine->resource()->fileData(buffer, &tempSize); -- cgit v1.2.3