From: FruitieX Date: Sat, 11 Dec 2010 20:03:15 +0000 (+0200) Subject: Merge remote branch 'origin/master' into fruitiex/ctsfix X-Git-Tag: xonotic-v0.1.0preview~51^2~8 X-Git-Url: http://de.git.xonotic.org/?a=commitdiff_plain;ds=inline;h=9abf8f085ddcfdc7ed88965c6edfa812928c48c8;hp=-c;p=xonotic%2Fxonotic-data.pk3dir.git Merge remote branch 'origin/master' into fruitiex/ctsfix --- 9abf8f085ddcfdc7ed88965c6edfa812928c48c8 diff --combined qcsrc/server/cl_client.qc index 6ac29a7f8,d1720a4d4..fac1c0e57 --- a/qcsrc/server/cl_client.qc +++ b/qcsrc/server/cl_client.qc @@@ -1272,11 -1272,6 +1272,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) @@@ -1308,19 -1303,19 +1308,19 @@@ void ClientKill_TeamChange (float targe entity e; killtime = autocvar_g_balance_kill_delay; - if(g_race_qualifying) + if(g_race_qualifying || g_cts) killtime = 0; - if(self.modelindex && self.deadflag == DEAD_NO) - { - killtime = max(killtime, self.clientkill_nexttime - time); - self.clientkill_nexttime = time + killtime + autocvar_g_balance_kill_antispam; - } - self.killindicator_teamchange = targetteam; - if(!self.killindicator) + if(!self.killindicator) { + if(self.modelindex && self.deadflag == DEAD_NO) + { + killtime = max(killtime, self.clientkill_nexttime - time); + self.clientkill_nexttime = time + killtime + autocvar_g_balance_kill_antispam; + } + if(killtime <= 0 || !self.modelindex || self.deadflag != DEAD_NO) { ClientKill_Now(); @@@ -1381,14 -1376,20 +1381,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) @@@ -2738,7 -2739,7 +2738,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)