From 7da0ac6fa94055e6ea5e650d2d1428a8a8572145 Mon Sep 17 00:00:00 2001 From: Chomp Date: Fri, 7 Feb 2025 12:06:39 +0000 Subject: [PATCH] Added `GarbageMessageHandler` "garbage" command to `SPT Friend` Fixed namespaces --- .../Commands/AreYouABotMessageHandler.cs | 3 +- .../Commands/GarbageMessageHandler.cs | 42 +++++++++++++++++++ .../SPTFriend/Commands/HelloMessageHandler.cs | 1 - 3 files changed, 43 insertions(+), 3 deletions(-) create mode 100644 Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/GarbageMessageHandler.cs diff --git a/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/AreYouABotMessageHandler.cs b/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/AreYouABotMessageHandler.cs index 05c53f15..098a9ed8 100644 --- a/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/AreYouABotMessageHandler.cs +++ b/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/AreYouABotMessageHandler.cs @@ -1,11 +1,10 @@ -using Core.Helpers.Dialogue.SPTFriend.Commands; using Core.Models.Eft.Common; using Core.Models.Eft.Profile; using Core.Services; using Core.Utils; using SptCommon.Annotations; -namespace Core.Helpers.Dialogue.SptMessageHandlers; +namespace Core.Helpers.Dialogue.SPTFriend.Commands; [Injectable] public class AreYouABotMessageHandler( diff --git a/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/GarbageMessageHandler.cs b/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/GarbageMessageHandler.cs new file mode 100644 index 00000000..44ca995d --- /dev/null +++ b/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/GarbageMessageHandler.cs @@ -0,0 +1,42 @@ +using Core.Models.Eft.Common; +using Core.Models.Eft.Profile; +using Core.Services; +using Core.Utils; +using SptCommon.Annotations; + +namespace Core.Helpers.Dialogue.SPTFriend.Commands; + +[Injectable] +public class GarbageMessageHandler( + MailSendService _mailSendService, + RandomUtil _randomUtil) : IChatMessageHandler +{ + public int GetPriority() + { + return 100; + } + + public bool CanHandle(string message) + { + return message.ToLower() == "garbage"; + } + + public void Process(string sessionId, UserDialogInfo sptFriendUser, PmcData sender) + { + var beforeCollect = GC.GetTotalMemory(false) / 1024 / 1024; + + GC.Collect(GC.MaxGeneration, GCCollectionMode.Aggressive, true, true); + + var afterCollect = GC.GetTotalMemory(false) / 1024 / 1024; + + _mailSendService.SendUserMessageToPlayer( + sessionId, + sptFriendUser, + $"Before: {beforeCollect}MB, After: {afterCollect}MB", + [], + null + ); + + + } +} diff --git a/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/HelloMessageHandler.cs b/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/HelloMessageHandler.cs index b764414c..f89fb89f 100644 --- a/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/HelloMessageHandler.cs +++ b/Libraries/Core/Helpers/Dialogue/SPTFriend/Commands/HelloMessageHandler.cs @@ -1,4 +1,3 @@ -using Core.Helpers.Dialog.Commando.SptCommands; using Core.Models.Eft.Common; using Core.Models.Eft.Dialog; using Core.Models.Eft.Profile;