diff --git a/engines/tsage/converse.cpp b/engines/tsage/converse.cpp index b1e318cc1c7d..5fa36142e7c1 100644 --- a/engines/tsage/converse.cpp +++ b/engines/tsage/converse.cpp @@ -418,8 +418,10 @@ int ConversationChoiceDialog::execute(const Common::StringArray &choiceList) { Event event; while (!_vm->getEventManager()->shouldQuit()) { while (!_globals->_events.getEvent(event, EVENT_KEYPRESS | EVENT_BUTTON_DOWN | EVENT_MOUSE_MOVE) && - !_vm->getEventManager()->shouldQuit()) - ; + !_vm->getEventManager()->shouldQuit()) { + g_system->delayMillis(10); + g_system->updateScreen(); + } if (_vm->getEventManager()->shouldQuit()) break; diff --git a/engines/tsage/dialogs.cpp b/engines/tsage/dialogs.cpp index fa9c73d07f4c..759deebbefbc 100644 --- a/engines/tsage/dialogs.cpp +++ b/engines/tsage/dialogs.cpp @@ -468,8 +468,10 @@ void InventoryDialog::execute() { while (!_vm->getEventManager()->shouldQuit()) { // Get events Event event; - while (!_globals->_events.getEvent(event) && !_vm->getEventManager()->shouldQuit()) - ; + while (!_globals->_events.getEvent(event) && !_vm->getEventManager()->shouldQuit()) { + g_system->delayMillis(10); + g_system->updateScreen(); + } if (_vm->getEventManager()->shouldQuit()) return; diff --git a/engines/tsage/graphics.cpp b/engines/tsage/graphics.cpp index 1b2e6b1137d6..5da00e852203 100644 --- a/engines/tsage/graphics.cpp +++ b/engines/tsage/graphics.cpp @@ -991,6 +991,8 @@ GfxButton *GfxDialog::execute(GfxButton *defaultButton) { break; } } + g_system->delayMillis(10); + g_system->updateScreen(); } _gfxManager.deactivate();