X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fserver%2Fcl_client.qc;h=c1005d0036b9cd18f67eb3598956a4dd80a5fc23;hp=5ff519bd70695e15627a7680d7342b2ef9f441d7;hb=54b92b8079815c12f27fdc8b29b170474beb6961;hpb=2cadc72988aea7350f32343cf31adeeddade0c8e diff --git a/qcsrc/server/cl_client.qc b/qcsrc/server/cl_client.qc index 5ff519bd70..c1005d0036 100644 --- a/qcsrc/server/cl_client.qc +++ b/qcsrc/server/cl_client.qc @@ -1263,6 +1263,11 @@ void KillIndicator_Think() ClientKill_Now(); // no oldself needed return; } + else if(g_cts) + { + self.nextthink = time + 1; + self.cnt -= 1; + } else { if(self.cnt <= 10) @@ -1297,7 +1302,13 @@ void ClientKill_TeamChange (float targetteam) // 0 = don't change, -1 = auto self.killindicator_teamchange = targetteam; - if(!self.killindicator) + if(g_cts) // allow an instant kill in CTS + { + ClientKill_Now(); + return; + } + + else if(!self.killindicator) { if(killtime <= 0 || !self.modelindex || self.deadflag != DEAD_NO) { @@ -1355,20 +1366,14 @@ void ClientKill (void) ClientKill_TeamChange(0); } -void CTS_ClientKill_Think (void) +void CTS_ClientKill (entity e) // silent version of ClientKill { - self = self.owner; // set self to the player to be killed - sprint(self, "^1You were killed in order to prevent cheating!"); - ClientKill_Now(); -} - -void CTS_ClientKill (float t) // silent version of ClientKill -{ - entity e; - e = spawn(); - e.owner = self; - e.think = CTS_ClientKill_Think; - e.nextthink = t; + e.killindicator = spawn(); + e.killindicator.owner = e; + e.killindicator.think = KillIndicator_Think; + e.killindicator.nextthink = time + (e.lip) * 0.05; + e.killindicator.cnt = ceil(autocvar_g_cts_finish_kill_delay); + e.lip = 0; } void DoTeamChange(float destteam) @@ -2718,7 +2723,7 @@ void PlayerPreThink (void) if(frametime) player_anim(); button_pressed = (self.BUTTON_ATCK || self.BUTTON_JUMP || self.BUTTON_ATCK2 || self.BUTTON_HOOK || self.BUTTON_USE); - force_respawn = (g_lms || (g_ca) || autocvar_g_forced_respawn); + force_respawn = (g_lms || g_ca || g_cts || autocvar_g_forced_respawn); if (self.deadflag == DEAD_DYING) { if(force_respawn)