From 8e801d2dfc55873e6447a013a448e1b741a5febf Mon Sep 17 00:00:00 2001 From: Altair Sossai Date: Fri, 22 Nov 2024 08:44:59 -0300 Subject: [PATCH] Add tank death tracking to game info synchronization --- .../plugins/optional/l4d2_gameinfo_sync.smx | Bin 16010 -> 16266 bytes .../sourcemod/scripting/l4d2_gameinfo_sync.sp | 24 +++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/addons/sourcemod/plugins/optional/l4d2_gameinfo_sync.smx b/addons/sourcemod/plugins/optional/l4d2_gameinfo_sync.smx index c20782cb4dac1823d894a639b0f6426a00f14b57..c01dcf315c88dfbfccb4f167c08008d8ca28c95b 100644 GIT binary patch literal 16266 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 nBQY|gNsEK2J?O!a>NFlx=l delta 15857 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 T&KNL!dVn7lctMcAC35&b&y#R% diff --git a/addons/sourcemod/scripting/l4d2_gameinfo_sync.sp b/addons/sourcemod/scripting/l4d2_gameinfo_sync.sp index b6574ff87..07c23b133 100644 --- a/addons/sourcemod/scripting/l4d2_gameinfo_sync.sp +++ b/addons/sourcemod/scripting/l4d2_gameinfo_sync.sp @@ -16,6 +16,8 @@ #define L4D2_TEAM_SURVIVOR 2 #define L4D2_TEAM_INFECTED 3 +#define ZOMBIECLASS_TANK 8 + public Plugin myinfo = { name = "L4D2 - Game Info Sync", @@ -33,7 +35,9 @@ ConVar char g_sConfigurationName[64]; -bool g_bInTransition = false; +bool + g_bInTransition = false, + g_bTankIsDead = false; int g_iInfectedDamage[MAXPLAYERS + 1], @@ -54,6 +58,7 @@ public void OnPluginStart() HookEvent("round_start", RoundStart_Event); HookEvent("player_hurt", PlayerHurt_Event); + HookEvent("player_death", PlayerDeath_Event, EventHookMode_Post); HookEvent("player_disconnect", PlayerDisconnect_Event); CreateTimer(3.0, SyncData_Timer, _, TIMER_REPEAT); @@ -65,6 +70,7 @@ public void OnPluginStart() public void OnRoundIsLive() { g_bInTransition = false; + g_bTankIsDead = false; ClearInfectedDamage(); ClearSurvivorProgress(); @@ -130,6 +136,8 @@ Action Say_Callback(int client, char[] command, int args) void RoundStart_Event(Handle event, const char[] name, bool dontBroadcast) { + g_bTankIsDead = false; + ClearInfectedDamage(); ClearSurvivorProgress(); CreateTimer(5.0, RoundStart_Timer); @@ -145,6 +153,19 @@ void PlayerHurt_Event(Handle event, const char[] name, bool dontBroadcast) g_iInfectedDamage[attacker] += GetEventInt(event, "dmg_health"); } +void PlayerDeath_Event(Event hEvent, const char[] eName, bool dontBroadcast) +{ + if (g_bTankIsDead) + return; + + int victim = GetClientOfUserId(hEvent.GetInt("userid")); + + if (victim == 0 || !IsClientInGame(victim) || GetClientTeam(victim) != L4D2_TEAM_INFECTED) + return; + + g_bTankIsDead = GetEntProp(victim, Prop_Send, "m_zombieClass") == ZOMBIECLASS_TANK; +} + void PlayerDisconnect_Event(Handle event, const char[] name, bool dontBroadcast) { int client = GetClientOfUserId(GetEventInt(event, "userid")); @@ -248,6 +269,7 @@ void SendScoreboard() command.SetFloat("currentProgress", isInReady ? 0.0 : (GetCurrentProgress() / 100.0)); command.SetInt("currentProgressPoints", isInReady ? 0 : L4D_GetTeamScore(flipped ? 2 : 1)); command.SetBool("isTankInPlay", IsTankInPlay()); + command.SetBool("tankIsDead", g_bTankIsDead); HTTPRequest request = BuildHTTPRequest("/api/game-info/scoreboard");