From 135fc98e1cec7bb12cb63d4473f0dda953b6e234 Mon Sep 17 00:00:00 2001 From: RaidMax Date: Fri, 12 Jul 2024 22:08:23 -0500 Subject: [PATCH] use correct EFClient return time for ScriptPluginExtensions and provide IPAddress on game interface data --- Application/Extensions/ScriptPluginExtensions.cs | 4 ++-- Plugins/ScriptPlugins/GameInterface.js | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Application/Extensions/ScriptPluginExtensions.cs b/Application/Extensions/ScriptPluginExtensions.cs index bc6fd5e7..3394434c 100644 --- a/Application/Extensions/ScriptPluginExtensions.cs +++ b/Application/Extensions/ScriptPluginExtensions.cs @@ -1,8 +1,8 @@ using System.Collections.Generic; using System.Linq; -using Data.Models.Client; using Data.Models.Client.Stats; using Microsoft.EntityFrameworkCore; +using SharedLibraryCore.Database.Models; using SharedLibraryCore.Interfaces; namespace IW4MAdmin.Application.Extensions; @@ -29,7 +29,7 @@ public static class ScriptPluginExtensions } public static EFClient GetClientByNumber(this IGameServer server, int clientNumber) => - server.ConnectedClients.FirstOrDefault(client => client.ClientNumber == clientNumber); + server.ConnectedClients.FirstOrDefault(client => client.ClientNumber >= 0 && client.ClientNumber == clientNumber); public static EFClient GetClientByGuid(this IGameServer server, string clientGuid) => server.ConnectedClients.FirstOrDefault(client => client?.GuidString == clientGuid?.Trim().ToLower()); diff --git a/Plugins/ScriptPlugins/GameInterface.js b/Plugins/ScriptPlugins/GameInterface.js index abbeca8d..699106d5 100644 --- a/Plugins/ScriptPlugins/GameInterface.js +++ b/Plugins/ScriptPlugins/GameInterface.js @@ -262,7 +262,8 @@ const plugin = { clientId: client.clientId, lastConnection: client.timeSinceLastConnectionString, tag: tagMeta?.value ?? '', - performance: clientStats?.performance ?? 200.0 + performance: clientStats?.performance ?? 200.0, + ipAddress: client.ipAddressString }; }