Fix exiting savegamedialog with 'esc' when no game is running

new-script-api
scrawl 7 years ago
parent d94235e3a7
commit cd437f094d

@ -210,6 +210,11 @@ namespace MWGui
}
}
bool MainMenu::exit()
{
return MWBase::Environment::get().getStateManager()->getState() == MWBase::StateManager::State_Running;
}
void MainMenu::updateMenu()
{
setCoord(0,0, mWidth, mHeight);

@ -38,6 +38,8 @@ namespace MWGui
void onFrame(float dt);
bool exit();
private:
const VFS::Manager* mVFS;

@ -750,8 +750,8 @@ namespace MWGui
if (!window->exit())
{
// unable to exit window, but give access to main menu
if (!MyGUI::InputManager::getInstance().isModalAny())
pushGuiMode (MWGui::GM_MainMenu);
if (!MyGUI::InputManager::getInstance().isModalAny() && getMode() != GM_MainMenu)
pushGuiMode (GM_MainMenu);
return;
}
}

@ -241,9 +241,7 @@ namespace MWInput
switch (action)
{
case A_GameMenu:
if(!(MWBase::Environment::get().getStateManager()->getState() != MWBase::StateManager::State_Running
&& MWBase::Environment::get().getWindowManager()->getMode() == MWGui::GM_MainMenu))
toggleMainMenu ();
toggleMainMenu ();
break;
case A_Screenshot:
screenshot();

Loading…
Cancel
Save