2 float autocvar_g_kick_teamkiller_rate;
3 float autocvar_g_kick_teamkiller_lower_limit;
5 REGISTER_MUTATOR(kick_teamkiller, (autocvar_g_kick_teamkiller_rate > 0));
7 MUTATOR_HOOKFUNCTION(kick_teamkiller, PlayerDies)
17 entity attacker = M_ARGV(1, entity);
18 if (!IS_REAL_CLIENT(attacker))
23 int teamkills = PlayerScore_Get(attacker, SP_TEAMKILLS);
24 // use the players actual playtime
25 float playtime = time - CS(attacker).startplaytime;
26 // rate is in teamkills/minutes, playtime in seconds
27 if (teamkills >= autocvar_g_kick_teamkiller_lower_limit &&
28 teamkills >= autocvar_g_kick_teamkiller_rate*playtime/60.0)
30 Send_Notification(NOTIF_ALL, NULL, MSG_INFO, INFO_QUIT_KICK_TEAMKILL, attacker.netname);