aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicola Mettifogo2007-05-20 20:35:08 +0000
committerNicola Mettifogo2007-05-20 20:35:08 +0000
commitcf8dee054d0e534e423d5c81f64235db0d94e80a (patch)
tree16e2fd96b8fdaed27bb6efcd25a361eb03cceb64
parentd3f6518f6facc117c54cc158bb8dc5e1e28f25a8 (diff)
downloadscummvm-rg350-cf8dee054d0e534e423d5c81f64235db0d94e80a.tar.gz
scummvm-rg350-cf8dee054d0e534e423d5c81f64235db0d94e80a.tar.bz2
scummvm-rg350-cf8dee054d0e534e423d5c81f64235db0d94e80a.zip
Fixed regression: location comment wasn't shown on every location except the first visited.
svn-id: r26895
-rw-r--r--engines/parallaction/location.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/engines/parallaction/location.cpp b/engines/parallaction/location.cpp
index b353dffd28..da67c556af 100644
--- a/engines/parallaction/location.cpp
+++ b/engines/parallaction/location.cpp
@@ -122,6 +122,7 @@ void Parallaction::parseLocation(const char *filename) {
}
if (!scumm_stricmp(_tokens[0], "COMMENT")) {
_location._comment = parseComment(*_locationScript);
+ debugC(3, kDebugLocation, "Location comment: '%s'", _location._comment);
}
if (!scumm_stricmp(_tokens[0], "ENDCOMMENT")) {
_location._endComment = parseComment(*_locationScript);
@@ -370,7 +371,11 @@ void Parallaction::changeLocation(char *location) {
runJobs();
_gfx->swapBuffers();
}
-
+
+ if (_location._comment) {
+ doLocationEnterTransition();
+ }
+
runJobs();
_gfx->swapBuffers();
@@ -399,9 +404,11 @@ void Parallaction::changeLocation(char *location) {
void Parallaction::doLocationEnterTransition() {
debugC(1, kDebugLocation, "doLocationEnterTransition");
- if (_localFlags[_currentLocationIndex] & kFlagsVisited)
- return; // visited
-
+ if (_localFlags[_currentLocationIndex] & kFlagsVisited) {
+ debugC(3, kDebugLocation, "skipping location transition");
+ return; // visited
+ }
+
byte pal[PALETTE_SIZE];
_gfx->buildBWPalette(pal);
_gfx->setPalette(pal);