From 11fe82ea718281a40379c321635984461d73f8db Mon Sep 17 00:00:00 2001 From: milimoe Date: Mon, 14 Apr 2025 01:29:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=8A=80=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Library/Tests/FunGame.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Library/Tests/FunGame.cs b/Library/Tests/FunGame.cs index 11ff33c..c617167 100644 --- a/Library/Tests/FunGame.cs +++ b/Library/Tests/FunGame.cs @@ -440,7 +440,7 @@ namespace Milimoe.FunGame.Testing.Tests } } - private static async Task ActionQueue_QueueUpdated(ActionQueue queue, List characters, Character character, QueueUpdatedReason reason, string msg) + private static async Task ActionQueue_QueueUpdated(ActionQueue queue, List characters, Character character, double hardnessTime, QueueUpdatedReason reason, string msg) { if (IsPlayer_OnlyTest(queue, character)) { @@ -679,10 +679,10 @@ namespace Milimoe.FunGame.Testing.Tests private static async Task ActionQueue_TurnEnd(ActionQueue queue, Character character) { - if (IsPlayer_OnlyTest(queue, character)) + if (IsRoundHasPlayer_OnlyTest(queue, character)) { // 暂停让玩家查看本回合日志 - Console.WriteLine("你的回合已结束,按任意键继续. . ."); + Console.WriteLine("你的回合(或与你相关的回合)已结束,请查看本回合日志,然后按任意键继续. . ."); await Console.In.ReadLineAsync(); } await Task.CompletedTask; @@ -695,6 +695,7 @@ namespace Milimoe.FunGame.Testing.Tests { await Task.Run(() => { + Console.WriteLine(character.GetSimpleInfo()); while (type == CharacterActionType.None) { Console.Write("现在是你的回合!1:普通攻击,2:使用技能,5:使用物品,6:直接结束回合\r\n请告诉我你的行动:"); @@ -744,6 +745,11 @@ namespace Milimoe.FunGame.Testing.Tests { return queue.CustomData.TryGetValue("player", out object? value) && value is Character player && player == current; } + + private static bool IsRoundHasPlayer_OnlyTest(ActionQueue queue, Character current) + { + return queue.CustomData.TryGetValue("player", out object? value) && value is Character player && (player == current || (current.CharacterState != CharacterState.Casting && queue.LastRound.Targets.Any(c => c == player))); + } public static void WriteLine(string str) {