From 269dda4ad2bf2ecf774f6a1f704b338d357811da Mon Sep 17 00:00:00 2001 From: x3Karma Date: Thu, 30 Dec 2021 14:27:17 +0800 Subject: adds timeout checker to PvP --- .../scripts/vscripts/gamemodes/_gamemode_ps.nut | 42 ++++++++++++++-------- 1 file changed, 27 insertions(+), 15 deletions(-) (limited to 'Northstar.CustomServers/mod') diff --git a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_ps.nut b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_ps.nut index 7e3e5ea2..7eec7c89 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_ps.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_ps.nut @@ -1,15 +1,27 @@ -global function GamemodePs_Init - -void function GamemodePs_Init() -{ - Riff_ForceTitanAvailability( eTitanAvailability.Never ) - - AddCallback_OnPlayerKilled( GiveScoreForPlayerKill ) - ScoreEvent_SetupEarnMeterValuesForMixedModes() -} - -void function GiveScoreForPlayerKill( entity victim, entity attacker, var damageInfo ) -{ - if ( victim != attacker && victim.IsPlayer() && attacker.IsPlayer() && GetGameState() != eGameState.Epilogue ) - AddTeamScore( attacker.GetTeam(), 1 ) -} +global function GamemodePs_Init + +void function GamemodePs_Init() +{ + Riff_ForceTitanAvailability( eTitanAvailability.Never ) + + AddCallback_OnPlayerKilled( GiveScoreForPlayerKill ) + ScoreEvent_SetupEarnMeterValuesForMixedModes() + SetTimeoutWinnerDecisionFunc( CheckScoreForDraw ) + +} + +void function GiveScoreForPlayerKill( entity victim, entity attacker, var damageInfo ) +{ + if ( victim != attacker && victim.IsPlayer() && attacker.IsPlayer() || GetGameState() != eGameState.Playing ) + AddTeamScore( attacker.GetTeam(), 1 ) +} + +int function CheckScoreForDraw() +{ + if (GameRules_GetTeamScore(TEAM_IMC) > GameRules_GetTeamScore(TEAM_MILITIA)) + return TEAM_IMC + else if (GameRules_GetTeamScore(TEAM_MILITIA) > GameRules_GetTeamScore(TEAM_IMC)) + return TEAM_MILITIA + + return TEAM_UNASSIGNED +} \ No newline at end of file -- cgit v1.2.3