From e9234b61d671141761ea77e88302180d9d55b2f9 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Thu, 29 Jul 2010 19:48:17 +0000 Subject: SCI: Fixed Hoyle 3 bugs #3035077, #3035080, #3035081 and #3035242, by using the "completed" case removed in rev #50921 for Hoyle 3 svn-id: r51479 --- engines/sci/engine/kmovement.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'engines/sci') diff --git a/engines/sci/engine/kmovement.cpp b/engines/sci/engine/kmovement.cpp index f6e6790e66..9ff5b6e339 100644 --- a/engines/sci/engine/kmovement.cpp +++ b/engines/sci/engine/kmovement.cpp @@ -347,8 +347,13 @@ reg_t kDoBresen(EngineState *s, int argc, reg_t *argv) { writeSelectorValue(segMan, client, SELECTOR(signal), (signal | kSignalHitObstacle)); debugC(2, kDebugLevelBresen, "Finished mover %04x:%04x by collision", PRINT_REG(mover)); - // we shall not set completed in this case, sierra sci also doesn't do it + // We shall not set completed in this case, sierra sci also doesn't do it // if we set call .moveDone in those cases qfg1 vga gate at the castle and lsl1 casino door will not work + // Update: however, it seems that Hoyle 3 (full and demo) does need to end here. + // TODO/FIXME: Find out why Hoyle 3 needs this. + // The following fixes bugs #3035077, #3035080, #3035081 and #3035242 + if (g_sci->getGameId() == GID_HOYLE3) + completed = 1; } if ((getSciVersion() >= SCI_VERSION_1_EGA)) -- cgit v1.2.3