From dcf922fa3fc664a03881084653e0c341cbf7eade Mon Sep 17 00:00:00 2001 From: milimoe Date: Sat, 21 Sep 2024 16:45:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=B9=B3=E5=9D=87=E5=90=8D?= =?UTF-8?q?=E6=AC=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Api/Utility/ActionQueue.cs | 25 ++++++++++++------------ Entity/Statistics/CharacterStatistics.cs | 2 ++ 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/Api/Utility/ActionQueue.cs b/Api/Utility/ActionQueue.cs index 78591ac..d892b7c 100644 --- a/Api/Utility/ActionQueue.cs +++ b/Api/Utility/ActionQueue.cs @@ -1093,35 +1093,34 @@ namespace Milimoe.FunGame.Core.Api.Utility WriteLine("=== 排名 ==="); for (int i = _eliminated.Count - 1; i >= 0; i--) { - string topCharacter = _eliminated[i].ToString() + (_continuousKilling.TryGetValue(_eliminated[i], out int kills) && kills > 1 ? $" [ {CharacterSet.GetContinuousKilling(kills)} ]" : "") + (_earnedMoney.TryGetValue(_eliminated[i], out int earned) ? $" [ 已赚取 {earned} 金钱 ]" : ""); + Character ec = _eliminated[i]; + string topCharacter = ec.ToString() + (_continuousKilling.TryGetValue(ec, out int kills) && kills > 1 ? $" [ {CharacterSet.GetContinuousKilling(kills)} ]" : "") + (_earnedMoney.TryGetValue(ec, out int earned) ? $" [ 已赚取 {earned} 金钱 ]" : ""); if (top == 1) { WriteLine("冠军:" + topCharacter); - _stats[_eliminated[i]].Wins += 1; - _stats[_eliminated[i]].Top3s += 1; + _stats[ec].Wins += 1; + _stats[ec].Top3s += 1; } else if (top == 2) { WriteLine("亚军:" + topCharacter); - _stats[_eliminated[i]].Loses += 1; - _stats[_eliminated[i]].Top3s += 1; + _stats[ec].Loses += 1; + _stats[ec].Top3s += 1; } else if (top == 3) { WriteLine("季军:" + topCharacter); - _stats[_eliminated[i]].Loses += 1; - _stats[_eliminated[i]].Top3s += 1; + _stats[ec].Loses += 1; + _stats[ec].Top3s += 1; } else { WriteLine($"第 {top} 名:" + topCharacter); - _stats[_eliminated[i]].Loses += 1; - } - _stats[_eliminated[i]].Plays += 1; - if (_earnedMoney.TryGetValue(_eliminated[i], out int money)) - { - _stats[Eliminated[i]].TotalEarnedMoney += money; + _stats[ec].Loses += 1; } + _stats[ec].Plays += 1; + _stats[ec].TotalEarnedMoney += earned; + _stats[ec].LastRank = top; top++; } WriteLine(""); diff --git a/Entity/Statistics/CharacterStatistics.cs b/Entity/Statistics/CharacterStatistics.cs index 0de096a..4c677fa 100644 --- a/Entity/Statistics/CharacterStatistics.cs +++ b/Entity/Statistics/CharacterStatistics.cs @@ -38,5 +38,7 @@ public int Loses { get; set; } = 0; public double Winrates { get; set; } = 0; public double Top3rates { get; set; } = 0; + public int LastRank { get; set; } = 0; + public double AvgRank { get; set; } = 0; } }