aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2010-10-05 10:50:22 +0000
committerPaul Gilbert2010-10-05 10:50:22 +0000
commitc19c9482b2d2cdcacdd12c77d946ca31314931a8 (patch)
treee9d636a48479e17ea61654d40a67482979f651c1
parentc8fd37c9f0eca0164f44c07c9013ad6e7e733e2e (diff)
downloadscummvm-rg350-c19c9482b2d2cdcacdd12c77d946ca31314931a8.tar.gz
scummvm-rg350-c19c9482b2d2cdcacdd12c77d946ca31314931a8.tar.bz2
scummvm-rg350-c19c9482b2d2cdcacdd12c77d946ca31314931a8.zip
LURE: Bugfix for #3008511 - Goewin stuck at counter
svn-id: r53029
-rw-r--r--NEWS1
-rw-r--r--engines/lure/res.cpp6
2 files changed, 6 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index c1818948e0..67787229c0 100644
--- a/NEWS
+++ b/NEWS
@@ -97,6 +97,7 @@ For a more comprehensive changelog for the latest experimental SVN code, see:
LURE:
- Fixed bug where Goewin could get stuck in the Weregate
- Fixed issue with Ratpouch repeatedly moving between two rooms
+ - Fix for Goewin losing her schedule after Were-cave
Parallaction:
- Made part one of The Big Red Adventure completable.
diff --git a/engines/lure/res.cpp b/engines/lure/res.cpp
index f8b29d4dd6..4342a1d6ad 100644
--- a/engines/lure/res.cpp
+++ b/engines/lure/res.cpp
@@ -625,12 +625,16 @@ Hotspot *Resources::activateHotspot(uint16 hotspotId) {
CharacterScheduleEntry *entry = resources.charSchedules().getEntry(res->npcScheduleId);
res->npcSchedule.addFront(DISPATCH_ACTION, entry, res->roomNumber);
}
- if ((hotspotId == GOEWIN_ID) && (hotspot->roomNumber() == 39))
+ if ((hotspotId == GOEWIN_ID) && (hotspot->roomNumber() == 39)) {
// WORKAROUND: When you re-join Goewin in the caves, clear her schedule. This may prevent a
// situation where you could close the left door, and she'd be permanently stuck trying to go
// the next room on the left, since her old schedule still had her following your old path
hotspot->currentActions().clear();
+ // Since she's no longer a follower, clear her start room field
+ hotspot->setStartRoomNumber(0);
+ }
+
// TODO: Figure out why there's a room set in the animation decode for a range of characters,
// particularly since it doesn't seem to match what happens in-game
/*