X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=KancolleSniffer%2FBattleInfo.cs;h=8f9d53fbd62a816fcd7be57aa3c7deb90b802911;hb=460df58348e0c1f027a1e3f64358c4c161ff9590;hp=e00ca7e29587db72fc2088b573246091f260e966;hpb=ada3b0dc298d2e7330859466866f2bfa6250c94a;p=kancollesniffer%2FKancolleSniffer.git diff --git a/KancolleSniffer/BattleInfo.cs b/KancolleSniffer/BattleInfo.cs index e00ca7e..8f9d53f 100644 --- a/KancolleSniffer/BattleInfo.cs +++ b/KancolleSniffer/BattleInfo.cs @@ -625,25 +625,19 @@ namespace KancolleSniffer private BattleResultRank CalcLdAirBattleRank() { - var combined = _friend.Concat(_guard).ToArray(); - var friendNowShips = combined.Count(r => r.NowHp > 0); + var combined = _friend.Concat(_guard).Where(r => !r.Escaped).ToArray(); var friendGauge = combined.Sum(r => r.StartHp - r.NowHp); - var friendSunk = combined.Count(r => r.NowHp == 0); var friendGaugeRate = Floor((double)friendGauge / combined.Sum(r => r.StartHp) * 100); - if (friendSunk == 0) - { - if (friendGauge == 0) - return BattleResultRank.P; - if (friendGaugeRate < 10) - return BattleResultRank.A; - if (friendGaugeRate < 20) - return BattleResultRank.B; - if (friendGaugeRate < 50) - return BattleResultRank.C; - return BattleResultRank.D; - } - if (friendSunk < friendNowShips) + if (friendGauge <= 0) + return BattleResultRank.P; + if (friendGaugeRate < 10) + return BattleResultRank.A; + if (friendGaugeRate < 20) + return BattleResultRank.B; + if (friendGaugeRate < 50) + return BattleResultRank.C; + if (friendGaugeRate < 80) return BattleResultRank.D; return BattleResultRank.E; } @@ -698,9 +692,13 @@ namespace KancolleSniffer /// /// テスト専用 /// - public void InjectEnemyResultStatus(ShipStatus[] enemy, ShipStatus[] guard) + public void InjectResultStatus(ShipStatus[] main, ShipStatus[] guard, ShipStatus[] enemy, ShipStatus[] enemyGuard) { - Result = new BattleResult {Enemy = new BattleResult.Combined {Main = enemy, Guard = guard}}; + Result = new BattleResult + { + Friend = new BattleResult.Combined { Main = main, Guard = guard}, + Enemy = new BattleResult.Combined {Main = enemy, Guard = enemyGuard} + }; } } } \ No newline at end of file