aboutsummaryrefslogtreecommitdiff
path: root/scumm/resource.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scumm/resource.cpp')
-rw-r--r--scumm/resource.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/scumm/resource.cpp b/scumm/resource.cpp
index a233c045ca..6fef492893 100644
--- a/scumm/resource.cpp
+++ b/scumm/resource.cpp
@@ -622,7 +622,7 @@ int ScummEngine::loadResource(int type, int idx) {
if (roomNr == 0)
roomNr = _roomResource;
- if (type == rtRoom) {
+ if (type == rtRoom && _heversion < 70) {
if (_version == 8)
fileOffs = 8;
else
@@ -653,6 +653,11 @@ int ScummEngine::loadResource(int type, int idx) {
if ((type == rtSound) && !(_features & GF_AMIGA) && !(_features & GF_FMTOWNS)) {
return readSoundResourceSmallHeader(type, idx);
}
+ } else if (_heversion >= 70) {
+ tag = _fileHandle.readUint32LE();
+ size = _fileHandle.readUint32BE() + 8;
+
+ _fileHandle.seek(-8, SEEK_CUR);
} else {
if (type == rtSound) {
return readSoundResource(type, idx);
@@ -1712,7 +1717,7 @@ int ScummEngine::readSoundResourceSmallHeader(int type, int idx) {
}
int ScummEngine::getResourceRoomNr(int type, int idx) {
- if (type == rtRoom)
+ if (type == rtRoom && _heversion < 70)
return idx;
return res.roomno[type][idx];
}