diff options
author | Filippos Karapetis | 2007-07-27 00:11:36 +0000 |
---|---|---|
committer | Filippos Karapetis | 2007-07-27 00:11:36 +0000 |
commit | f04c56fb69b08e435b6906646bd910f589bf8c71 (patch) | |
tree | c4846841061bd4cf8e82295a6b8144061cf6c535 | |
parent | 2b219db314319484b6eaf34d3bdac09e81e6acbe (diff) | |
download | scummvm-rg350-f04c56fb69b08e435b6906646bd910f589bf8c71.tar.gz scummvm-rg350-f04c56fb69b08e435b6906646bd910f589bf8c71.tar.bz2 scummvm-rg350-f04c56fb69b08e435b6906646bd910f589bf8c71.zip |
The meta resource table is now properly initialized for the IHNM demo. The starting chapter is also set correctly
svn-id: r28222
-rw-r--r-- | engines/saga/rscfile.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/engines/saga/rscfile.cpp b/engines/saga/rscfile.cpp index 39224b032b..318d8b71b7 100644 --- a/engines/saga/rscfile.cpp +++ b/engines/saga/rscfile.cpp @@ -555,10 +555,15 @@ void Resource::loadResource(ResourceContext *context, uint32 resourceId, byte*&r } static int metaResourceTable[] = { 0, 326, 517, 677, 805, 968, 1165, 0, 1271 }; +static int metaResourceTableDemo[] = { 0, 0, 0, 0, 0, 0, 0, 285, 0 }; void Resource::loadGlobalResources(int chapter, int actorsEntrance) { - if (chapter < 0) - chapter = 8; + if (chapter < 0) { + if (_vm->getGameId() != GID_IHNM_DEMO) + chapter = 8; + else + chapter = 7; + } // TODO //if (module.voiceLUT) @@ -583,8 +588,13 @@ void Resource::loadGlobalResources(int chapter, int actorsEntrance) { byte *resourcePointer; size_t resourceLength; - _vm->_resource->loadResource(resourceContext, metaResourceTable[chapter], - resourcePointer, resourceLength); + if (_vm->getGameId() != GID_IHNM_DEMO) { + _vm->_resource->loadResource(resourceContext, metaResourceTable[chapter], + resourcePointer, resourceLength); + } else { + _vm->_resource->loadResource(resourceContext, metaResourceTableDemo[chapter], + resourcePointer, resourceLength); + } if (resourceLength == 0) { error("Resource::loadGlobalResources wrong metaResource"); |