From e97af08af50146c5e66b7c1d178241e9d1638454 Mon Sep 17 00:00:00 2001 From: "born a rick, raised a morty, died a jerry" Date: Thu, 29 Nov 2018 01:29:00 -0500 Subject: [PATCH] improve multi branching for til death --- Themes/Til Death/Scripts/02 Branches.lua | 10 ++++++++-- Themes/Til Death/metrics.ini | 3 +++ src/ScreenNetworkOptions.cpp | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Themes/Til Death/Scripts/02 Branches.lua b/Themes/Til Death/Scripts/02 Branches.lua index b454579502..aed00d7011 100644 --- a/Themes/Til Death/Scripts/02 Branches.lua +++ b/Themes/Til Death/Scripts/02 Branches.lua @@ -13,6 +13,9 @@ function SMOnlineScreen() return "ScreenSMOnlineLogin" end end + if not IsSMOnlineLoggedIn(pn) then + return "ScreenSMOnlineLogin" + end return "ScreenNetRoom" end @@ -133,8 +136,8 @@ Branch = { if not IsSMOnlineLoggedIn(PLAYER_1) then return "ScreenNetSelectProfile" else - return "ScreenNetRoom" - end + return "ScreenNetRoom" -- cant do this, we need to select a local profile even + end -- if logged into smo -mina else return "ScreenNetworkOptions" end @@ -291,6 +294,9 @@ Branch = { if PROFILEMAN:GetProfile(1):GetDisplayName() == "" then -- this is suuuuper hacky and will mess with people using "" as display names, but they're idiots anyway -mina return "ScreenTitleMenu" end + if IsSMOnlineLoggedIn(PLAYER_1) then + return "ScreenNetSelectMusic" + end return "ScreenSelectMusic" end } diff --git a/Themes/Til Death/metrics.ini b/Themes/Til Death/metrics.ini index 89db219dee..371e7ad3f0 100644 --- a/Themes/Til Death/metrics.ini +++ b/Themes/Til Death/metrics.ini @@ -832,6 +832,9 @@ LineHelpMenu="lua,HelpMenu()" LineNPSWindow="lua,NPSWindow()" LineMeasureLines="lua,MeasureLines()" +[ScreenNetworkOptions] +NextScreen=Branch.MultiScreen() + [ScreenThemeColorChange] Fallback="ScreenTextEntry" diff --git a/src/ScreenNetworkOptions.cpp b/src/ScreenNetworkOptions.cpp index ffe05dbe15..2b8389692e 100644 --- a/src/ScreenNetworkOptions.cpp +++ b/src/ScreenNetworkOptions.cpp @@ -171,7 +171,7 @@ ScreenNetworkOptions::ExportOptions(int /* iRow */, void ScreenNetworkOptions::UpdateConnectStatus() { - SCREENMAN->SetNewScreen(m_sName); + SCREENMAN->SetNewScreen(THEME->GetMetric(m_sName, "NextScreen")); } #endif