From 207facbc402f5639cbcd31f079214351ef605cf2 Mon Sep 17 00:00:00 2001 From: BobTheBob <32057864+BobTheBob9@users.noreply.github.com> Date: Tue, 22 Jun 2021 14:30:49 +0100 Subject: initial commit after moving to new repo --- .../scripts/vscripts/mp/_classic_mp.nut | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Northstar.CustomServers/scripts/vscripts/mp/_classic_mp.nut (limited to 'Northstar.CustomServers/scripts/vscripts/mp/_classic_mp.nut') diff --git a/Northstar.CustomServers/scripts/vscripts/mp/_classic_mp.nut b/Northstar.CustomServers/scripts/vscripts/mp/_classic_mp.nut new file mode 100644 index 000000000..d6ac8f55a --- /dev/null +++ b/Northstar.CustomServers/scripts/vscripts/mp/_classic_mp.nut @@ -0,0 +1,67 @@ +untyped +global function ClassicMp_Init +global function ClassicMP_TryDefaultIntroSetup // called in mp_sh_init +global function ClassicMP_SetCustomIntro +global function ClassicMP_OnIntroStarted +global function ClassicMP_OnIntroFinished +global function ClassicMP_GetIntroLength +global function GetClassicMPMode + +struct { + void functionref() introSetupFunc + float introLength +} file + +void function ClassicMp_Init() +{ + // literally nothing to do here atm lol +} + +void function ClassicMP_TryDefaultIntroSetup() +{ + if ( file.introSetupFunc == null ) + { + if ( IsFFAGame() ) + ClassicMP_SetCustomIntro( ClassicMP_DefaultNoIntro_Setup, NOINTRO_INTRO_LENGTH ) + else + ClassicMP_SetCustomIntro( ClassicMP_DefaultDropshipIntro_Setup, DROPSHIP_INTRO_LENGTH ) + } + + thread DelayedDoDefaultIntroSetup() +} + +void function DelayedDoDefaultIntroSetup() +{ + // wait a frame for CodeCallback_MapInit to run which generally sets custom intros + WaitFrame() + file.introSetupFunc() +} + +void function ClassicMP_SetCustomIntro( void functionref() setupFunc, float introLength ) +{ + file.introSetupFunc = setupFunc + file.introLength = introLength +} + +void function ClassicMP_OnIntroStarted() +{ + print( "started intro!" ) + SetServerVar( "gameStartTime", Time() + file.introLength ) + SetServerVar( "roundStartTime", Time() + file.introLength ) +} + +void function ClassicMP_OnIntroFinished() +{ + print( "intro finished!" ) + SetGameState( eGameState.Playing ) +} + +float function ClassicMP_GetIntroLength() +{ + return file.introLength +} + +bool function GetClassicMPMode() +{ + return GetCurrentPlaylistVarInt( "classic_mp", 1 ) == 1 +} \ No newline at end of file -- cgit v1.2.3