From d914463adf967d65345d378e422297683b55db21 Mon Sep 17 00:00:00 2001
From: terencehill <piuntn@gmail.com>
Date: Sun, 4 Sep 2016 22:23:57 +0200
Subject: [PATCH] CA: Reset .team when a player chooses to spectate; remove
 ForbidPlayerScore_Clear hook call in CA as it serves no purpose (scores
 aren't clear in team games anyway)

---
 qcsrc/server/mutators/mutator/gamemode_ca.qc | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/qcsrc/server/mutators/mutator/gamemode_ca.qc b/qcsrc/server/mutators/mutator/gamemode_ca.qc
index 4707e9fca0..84f668bab5 100644
--- a/qcsrc/server/mutators/mutator/gamemode_ca.qc
+++ b/qcsrc/server/mutators/mutator/gamemode_ca.qc
@@ -277,25 +277,20 @@ MUTATOR_HOOKFUNCTION(ca, ClientDisconnect)
 	return true;
 }
 
-MUTATOR_HOOKFUNCTION(ca, ForbidPlayerScore_Clear)
-{
-	return true;
-}
-
 MUTATOR_HOOKFUNCTION(ca, MakePlayerObserver)
 {
     entity player = M_ARGV(0, entity);
 
 	if (!IS_DEAD(player))
 		ca_LastPlayerForTeam_Notify(player);
-	if (player.killindicator_teamchange == -2)
+	if (player.killindicator_teamchange == -2) // player wants to spectate
 		player.caplayer = 0;
 	if (player.caplayer)
 		player.frags = FRAGS_LMS_LOSER;
-    else
-        player.frags = FRAGS_SPECTATOR;
 	if (!warmup_stage)
 		eliminatedPlayers.SendFlags |= 1;
+	if (!player.caplayer)
+		return false;  // allow team reset
 	return true;  // prevent team reset
 }
 
-- 
2.39.5