From 442956c34d480475b22d2034a03dd895ae8f3511 Mon Sep 17 00:00:00 2001 From: glax Date: Mon, 15 Jan 2024 02:22:43 +0100 Subject: [PATCH] Fix wrong OnDeath trigger --- OpenCS2hock/CS2MessageHandler.cs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/OpenCS2hock/CS2MessageHandler.cs b/OpenCS2hock/CS2MessageHandler.cs index 5aef352..c84d6da 100644 --- a/OpenCS2hock/CS2MessageHandler.cs +++ b/OpenCS2hock/CS2MessageHandler.cs @@ -15,12 +15,8 @@ internal class CS2MessageHandler internal void HandleCS2Message(string message, string mySteamId) { JObject messageJson = JObject.Parse(message); - string? steamId = messageJson.SelectToken("player.steamid", false)?.Value(); - if (steamId is null || steamId != mySteamId) - { - Console.WriteLine("Not my steamid"); - return; - } + string? previousSteamId = messageJson.SelectToken("previously.player.steamid", false)?.Value(); + string? currentSteamId = messageJson.SelectToken("player.steamid", false)?.Value(); RoundState currentRoundState = ParseRoundStateFromString(messageJson.SelectToken("round.phase", false)?.Value()); RoundState previousRoundState = ParseRoundStateFromString(messageJson.SelectToken("previously.round.phase", false)?.Value()); @@ -40,12 +36,12 @@ internal class CS2MessageHandler int? previousDeaths = messageJson.SelectToken("previously.player.match_stats.deaths", false)?.Value(); int? currentDeaths = messageJson.SelectToken("player.match_stats.deaths", false)?.Value(); - if(currentDeaths > previousDeaths) + if(currentSteamId == mySteamId && previousSteamId == currentSteamId && currentDeaths > previousDeaths) OnDeath?.Invoke(); int? previousKills = messageJson.SelectToken("previously.player.match_stats.kills", false)?.Value(); int? currentKills = messageJson.SelectToken("player.match_stats.kills", false)?.Value(); - if(currentKills > previousKills) + if(currentSteamId == mySteamId && previousSteamId == currentSteamId && currentKills > previousKills) OnKill?.Invoke(); }