diff options
author | Gregory Montoir | 2004-01-10 12:56:07 +0000 |
---|---|---|
committer | Gregory Montoir | 2004-01-10 12:56:07 +0000 |
commit | 9439e09e45d9e14b9d5bc297a7c618ee3f948f9e (patch) | |
tree | c5abae4c86c6e173b2dd81ce50c6ceb37f2fd7bb /queen/cutaway.cpp | |
parent | c4528ac022d13fde66a4d494110da4e97d2660c0 (diff) | |
download | scummvm-rg350-9439e09e45d9e14b9d5bc297a7c618ee3f948f9e.tar.gz scummvm-rg350-9439e09e45d9e14b9d5bc297a7c618ee3f948f9e.tar.bz2 scummvm-rg350-9439e09e45d9e14b9d5bc297a7c618ee3f948f9e.zip |
this should fix :
- minor sound glitch in room 50 (temple zombies)
- panel undisplayed at the end of cutaway c62c
- wrong dirty blocks in room 76
- Cutaway::_cutAnim is now a 21x30 elements array. This is needed for cutaway c69g, where we setup
frames for bob num 20 (the original game uses the same value)
- Credits::_list is now a 18 elements array (that's what credits2.crd need)
svn-id: r12294
Diffstat (limited to 'queen/cutaway.cpp')
-rw-r--r-- | queen/cutaway.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/queen/cutaway.cpp b/queen/cutaway.cpp index 1b3d498f86..2d8fc97b05 100644 --- a/queen/cutaway.cpp +++ b/queen/cutaway.cpp @@ -390,12 +390,14 @@ void Cutaway::changeRooms(CutawayObject &object) { _vm->logic()->oldRoom(_initialRoom); - // FIXME: this cutaway is played at the end of the command 0x178. This command - // setups some persons and associates bob slots to them. They should be hidden - // as their y coordinate is > 150, but they aren't ! A (temporary) workaround - // is to display the room with the panel area enabled. + // FIXME - the first cutaway is played at the end of the command 0x178. This + // command setups some persons and associates bob slots to them. They should be + // hidden as their y coordinate is > 150, but they aren't ! A (temporary) + // workaround is to display the room with the panel area enabled. Same problem + // for cutaway c62c. int16 comPanel = _comPanel; - if (strcmp(_basename, "c41f") == 0 && _temporaryRoom == 106 && object.room == 41) { + if ((strcmp(_basename, "c41f") == 0 && _temporaryRoom == 106 && object.room == 41) || + (strcmp(_basename, "c62c") == 0 && _temporaryRoom == 105 && object.room == 41)) { comPanel = 1; } @@ -820,7 +822,7 @@ void Cutaway::handlePersonRecord( if (0 != strcmp(sentence, "*")) { if (sentence[0] == '#') { - debug(0, "Starting credits"); + debug(0, "Starting credits '%s'", sentence + 1); _vm->logic()->startCredits(sentence + 1); } else { @@ -1286,7 +1288,8 @@ int Cutaway::makeComplexAnimation(int16 currentImage, Cutaway::CutawayAnim *objA int frameIndex[256]; int i; int bobNum = objAnim[0].object; - + assert(bobNum < 21); + memset(frameIndex, 0, sizeof(frameIndex)); debug(6, "[Cutaway::makeComplexAnimation] currentImage = %i", currentImage); |