From 51975b50cb8f95d15b3d9e63b8de4b590eb90016 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Wed, 14 Oct 2009 14:17:15 +0000 Subject: Add LoL PC98 credits entries to kyra.dat. svn-id: r45082 --- engines/kyra/resource.h | 2 ++ engines/kyra/sequences_lol.cpp | 17 ++++++++++++++++- engines/kyra/staticres.cpp | 8 +++++--- 3 files changed, 23 insertions(+), 4 deletions(-) (limited to 'engines/kyra') diff --git a/engines/kyra/resource.h b/engines/kyra/resource.h index 529d9f4c5a..d164a28972 100644 --- a/engines/kyra/resource.h +++ b/engines/kyra/resource.h @@ -298,6 +298,8 @@ enum KyraResources { kLolLightningDefs, kLolFireballCoords, + kLolCredits, + kLolHistory, #endif // ENABLE_LOL diff --git a/engines/kyra/sequences_lol.cpp b/engines/kyra/sequences_lol.cpp index 2a4b4910dd..da32c3a8e6 100644 --- a/engines/kyra/sequences_lol.cpp +++ b/engines/kyra/sequences_lol.cpp @@ -1182,7 +1182,22 @@ void LoLEngine::showCredits() { _screen->_charOffset = 0; - char *credits = (char *)_res->fileData("CREDITS.TXT", 0); + char *credits = 0; + + if (_flags.platform == Common::kPlatformPC98) { + int size = 0; + const uint8 *internCredits = _staticres->loadRawData(kLolCredits, size); + assert(size > 0); + + credits = new char[size]; + assert(credits); + + memcpy(credits, internCredits, size); + _staticres->unloadId(kLolCredits); + } else { + credits = (char *)_res->fileData("CREDITS.TXT", 0); + } + processCredits(credits, 21, 4, 5); delete[] credits; diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp index bddeb758e0..395fe5d544 100644 --- a/engines/kyra/staticres.cpp +++ b/engines/kyra/staticres.cpp @@ -45,7 +45,7 @@ namespace Kyra { -#define RESFILE_VERSION 58 +#define RESFILE_VERSION 59 namespace { bool checkKyraDat(Common::SeekableReadStream *file) { @@ -469,6 +469,8 @@ bool StaticResource::init() { { kLolLightningDefs, kRawData, "MLGHTNG.DEF" }, { kLolFireballCoords, kLolRawDataBe16, "MFIREBLL.DEF" }, + { kLolCredits, kRawData, "LOLCREDITS" }, + { kLolHistory, kRawData, "HISTORY.FLS" }, { 0, 0, 0 } @@ -501,10 +503,10 @@ void StaticResource::deinit() { } const char * const *StaticResource::loadStrings(int id, int &strings) { - const char * const*temp = (const char* const *)getData(id, kStringList, strings); + const char * const *temp = (const char * const *)getData(id, kStringList, strings); if (temp) return temp; - return (const char* const *)getData(id, kLanguageList, strings); + return (const char * const *)getData(id, kLanguageList, strings); } const uint8 *StaticResource::loadRawData(int id, int &size) { -- cgit v1.2.3