diff --git a/desktop_version/src/Game.cpp b/desktop_version/src/Game.cpp index 133500fe..9355ff77 100644 --- a/desktop_version/src/Game.cpp +++ b/desktop_version/src/Game.cpp @@ -391,6 +391,7 @@ void Game::init(void) ingame_titlemode = false; kludge_ingametemp = Menu::mainmenu; + shouldreturntopausemenu = false; /* Terry's Patrons... */ const char* superpatrons_arr[] = { @@ -7766,4 +7767,5 @@ void Game::returntopausemenu() graphics.backgrounddrawn = false; game.mapheld = true; graphics.flipmode = graphics.setflipmode; + game.shouldreturntopausemenu = true; } diff --git a/desktop_version/src/Game.h b/desktop_version/src/Game.h index 688bc61f..dd00104a 100644 --- a/desktop_version/src/Game.h +++ b/desktop_version/src/Game.h @@ -408,6 +408,7 @@ public: bool ingame_titlemode; + bool shouldreturntopausemenu; void returntopausemenu(); }; diff --git a/desktop_version/src/Logic.cpp b/desktop_version/src/Logic.cpp index 71644d2a..048067a5 100644 --- a/desktop_version/src/Logic.cpp +++ b/desktop_version/src/Logic.cpp @@ -79,6 +79,16 @@ void maplogic() graphics.updatetextboxes(); graphics.updatetitlecolours(); + if (game.shouldreturntopausemenu) + { + game.shouldreturntopausemenu = false; + graphics.backgrounddrawn = false; + if (map.background == 3 || map.background || 4) + { + graphics.updatebackground(map.background); + } + } + graphics.crewframedelay--; if (graphics.crewframedelay <= 0) {