diff options
Diffstat (limited to 'engines/parallaction/parser_br.cpp')
-rw-r--r-- | engines/parallaction/parser_br.cpp | 8 |
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); } |