diff options
-rw-r--r-- | queen/command.cpp | 16 | ||||
-rw-r--r-- | queen/logic.cpp | 1 |
2 files changed, 8 insertions, 9 deletions
diff --git a/queen/command.cpp b/queen/command.cpp index 1561f7ac41..0b7942822e 100644 --- a/queen/command.cpp +++ b/queen/command.cpp @@ -843,11 +843,11 @@ bool Command::executeIfCutaway(const char *description) { if (strlen(description) > 4 && scumm_stricmp(description + strlen(description) - 4, ".cut") == 0) { -// _graphics->textClear(CmdText::COMMAND_Y_POS, CmdText::COMMAND_Y_POS); - clear(true); - char nextCutaway[20]; memset(nextCutaway, 0, sizeof(nextCutaway)); + + clear(true); // clear as Talk::speak() can be called in a Cutaway + _logic->playCutaway(description, nextCutaway); while (nextCutaway[0] != '\0') { _logic->playCutaway(nextCutaway, nextCutaway); @@ -861,13 +861,14 @@ bool Command::executeIfCutaway(const char *description) { bool Command::executeIfDialog(const char *description) { if (strlen(description) > 4 && - scumm_stricmp(description + strlen(description) - 4, ".dog") == 0) { + scumm_stricmp(description + strlen(description) - 4, ".dog") == 0) { + char cutaway[20]; + memset(cutaway, 0, sizeof(cutaway)); -// _graphics->textClear(CmdText::COMMAND_Y_POS, CmdText::COMMAND_Y_POS); + int person = _selCmd.noun; clear(true); - - _logic->dialogue(description, _selCmd.noun, cutaway); + _logic->dialogue(description, person, cutaway); while (cutaway[0] != '\0') { char currentCutaway[20]; @@ -893,7 +894,6 @@ bool Command::handleBadCommand(bool walk) { if (_selCmd.action.isNone()) { _graphics->textClear(CmdText::COMMAND_Y_POS, CmdText::COMMAND_Y_POS); } -debug(0, "_walk->moveJoe(%d, %d)", _selPosX, _selPosY); _walk->moveJoe(0, _selPosX, _selPosY, false); // XXX inCutaway parameter return true; } diff --git a/queen/logic.cpp b/queen/logic.cpp index 7b20e4c593..24d181f747 100644 --- a/queen/logic.cpp +++ b/queen/logic.cpp @@ -1858,7 +1858,6 @@ void Logic::dialogue(const char *dlgFile, int personInRoom, char *cutaway) { cutaway = cutawayFile; } _display->fullscreen(true); - _cmd->clear(false); Talk::talk(dlgFile, personInRoom, cutaway, _graphics, _input, this, _resource, _sound); _display->fullscreen(false); } |