aboutsummaryrefslogtreecommitdiff
path: root/Northstar.Client
diff options
context:
space:
mode:
Diffstat (limited to 'Northstar.Client')
-rw-r--r--Northstar.Client/mod/scripts/vscripts/cl_northstar_client_init.nut13
-rw-r--r--Northstar.Client/mod/scripts/vscripts/presence/cl_presence.nut11
-rw-r--r--Northstar.Client/mod/scripts/vscripts/presence/ui_presence.nut20
3 files changed, 25 insertions, 19 deletions
diff --git a/Northstar.Client/mod/scripts/vscripts/cl_northstar_client_init.nut b/Northstar.Client/mod/scripts/vscripts/cl_northstar_client_init.nut
index a844478a..765d29c3 100644
--- a/Northstar.Client/mod/scripts/vscripts/cl_northstar_client_init.nut
+++ b/Northstar.Client/mod/scripts/vscripts/cl_northstar_client_init.nut
@@ -1,3 +1,11 @@
+global enum eDiscordGameState
+{
+ LOADING = 0
+ MAINMENU
+ LOBBY
+ INGAME
+}
+
global struct GameStateStruct {
string map
@@ -15,10 +23,7 @@ global struct GameStateStruct {
}
global struct UIPresenceStruct {
- bool isLoading
- bool isLobby
- string loadingLevel
- string loadedLevel
+ int gameState
}
global struct RequiredModInfo
diff --git a/Northstar.Client/mod/scripts/vscripts/presence/cl_presence.nut b/Northstar.Client/mod/scripts/vscripts/presence/cl_presence.nut
index c8a8274a..f17216fb 100644
--- a/Northstar.Client/mod/scripts/vscripts/presence/cl_presence.nut
+++ b/Northstar.Client/mod/scripts/vscripts/presence/cl_presence.nut
@@ -1,10 +1,8 @@
untyped
globalize_all_functions
-void function NorthstarCodeCallback_GenerateGameState() {
-
- GameStateStruct gs
-
+GameStateStruct function DiscordRPC_GenerateGameState( GameStateStruct gs )
+{
int highestScore = 0
int secondHighest = 0
@@ -40,6 +38,5 @@ void function NorthstarCodeCallback_GenerateGameState() {
gs.timeEnd = expect float(level.nv.roundEndTime - Time())
else
gs.timeEnd = expect float(level.nv.gameEndTime - Time())
-
- NSPushGameStateData(gs)
-} \ No newline at end of file
+ return gs
+}
diff --git a/Northstar.Client/mod/scripts/vscripts/presence/ui_presence.nut b/Northstar.Client/mod/scripts/vscripts/presence/ui_presence.nut
index cdf1c981..ce5abe86 100644
--- a/Northstar.Client/mod/scripts/vscripts/presence/ui_presence.nut
+++ b/Northstar.Client/mod/scripts/vscripts/presence/ui_presence.nut
@@ -1,12 +1,16 @@
untyped
globalize_all_functions
-void function NorthstarCodeCallback_GenerateUIPresence() {
- UIPresenceStruct uis
+UIPresenceStruct function DiscordRPC_GenerateUIPresence( UIPresenceStruct uis )
+{
+ if ( uiGlobal.isLoading )
+ uis.gameState = eDiscordGameState.LOADING;
+ else if ( uiGlobal.loadedLevel == "" )
+ uis.gameState = eDiscordGameState.MAINMENU;
+ else if ( IsLobby() || uiGlobal.loadedLevel == "mp_lobby" )
+ uis.gameState = eDiscordGameState.LOBBY;
+ else
+ uis.gameState = eDiscordGameState.INGAME;
- uis.isLoading = uiGlobal.isLoading
- uis.isLobby = IsLobby()
- uis.loadingLevel = uiGlobal.loadingLevel
- uis.loadedLevel = uiGlobal.loadedLevel
- NSPushUIPresence(uis)
-} \ No newline at end of file
+ return uis
+}