diff --git a/Application/IW4MServer.cs b/Application/IW4MServer.cs index 0fdc6d8b..3d44e6e9 100644 --- a/Application/IW4MServer.cs +++ b/Application/IW4MServer.cs @@ -785,7 +785,7 @@ namespace IW4MAdmin var polledClients = await PollPlayersAsync(); - foreach (var disconnectingClient in polledClients[1]) + foreach (var disconnectingClient in polledClients[1].Where(_client => !_client.IsZombieClient /* ignores "fake" zombie clients */)) { disconnectingClient.CurrentServer = this; var e = new GameEvent() diff --git a/SharedLibraryCore/PartialEntities/EFClient.cs b/SharedLibraryCore/PartialEntities/EFClient.cs index 0361c7bd..ee6234d4 100644 --- a/SharedLibraryCore/PartialEntities/EFClient.cs +++ b/SharedLibraryCore/PartialEntities/EFClient.cs @@ -657,6 +657,8 @@ namespace SharedLibraryCore.Database.Models [NotMapped] public bool IsBot => NetworkId == Name.GenerateGuidFromString(); [NotMapped] + public bool IsZombieClient => IsBot && Name == "Zombie"; + [NotMapped] public string XuidString => (NetworkId + 0x110000100000000).ToString("x"); [NotMapped] public string GuidString => NetworkId.ToString("x");