diff --git a/stepmania/src/ScreenManager.cpp b/stepmania/src/ScreenManager.cpp index daa806c53d..877df98ddc 100644 --- a/stepmania/src/ScreenManager.cpp +++ b/stepmania/src/ScreenManager.cpp @@ -103,6 +103,7 @@ namespace ScreenManagerUtil }; Actor *g_pSharedBGA; // BGA object that's persistent between screens + RString m_sPreviousTopScreen; vector g_ScreenStack; // bottommost to topmost vector g_OverlayScreens; set g_setGroupedScreens; @@ -120,10 +121,15 @@ namespace ScreenManagerUtil /* Set the name of the loading screen. */ { - LuaThreadVariable var( "LoadingScreen", ls.m_pScreen->GetName() ); + LuaThreadVariable var1( "PreviousScreen", m_sPreviousTopScreen ); + LuaThreadVariable var2( "LoadingScreen", ls.m_pScreen->GetName() ); ls.m_pScreen->BeginScreen(); } + /* If this is the new top screen, save the name. */ + if( g_ScreenStack.size() == 1 ) + m_sPreviousTopScreen = ls.m_pScreen->GetName(); + SCREENMAN->RefreshCreditsMessages(); SCREENMAN->PostMessageToTopScreen( SM_GainFocus, 0 );