mirror of
https://github.com/libretro/scummvm.git
synced 2025-05-13 09:36:21 +00:00
SAGA: Some code cleanup
svn-id: r34703
This commit is contained in:
parent
ae8c0857b9
commit
6aa12974bd
@ -86,7 +86,7 @@ DigitalMusicInputStream::DigitalMusicInputStream(SagaEngine *vm, ResourceContext
|
|||||||
|
|
||||||
byte compressedHeader[10];
|
byte compressedHeader[10];
|
||||||
|
|
||||||
resourceData = _vm->_resource->getResourceData(context, resourceId);
|
resourceData = context->getResourceData(resourceId);
|
||||||
_file = context->getFile(resourceData);
|
_file = context->getFile(resourceData);
|
||||||
_musicInfo = _vm->getMusicInfo();
|
_musicInfo = _vm->getMusicInfo();
|
||||||
|
|
||||||
|
@ -309,8 +309,8 @@ bool Resource::loadContext(ResourceContext *context) {
|
|||||||
for (i = 0; i < tableSize / 8; i++) {
|
for (i = 0; i < tableSize / 8; i++) {
|
||||||
subjectResourceId = readS2.readUint32();
|
subjectResourceId = readS2.readUint32();
|
||||||
patchResourceId = readS2.readUint32();
|
patchResourceId = readS2.readUint32();
|
||||||
subjectResourceData = getResourceData(subjectContext, subjectResourceId);
|
subjectResourceData = subjectContext->getResourceData(subjectResourceId);
|
||||||
resourceData = getResourceData(context, patchResourceId);
|
resourceData = context->getResourceData(patchResourceId);
|
||||||
subjectResourceData->patchData = new PatchData(context->file);
|
subjectResourceData->patchData = new PatchData(context->file);
|
||||||
subjectResourceData->offset = resourceData->offset;
|
subjectResourceData->offset = resourceData->offset;
|
||||||
subjectResourceData->size = resourceData->size;
|
subjectResourceData->size = resourceData->size;
|
||||||
@ -632,7 +632,7 @@ void Resource::loadResource(ResourceContext *context, uint32 resourceId, byte*&r
|
|||||||
|
|
||||||
debug(8, "loadResource %d", resourceId);
|
debug(8, "loadResource %d", resourceId);
|
||||||
|
|
||||||
resourceData = getResourceData(context, resourceId);
|
resourceData = context->getResourceData(resourceId);
|
||||||
|
|
||||||
file = context->getFile(resourceData);
|
file = context->getFile(resourceData);
|
||||||
|
|
||||||
|
@ -90,6 +90,18 @@ struct ResourceContext {
|
|||||||
return file;
|
return file;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool validResourceId(uint32 resourceId) const {
|
||||||
|
return (resourceId < count);
|
||||||
|
}
|
||||||
|
|
||||||
|
ResourceData *getResourceData(uint32 resourceId) const {
|
||||||
|
if (resourceId >= count) {
|
||||||
|
error("ResourceContext::getResourceData() wrong resourceId %d", resourceId);
|
||||||
|
}
|
||||||
|
return &table[resourceId];
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct MetaResource {
|
struct MetaResource {
|
||||||
@ -122,7 +134,6 @@ public:
|
|||||||
bool createContexts();
|
bool createContexts();
|
||||||
void clearContexts();
|
void clearContexts();
|
||||||
void loadResource(ResourceContext *context, uint32 resourceId, byte*&resourceBuffer, size_t &resourceSize);
|
void loadResource(ResourceContext *context, uint32 resourceId, byte*&resourceBuffer, size_t &resourceSize);
|
||||||
size_t getResourceSize(ResourceContext *context, uint32 resourceId);
|
|
||||||
uint32 convertResourceId(uint32 resourceId);
|
uint32 convertResourceId(uint32 resourceId);
|
||||||
|
|
||||||
void loadGlobalResources(int chapter, int actorsEntrance);
|
void loadGlobalResources(int chapter, int actorsEntrance);
|
||||||
@ -137,26 +148,6 @@ public:
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool validResourceId(ResourceContext *context, uint32 resourceId) const {
|
|
||||||
return (resourceId < context->count);
|
|
||||||
}
|
|
||||||
|
|
||||||
size_t getResourceSize(ResourceContext *context, uint32 resourceId) const {
|
|
||||||
return getResourceData(context, resourceId)->size;
|
|
||||||
}
|
|
||||||
|
|
||||||
size_t getResourceOffset(ResourceContext *context, uint32 resourceId) const {
|
|
||||||
return getResourceData(context, resourceId)->offset;
|
|
||||||
}
|
|
||||||
|
|
||||||
ResourceData *getResourceData(ResourceContext *context, uint32 resourceId) const {
|
|
||||||
if (!validResourceId(context, resourceId)) {
|
|
||||||
warning("Resource::getResourceData() wrong resourceId %d", resourceId);
|
|
||||||
assert(0);
|
|
||||||
}
|
|
||||||
return &context->table[resourceId];
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
SagaEngine *_vm;
|
SagaEngine *_vm;
|
||||||
ResourceContext *_contexts;
|
ResourceContext *_contexts;
|
||||||
|
@ -957,7 +957,7 @@ void Scene::loadSceneResourceList(uint32 resourceId) {
|
|||||||
_resourceList[i].resourceId = readS.readUint16();
|
_resourceList[i].resourceId = readS.readUint16();
|
||||||
_resourceList[i].resourceType = readS.readUint16();
|
_resourceList[i].resourceType = readS.readUint16();
|
||||||
// demo version may contain invalid resourceId
|
// demo version may contain invalid resourceId
|
||||||
_resourceList[i].invalid = !_vm->_resource->validResourceId(_sceneContext, _resourceList[i].resourceId);
|
_resourceList[i].invalid = !_sceneContext->validResourceId(_resourceList[i].resourceId);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -205,7 +205,7 @@ bool SndRes::load(ResourceContext *context, uint32 resourceId, SoundBuffer &buff
|
|||||||
soundResourceLength = file->size();
|
soundResourceLength = file->size();
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
ResourceData* resourceData = _vm->_resource->getResourceData(context, resourceId);
|
ResourceData* resourceData = context->getResourceData(resourceId);
|
||||||
file = context->getFile(resourceData);
|
file = context->getFile(resourceData);
|
||||||
|
|
||||||
file->seek(resourceData->offset);
|
file->seek(resourceData->offset);
|
||||||
@ -373,7 +373,7 @@ bool SndRes::load(ResourceContext *context, uint32 resourceId, SoundBuffer &buff
|
|||||||
case kSoundOGG:
|
case kSoundOGG:
|
||||||
case kSoundFLAC:
|
case kSoundFLAC:
|
||||||
ResourceData *resourceData;
|
ResourceData *resourceData;
|
||||||
resourceData = _vm->_resource->getResourceData(context, resourceId);
|
resourceData = context->getResourceData(resourceId);
|
||||||
|
|
||||||
// Read compressed sfx header
|
// Read compressed sfx header
|
||||||
readS.seek(1); // Skip compression identifier byte
|
readS.seek(1); // Skip compression identifier byte
|
||||||
|
Loading…
x
Reference in New Issue
Block a user