diff --git a/src/AIChatPlugin/AIChatPlugin.cs b/src/AIChatPlugin/AIChatPlugin.cs index 294747ad6..e9d9913e0 100644 --- a/src/AIChatPlugin/AIChatPlugin.cs +++ b/src/AIChatPlugin/AIChatPlugin.cs @@ -80,10 +80,6 @@ private void OnPlayerLogout(PlayerLogoutEventArgs e) { playerContexts.Remove(playerId); } - if (isProcessing.ContainsKey(playerId)) - { - isProcessing.Remove(playerId); - } } private void BotReset(CommandArgs args) { diff --git a/src/AIChatPlugin/Utils.cs b/src/AIChatPlugin/Utils.cs index 68586195c..c51964a05 100644 --- a/src/AIChatPlugin/Utils.cs +++ b/src/AIChatPlugin/Utils.cs @@ -10,12 +10,12 @@ internal class Utils { #region 问题审核 public static readonly Dictionary> playerContexts = new(); - public static readonly Dictionary isProcessing = new(); public static DateTime lastCmdTime = DateTime.MinValue; + public static bool isProcessing = false; public static void ChatWithAI(TSPlayer player, string question) { var playerIndex = player.Index; - if (isProcessing.Values.Any(p => p)) + if (isProcessing) { player.SendErrorMessage(GetString("[i:1344]有其他玩家在询问问题,请排队[i:1344]")); return; @@ -27,7 +27,7 @@ public static void ChatWithAI(TSPlayer player, string question) } lastCmdTime = DateTime.Now; player.SendSuccessMessage(GetString("[i:1344]正在处理您的请求,请稍候...[i:1344]")); - isProcessing[playerIndex] = true; + isProcessing = true; Task.Run(async () => { try @@ -44,7 +44,7 @@ public static void ChatWithAI(TSPlayer player, string question) } finally { - isProcessing[playerIndex] = false; + isProcessing = false; } }); }