From 61f2c17f41b7b0935413819a8e93d98f66063c08 Mon Sep 17 00:00:00 2001 From: Jackz Date: Thu, 3 Jun 2021 19:07:34 -0500 Subject: [PATCH] TKStopper: Prevent idle trolls TK at the end --- plugins/l4d2_TKStopper.smx | Bin 8066 -> 8577 bytes scripting/l4d2_TKStopper.sp | 35 +++++++++++++++++++++++++++++------ 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/plugins/l4d2_TKStopper.smx b/plugins/l4d2_TKStopper.smx index 80ad3f92dd96f83d94ebcb7acfe0af4e33e09a64..92363ef058e24f39d017621e3ef50b42a1467447 100644 GIT binary patch delta 8428 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 delta 7913 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 rzf~sx7 bool lateLoaded, IsFinaleEnding, isPlayerTroll[MAXPLAYERS+1], isImmune[MAXPLAYERS+1], isUnderAttack[MAXPLAYERS+1]; -int iJoinTime[MAXPLAYERS+1]; +int iJoinTime[MAXPLAYERS+1], iIdleStartTime[MAXPLAYERS+1]; float playerTotalDamageFF[MAXPLAYERS+1]; int lastFF[MAXPLAYERS+1]; @@ -69,6 +69,9 @@ public void OnPluginStart() HookEvent("jockey_ride", Event_JockeyRide); HookEvent("jockey_ride_end", Event_JockeyRide); + HookEvent("player_bot_replace", Event_PlayerToBot); + HookEvent("bot_player_replace", Event_BotToPlayer); + RegAdminCmd("sm_ignore", Command_IgnorePlayer, ADMFLAG_KICK, "Makes a player immune for any anti trolling detection for a session"); @@ -127,6 +130,22 @@ public Action Event_JockeyRide(Event event, const char[] name, bool dontBroadcas } } /////////////////////////////////////////////////////////////////////////////// +// IDLE +/////////////////////////////////////////////////////////////////////////////// +public Action Event_BotToPlayer(Handle event, const char[] name, bool dontBroadcast) { + int player = GetClientOfUserId(GetEventInt(event, "player")); + + if (!IsValidClient(player) || (GetClientTeam(player) != 2 && GetClientTeam(player) != 3) || IsFakeClient(player)) return; // ignore fake players (side product of creating bots) + + if(GetTime() - iIdleStartTime[player] >= 60000) { + iJoinTime[player] = GetTime(); + } +} +public Action Event_PlayerToBot(Handle event, char[] name, bool dontBroadcast) { + int player = GetClientOfUserId(GetEventInt(event, "player")); + iIdleStartTime[player] = GetTime(); +} +/////////////////////////////////////////////////////////////////////////////// // Misc events /////////////////////////////////////////////////////////////////////////////// public void Event_FinaleVehicleReady(Event event, const char[] name, bool dontBroadcast) { @@ -231,12 +250,16 @@ public Action Command_IgnorePlayer(int client, int args) { for(int i = 0; i < target_count; i++) { int target = target_list[i]; - if(isImmune[target]) { - ShowActivity2(client, "[FTT] ", "%N has re-enabled teamkiller detection for %N", client, target); - } else { - ShowActivity2(client, "[FTT] ", "%N has ignored teamkiller detection for %N", client, target); + if(GetUserAdmin(target) != INVALID_ADMIN_ID) { + ReplyToCommand(client, "%N is an admin and is already immune."); + }else{ + if(isImmune[target]) { + ShowActivity2(client, "[FTT] ", "%N has re-enabled teamkiller detection for %N", client, target); + } else { + ShowActivity2(client, "[FTT] ", "%N has ignored teamkiller detection for %N", client, target); + } + isImmune[target] = !isImmune[target]; } - isImmune[target] = !isImmune[target]; isPlayerTroll[target] = false; }