aboutsummaryrefslogtreecommitdiff
path: root/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-08-31 23:14:58 +0100
committerBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-08-31 23:14:58 +0100
commit9a96d0bff56f1969c68bb52a2f33296095bdc67d (patch)
tree4175928e488632705692e3cccafa1a38dd854615 /Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut
parent27bd240871b7c0f2f49fef137718b2e3c208e3b4 (diff)
downloadNorthstarMods-9a96d0bff56f1969c68bb52a2f33296095bdc67d.tar.gz
NorthstarMods-9a96d0bff56f1969c68bb52a2f33296095bdc67d.zip
move to new mod format
Diffstat (limited to 'Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut')
-rw-r--r--Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut55
1 files changed, 55 insertions, 0 deletions
diff --git a/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut b/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut
new file mode 100644
index 000000000..7cd91de9d
--- /dev/null
+++ b/Northstar.Custom/mod/scripts/vscripts/gamemodes/sh_gamemode_kr.gnut
@@ -0,0 +1,55 @@
+global function Sh_GamemodeKR_Init
+
+global const string GAMEMODE_KR = "kr"
+
+void function Sh_GamemodeKR_Init()
+{
+ // create custom gamemode
+ AddCallback_OnCustomGamemodesInit( CreateGamemodeKR )
+ AddCallback_OnRegisteringCustomNetworkVars( KRRegisterNetworkVars )
+}
+
+void function CreateGamemodeKR()
+{
+ GameMode_Create( GAMEMODE_KR )
+ GameMode_SetName( GAMEMODE_KR, "#GAMEMODE_kr" )
+ GameMode_SetDesc( GAMEMODE_KR, "#PL_kr_desc" )
+ GameMode_SetGameModeAnnouncement( GAMEMODE_KR, "ffa_modeDesc" )
+ GameMode_SetDefaultTimeLimits( GAMEMODE_KR, 10, 0.0 )
+ GameMode_AddScoreboardColumnData( GAMEMODE_KR, "#SCOREBOARD_KR_RECORD", PGS_ASSAULT_SCORE, 2 )
+ GameMode_AddScoreboardColumnData( GAMEMODE_KR, "#SCOREBOARD_PILOT_KILLS", PGS_PILOT_KILLS, 2 )
+ GameMode_SetColor( GAMEMODE_KR, [147, 204, 57, 255] )
+
+ AddPrivateMatchMode( GAMEMODE_KR ) // add to private lobby modes
+
+ #if SERVER
+ GameMode_AddServerInit( GAMEMODE_KR, GamemodeKR_Init )
+ GameMode_AddServerInit( GAMEMODE_KR, GamemodeFFAShared_Init )
+ GameMode_SetPilotSpawnpointsRatingFunc( GAMEMODE_KR, RateSpawnpoints_Generic )
+ GameMode_SetTitanSpawnpointsRatingFunc( GAMEMODE_KR, RateSpawnpoints_Generic )
+ #elseif CLIENT
+ GameMode_AddClientInit( GAMEMODE_KR, ClGamemodeKR_Init )
+ GameMode_AddClientInit( GAMEMODE_KR, GamemodeFFAShared_Init )
+ GameMode_AddClientInit( GAMEMODE_KR, ClGamemodeFFA_Init )
+ #endif
+ #if !UI
+ GameMode_SetScoreCompareFunc( GAMEMODE_KR, CompareAssaultScore )
+ GameMode_AddSharedInit( GAMEMODE_KR, GamemodeFFA_Dialogue_Init )
+ #endif
+}
+
+void function KRRegisterNetworkVars()
+{
+ if ( GAMETYPE != GAMEMODE_KR )
+ return
+
+ Remote_RegisterFunction( "ServerCallback_FlagSpawnIncoming" )
+ Remote_RegisterFunction( "ServerCallback_NewKillRacer" )
+ Remote_RegisterFunction( "ServerCallback_EndKillrace" )
+
+ RegisterNetworkedVariable( "killRaceTime", SNDC_PLAYER_EXCLUSIVE, SNVT_TIME, 0.0 )
+
+ #if CLIENT
+ RegisterNetworkedVariableChangeCallback_time( "killRaceTime", ShowTimeGainOnKill )
+ #endif
+} \ No newline at end of file