From aa979e6bb4919b6f3faf908036877bf822f444dd Mon Sep 17 00:00:00 2001 From: okvdai <108829133+okvdai@users.noreply.github.com> Date: Tue, 13 Jun 2023 19:38:32 +0200 Subject: [PATCH] Lock Stats tab until data has been gathered #27 --- .../mod/scripts/vscripts/pulse-common-func.gnut | 3 +++ .../mod/scripts/vscripts/ui/menu_lobby.nut | 10 +++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/mods/ToneAPI.pulse/mod/scripts/vscripts/pulse-common-func.gnut b/mods/ToneAPI.pulse/mod/scripts/vscripts/pulse-common-func.gnut index 4c12684..c9428ef 100644 --- a/mods/ToneAPI.pulse/mod/scripts/vscripts/pulse-common-func.gnut +++ b/mods/ToneAPI.pulse/mod/scripts/vscripts/pulse-common-func.gnut @@ -3,6 +3,7 @@ globalize_all_functions global string pulsePrefix +global bool pulseSuccessBool = true table withMapName = {} void function pulsePrefixSet() //Sets our prefix { @@ -28,10 +29,12 @@ bool function pulseRequestData(string givenURL, table parameterTable, string tab } else { pulseData[tablepath] <- DecodedJSON } + pulseSuccessBool = false } void functionref (HttpRequestFailure) onFailure = void function(HttpRequestFailure failure) { pulsePrintt("Something went wrong while getting data.") + pulseSuccessBool = true } foreach (key, value in parameterTable) { diff --git a/mods/ToneAPI.pulse/mod/scripts/vscripts/ui/menu_lobby.nut b/mods/ToneAPI.pulse/mod/scripts/vscripts/ui/menu_lobby.nut index cd743ed..3a2be2f 100644 --- a/mods/ToneAPI.pulse/mod/scripts/vscripts/ui/menu_lobby.nut +++ b/mods/ToneAPI.pulse/mod/scripts/vscripts/ui/menu_lobby.nut @@ -540,13 +540,21 @@ void function Lobby_RefreshButtons() } } +void function GetStats() +{ + Hud_SetLocked(file.statsButton, pulseSuccessBool) + waitthread pulseGetData() + wait 0.5 //temporary + Hud_SetLocked(file.statsButton, pulseSuccessBool) +} + void function OnLobbyMenu_Open() { Assert( IsConnected() ) // code will start loading DLC info from first party unless already done InitDLCStore() - waitthread pulseGetData() + thread GetStats() thread UpdateCachedNewItems() if ( file.putPlayerInMatchmakingAfterDelay )