aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/klists.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2018-10-26 03:41:03 +0300
committerFilippos Karapetis2018-10-26 03:42:48 +0300
commitaceb52806823c3bf7fca7f4847d46244e47ec350 (patch)
treee8539ad70287929a1035be3ad3ea459b2616e0dc /engines/sci/engine/klists.cpp
parentd0480e2dadba65722cca9c84ff62366b2362fe71 (diff)
downloadscummvm-rg350-aceb52806823c3bf7fca7f4847d46244e47ec350.tar.gz
scummvm-rg350-aceb52806823c3bf7fca7f4847d46244e47ec350.tar.bz2
scummvm-rg350-aceb52806823c3bf7fca7f4847d46244e47ec350.zip
SCI32: Correct fix for the TRAP machine in QFG4
Properly fixes bug #10766.
Diffstat (limited to 'engines/sci/engine/klists.cpp')
-rw-r--r--engines/sci/engine/klists.cpp15
1 files changed, 0 insertions, 15 deletions
diff --git a/engines/sci/engine/klists.cpp b/engines/sci/engine/klists.cpp
index e103a13443..9427b29475 100644
--- a/engines/sci/engine/klists.cpp
+++ b/engines/sci/engine/klists.cpp
@@ -820,21 +820,6 @@ reg_t kArrayNew(EngineState *s, int argc, reg_t *argv) {
uint16 size = argv[0].toUint16();
SciArrayType type = (SciArrayType)argv[1].toUint16();
- // WORKAROUND: QFG4 floppy has a different Array class in script 64920 than
- // the CD version. Script 380 (the trap machine outside of Dr. Cranium's
- // lab) creates 3 integer arrays, and the largest one is used to hold
- // messages from the machine. In the CD version, the type of that array is
- // correctly changed to 2 (a byte array), but in the floppy version, the type
- // remains 0 (an array of 16-bit integers) inside the Array class.
- // I haven't found a reliable way to patch the array creation in the game
- // scripts, so we set the large array in the floppy version to be initialized
- // with the same parameters as in the same way as in the CD version. This
- // fixes the trap machine's messages in the floppy version.
- if (g_sci->getGameId() == GID_QFG4 && !g_sci->isCD() && s->currentRoomNumber() == 380 && size == 128 && type == kArrayTypeInt16) {
- size = 256;
- type = kArrayTypeByte;
- }
-
if (type == kArrayTypeString) {
++size;
}