Rewrote ScreenSystemOverlay overlay/default.lua to be able to display multiple messages. Added Reload Overlay Screens option to debug menu.
This commit is contained in:
@@ -242,6 +242,7 @@ ScreenManager::ScreenManager()
|
||||
|
||||
g_pSharedBGA = new Actor;
|
||||
|
||||
m_bReloadOverlayScreensAfterInput= false;
|
||||
m_bZeroNextUpdate = false;
|
||||
m_PopTopScreen = SM_Invalid;
|
||||
m_OnDonePreparingScreen = SM_Invalid;
|
||||
@@ -330,6 +331,11 @@ void ScreenManager::ReloadOverlayScreens()
|
||||
this->RefreshCreditsMessages();
|
||||
}
|
||||
|
||||
void ScreenManager::ReloadOverlayScreensAfterInputFinishes()
|
||||
{
|
||||
m_bReloadOverlayScreensAfterInput= true;
|
||||
}
|
||||
|
||||
Screen *ScreenManager::GetTopScreen()
|
||||
{
|
||||
if( g_ScreenStack.empty() )
|
||||
@@ -514,7 +520,14 @@ void ScreenManager::Input( const InputEventPlus &input )
|
||||
// because anybody setting an input callback is probably doing it to
|
||||
// do something in addition to whatever the screen does.
|
||||
if(pScreen->PassInputToLua(input) || handled)
|
||||
{
|
||||
if(m_bReloadOverlayScreensAfterInput)
|
||||
{
|
||||
ReloadOverlayScreens();
|
||||
m_bReloadOverlayScreensAfterInput= false;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Pass input to the topmost screen. If we have a new top screen pending, don't
|
||||
|
||||
Reference in New Issue
Block a user