Move a number of ui only updates into UiContext tick

This commit is contained in:
duncanspumpkin 2024-03-27 21:11:47 +00:00 committed by Gymnasiast
parent 5470a49382
commit 4810a72232
No known key found for this signature in database
GPG Key ID: DBFFF47AB2CA3EDD
5 changed files with 22 additions and 32 deletions

View File

@ -140,6 +140,28 @@ public:
void Tick() override
{
_inGameConsole.Update();
// the flickering frequency is reduced by 4, compared to the original
// it was done due to inability to reproduce original frequency
// and decision that the original one looks too fast
if (gCurrentRealTimeTicks % 4 == 0)
gWindowMapFlashingFlags ^= MapFlashingFlags::SwitchColour;
// Handle guest map flashing
gWindowMapFlashingFlags &= ~MapFlashingFlags::FlashGuests;
if (gWindowMapFlashingFlags & MapFlashingFlags::GuestListOpen)
gWindowMapFlashingFlags |= MapFlashingFlags::FlashGuests;
gWindowMapFlashingFlags &= ~MapFlashingFlags::GuestListOpen;
// Handle staff map flashing
gWindowMapFlashingFlags &= ~MapFlashingFlags::FlashStaff;
if (gWindowMapFlashingFlags & MapFlashingFlags::StaffListOpen)
gWindowMapFlashingFlags |= MapFlashingFlags::FlashStaff;
gWindowMapFlashingFlags &= ~MapFlashingFlags::StaffListOpen;
_windowManager->UpdateMapTooltip();
WindowDispatchUpdateAll();
}
void Draw(DrawPixelInfo& dpi) override

View File

@ -1561,12 +1561,6 @@ WindowBase* ContextShowError(StringId title, StringId message, const Formatter&
return windowManager->ShowError(title, message, args);
}
void ContextUpdateMapTooltip()
{
auto windowManager = GetContext()->GetUiContext()->GetWindowManager();
windowManager->UpdateMapTooltip();
}
void ContextHandleInput()
{
auto windowManager = GetContext()->GetUiContext()->GetWindowManager();

View File

@ -225,7 +225,6 @@ WindowBase* ContextShowError(StringId title, StringId message, const class Forma
WindowBase* ContextOpenIntent(Intent* intent);
void ContextBroadcastIntent(Intent* intent);
void ContextForceCloseWindowByClass(WindowClass wc);
void ContextUpdateMapTooltip();
void ContextHandleInput();
void ContextInputHandleKeyboard(bool isTitle);
void ContextQuit();

View File

@ -222,26 +222,6 @@ namespace OpenRCT2
if (!gOpenRCT2Headless)
{
InputSetFlag(INPUT_FLAG_VIEWPORT_SCROLLING, false);
// the flickering frequency is reduced by 4, compared to the original
// it was done due to inability to reproduce original frequency
// and decision that the original one looks too fast
if (gCurrentRealTimeTicks % 4 == 0)
gWindowMapFlashingFlags ^= MapFlashingFlags::SwitchColour;
// Handle guest map flashing
gWindowMapFlashingFlags &= ~MapFlashingFlags::FlashGuests;
if (gWindowMapFlashingFlags & MapFlashingFlags::GuestListOpen)
gWindowMapFlashingFlags |= MapFlashingFlags::FlashGuests;
gWindowMapFlashingFlags &= ~MapFlashingFlags::GuestListOpen;
// Handle staff map flashing
gWindowMapFlashingFlags &= ~MapFlashingFlags::FlashStaff;
if (gWindowMapFlashingFlags & MapFlashingFlags::StaffListOpen)
gWindowMapFlashingFlags |= MapFlashingFlags::FlashStaff;
gWindowMapFlashingFlags &= ~MapFlashingFlags::StaffListOpen;
ContextUpdateMapTooltip();
}
// Always perform autosave check, even when paused
@ -251,8 +231,6 @@ namespace OpenRCT2
ScenarioAutosaveCheck();
}
WindowDispatchUpdateAll();
if (didRunSingleFrame && GameIsNotPaused() && !(gScreenFlags & SCREEN_FLAGS_TITLE_DEMO))
{
PauseToggle();

View File

@ -168,9 +168,6 @@ void TitleScene::Tick()
InputSetFlag(INPUT_FLAG_VIEWPORT_SCROLLING, false);
ContextUpdateMapTooltip();
WindowDispatchUpdateAll();
ContextHandleInput();
gInUpdateCode = false;