aboutsummaryrefslogtreecommitdiff
path: root/_gamemode_ps.nut
diff options
context:
space:
mode:
Diffstat (limited to '_gamemode_ps.nut')
-rw-r--r--_gamemode_ps.nut27
1 files changed, 27 insertions, 0 deletions
diff --git a/_gamemode_ps.nut b/_gamemode_ps.nut
new file mode 100644
index 000000000..7eec7c89f
--- /dev/null
+++ b/_gamemode_ps.nut
@@ -0,0 +1,27 @@
+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