From 6299259b9640843d62529df910193c94142a73ae Mon Sep 17 00:00:00 2001 From: milimoe Date: Fri, 1 Aug 2025 01:35:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B5=9B=E9=A9=ACBUG?= =?UTF-8?q?=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=85=B1=E6=96=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Library/Tests/HorseTest.cs | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/Library/Tests/HorseTest.cs b/Library/Tests/HorseTest.cs index d9f307f..cfce2f8 100644 --- a/Library/Tests/HorseTest.cs +++ b/Library/Tests/HorseTest.cs @@ -10,19 +10,32 @@ namespace Milimoe.FunGame.Testing.Tests public static void HorseTest1() { List msgs = []; + Room room = Factory.GetRoom(1, "1", gameMap: "1"); + room.Name = "赛马房间"; + Dictionary points = []; + for (int i = 0; i < 9; i++) + { + User user = Factory.GetUser(); + user.Id = i; + user.Username = FunGameService.GenerateRandomChineseUserName(); + room.UserAndIsReady.Add(user, true); + points[user] = 0; + if (i == 0) room.RoomMaster = user; + } + int plays = 0; while (true) { - Room room = Factory.GetRoom(1, "1", gameMap: "1"); - room.Name = "赛马房间"; - for (int i = 0; i < 5; i++) + plays++; + Dictionary racingPoints = HorseRacing.RunHorseRacing(msgs, room); + foreach (long userId in racingPoints.Keys) { - User user = Factory.GetUser(); - user.Username = FunGameService.GenerateRandomChineseUserName(); - room.UserAndIsReady.Add(user, true); - if (i == 0) room.RoomMaster = user; + if (points.Keys.FirstOrDefault(u => u.Id == userId) is User user) + { + points[user] += racingPoints[userId]; + } } - HorseRacing.RunHorseRacing(msgs, room); Console.WriteLine(string.Join("\r\n", msgs)); + Console.WriteLine($"\r\n====赛马积分排行榜====\r\n比赛场次:{plays} 场\r\n" + string.Join("\r\n", points.OrderByDescending(kv => kv.Value).Select((kv, index) => (index + 1) + ". " + kv.Key + ":" + kv.Value + " 分"))); if (Console.ReadKey().Key == ConsoleKey.Escape) { break;