summaryrefslogtreecommitdiff
path: root/public/OfflineMode.h
diff options
context:
space:
mode:
Diffstat (limited to 'public/OfflineMode.h')
-rw-r--r--public/OfflineMode.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/public/OfflineMode.h b/public/OfflineMode.h
new file mode 100644
index 0000000..d4c1f2c
--- /dev/null
+++ b/public/OfflineMode.h
@@ -0,0 +1,29 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+//=============================================================================//
+
+#include <vgui/ISystem.h>
+#include <vgui_controls/Controls.h>
+
+#define STEAM_OFFLINE_MODE "HKEY_CURRENT_USER\\Software\\Valve\\Steam\\Offline"
+#define STEAM_AFS_MODE "HKEY_CURRENT_USER\\Software\\Valve\\Steam\\OfflineAFS"
+#define OFFLINE_FILE "Steam\\cached\\offline_" // first part of filename
+
+inline bool IsSteamInOfflineMode()
+{
+ int offline = 0;
+ vgui::system()->GetRegistryInteger( STEAM_OFFLINE_MODE, offline );
+ return ( offline == 1 );
+}inline bool IsSteamInAuthenticationFailSafeMode()
+{
+ int offline = 0;
+ vgui::system()->GetRegistryInteger( STEAM_AFS_MODE, offline );
+ return ( offline == 1 );
+}
+
+inline bool IsSteamGameServerBrowsingEnabled()
+{
+ return (IsSteamInAuthenticationFailSafeMode() || !IsSteamInOfflineMode());
+}