aboutsummaryrefslogtreecommitdiff
path: root/scumm/resource.cpp
diff options
context:
space:
mode:
authorMax Horn2003-01-12 21:13:22 +0000
committerMax Horn2003-01-12 21:13:22 +0000
commitca88dff5e7215a5556b98daec00830eb59c1f0be (patch)
treed6b0ba4bce1e087dea36069d9cffd19c975830bf /scumm/resource.cpp
parent2e4ba0c29f2205d6d943b81ee088d3f406c285f2 (diff)
downloadscummvm-rg350-ca88dff5e7215a5556b98daec00830eb59c1f0be.tar.gz
scummvm-rg350-ca88dff5e7215a5556b98daec00830eb59c1f0be.tar.bz2
scummvm-rg350-ca88dff5e7215a5556b98daec00830eb59c1f0be.zip
work around a script bug in COMI; cleanup; re-enabled array assert
svn-id: r6437
Diffstat (limited to 'scumm/resource.cpp')
-rw-r--r--scumm/resource.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/scumm/resource.cpp b/scumm/resource.cpp
index c23268775f..16aeb06f3e 100644
--- a/scumm/resource.cpp
+++ b/scumm/resource.cpp
@@ -392,7 +392,17 @@ void Scumm::readArrayFromIndexFile()
while ((num = _fileHandle.readUint32LE()) != 0) {
a = _fileHandle.readUint32LE();
b = _fileHandle.readUint32LE();
- defineArray(num, 5, a, b);
+
+ // FIXME - seems the COMI scripts have a bug related to array 436.
+ // and visible in script 2015, room 20. Basically, the dimensions
+ // are swapped in the definition of the array, but its obvious
+ // that this must be a script bug simply by looking at the defintions
+ // of other arrays and how they are used.
+ // Talk to fingolfin if you have questions about this :-)
+ if (num == 436)
+ defineArray(num, 5, b, a);
+ else
+ defineArray(num, 5, a, b);
}
} else {
while ((num = _fileHandle.readUint16LE()) != 0) {