aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/parser_br.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/parallaction/parser_br.cpp')
-rw-r--r--engines/parallaction/parser_br.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/parallaction/parser_br.cpp b/engines/parallaction/parser_br.cpp
index cebda4b5ed..51da7eb396 100644
--- a/engines/parallaction/parser_br.cpp
+++ b/engines/parallaction/parser_br.cpp
@@ -442,7 +442,7 @@ DECLARE_LOCATION_PARSER(redundant) {
DECLARE_LOCATION_PARSER(character) {
debugC(7, kDebugParser, "LOCATION_PARSER(character) ");
-// changeCharacter(character);
+ ctxt.characterName = strdup(_tokens[0]);
}
@@ -1113,15 +1113,21 @@ void LocationParser_br::parse(Script *script) {
ctxt.bgName = 0;
ctxt.maskName = 0;
ctxt.pathName = 0;
+ ctxt.characterName = 0;
LocationParser_ns::parse(script);
_vm->_gfx->setBackground(kBackgroundLocation, ctxt.bgName, ctxt.maskName, ctxt.pathName);
_vm->_pathBuffer = &_vm->_gfx->_backgroundInfo.path;
+ if (ctxt.characterName) {
+ _vm->changeCharacter(ctxt.characterName);
+ }
+
free(ctxt.bgName);
free(ctxt.maskName);
free(ctxt.pathName);
+ free(ctxt.characterName);
}