From f427fccc03f69fd90548589198377b64777fd8cc Mon Sep 17 00:00:00 2001 From: Bastien Bouclet Date: Sat, 5 Mar 2016 20:42:25 +0100 Subject: MOHAWK: Make the Quit button show the credits --- engines/mohawk/dialogs.cpp | 10 +++++++--- engines/mohawk/myst.cpp | 7 +++++++ engines/mohawk/myst.h | 1 + 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/engines/mohawk/dialogs.cpp b/engines/mohawk/dialogs.cpp index f8aaf0f4af..6c6ae9e77f 100644 --- a/engines/mohawk/dialogs.cpp +++ b/engines/mohawk/dialogs.cpp @@ -207,9 +207,13 @@ void MystOptionsDialog::handleCommand(GUI::CommandSender *sender, uint32 cmd, ui save(); break; case kQuitCmd: { - Common::Event eventQ; - eventQ.type = Common::EVENT_QUIT; - g_system->getEventManager()->pushEvent(eventQ); + if (_vm->getGameType() != GType_MAKINGOF) { + _vm->_needsShowCredits = true; + } else { + Common::Event eventQ; + eventQ.type = Common::EVENT_QUIT; + g_system->getEventManager()->pushEvent(eventQ); + } close(); } break; diff --git a/engines/mohawk/myst.cpp b/engines/mohawk/myst.cpp index 1ff0c648e1..c16fab9131 100644 --- a/engines/mohawk/myst.cpp +++ b/engines/mohawk/myst.cpp @@ -307,6 +307,7 @@ Common::Error MohawkEngine_Myst::run() { _needsPageDrop = false; _needsShowMap = false; _needsShowDemoMenu = false; + _needsShowCredits = false; _canSafelySaveLoad = true; runDialog(*_optionsDialog); @@ -326,6 +327,12 @@ Common::Error MohawkEngine_Myst::run() { changeToStack(kDemoStack, 2002, 0, 0); _needsShowDemoMenu = false; } + + if (_needsShowCredits) { + _cursor->hideCursor(); + changeToStack(kCreditsStack, 10000, 0, 0); + _needsShowCredits = false; + } break; default: break; diff --git a/engines/mohawk/myst.h b/engines/mohawk/myst.h index 8ef3ac6d32..0b249e5499 100644 --- a/engines/mohawk/myst.h +++ b/engines/mohawk/myst.h @@ -196,6 +196,7 @@ public: bool _needsPageDrop; bool _needsShowMap; bool _needsShowDemoMenu; + bool _needsShowCredits; bool _showResourceRects; -- cgit v1.2.3