diff options
Diffstat (limited to 'engines/parallaction/parallaction_br.cpp')
-rw-r--r-- | engines/parallaction/parallaction_br.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/parallaction/parallaction_br.cpp b/engines/parallaction/parallaction_br.cpp index 73ab2c0bb6..7d641b530f 100644 --- a/engines/parallaction/parallaction_br.cpp +++ b/engines/parallaction/parallaction_br.cpp @@ -360,8 +360,14 @@ void Parallaction_br::parseLocation(const char *filename) { ZoneList::iterator zit = _vm->_location._zones.begin(); for ( ; zit != _vm->_location._zones.end(); ++zit) { + ZonePtr z = *zit; // restore the flags if the location has already been visited - restoreOrSaveZoneFlags(*zit, visited); + restoreOrSaveZoneFlags(z, visited); + + // (re)link the bounding animation if needed + if (z->_flags & kFlagsAnimLinked) { + z->_linkedAnim = _location.findAnimation(z->_linkedName.c_str()); + } } debugC(1, kDebugParser, "parseLocation('%s') done", filename); |