aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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
/*