diff options
author | Filippos Karapetis | 2008-06-10 20:19:44 +0000 |
---|---|---|
committer | Filippos Karapetis | 2008-06-10 20:19:44 +0000 |
commit | e03bd801d6606b17b792356aece75cf5d2d3eb8c (patch) | |
tree | bfebb2235c6447145a85d12cdd9a72a158daf7f5 /engines/drascula | |
parent | 3823a23b70ccb7346563e2d46ae3c12acb786712 (diff) | |
download | scummvm-rg350-e03bd801d6606b17b792356aece75cf5d2d3eb8c.tar.gz scummvm-rg350-e03bd801d6606b17b792356aece75cf5d2d3eb8c.tar.bz2 scummvm-rg350-e03bd801d6606b17b792356aece75cf5d2d3eb8c.zip |
Fixed character walking in room 14 (the bar, right after BJ is kidnapped). This should fix the issues with the pianist in bug report #1979989 - "DRASCULA : Lip sync error when talking to pianist"
svn-id: r32648
Diffstat (limited to 'engines/drascula')
-rw-r--r-- | engines/drascula/drascula.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/engines/drascula/drascula.cpp b/engines/drascula/drascula.cpp index dd5f0968ff..3419096b65 100644 --- a/engines/drascula/drascula.cpp +++ b/engines/drascula/drascula.cpp @@ -429,12 +429,21 @@ bool DrasculaEngine::runCurrentChapter() { } if (currentChapter == 2) { - if (roomNumber == 3 && (curX == 279) && (curY + curHeight == 101)) + // NOTE: the checks for room number 14 below are a hack used in the original + // game, and move the character to a place where his feet are not drawn above + // the pianist's head. Originally, walkToObject was not updated properly, which + // lead to an incorrect setting of the protagonist's tracking flag (above). This + // made the character start walking off screen, as his actual position was + // different than the displayed one + if (roomNumber == 3 && (curX == 279) && (curY + curHeight == 101)) { animation_1_2(); - else if (roomNumber == 14 && (curX == 214) && (curY + curHeight == 121)) + } else if (roomNumber == 14 && (curX == 214) && (curY + curHeight == 121)) { + walkToObject = 1; gotoObject(190, 130); - else if (roomNumber == 14 && (curX == 246) && (curY + curHeight == 112)) + } else if (roomNumber == 14 && (curX == 246) && (curY + curHeight == 112)) { + walkToObject = 1; gotoObject(190, 130); + } } moveCursor(); |