From 74768dd79f88b37345fb37e304466129044453e2 Mon Sep 17 00:00:00 2001 From: Kazuhiro Fujieda Date: Tue, 7 Aug 2018 20:55:02 +0900 Subject: [PATCH] =?utf8?q?=E9=80=A3=E5=90=88=E8=89=A6=E9=9A=8A=E3=81=AE?= =?utf8?q?=E7=AC=AC=E4=BA=8C=E6=97=97=E8=89=A6=E3=81=AE=E5=A4=A7=E7=A0=B4?= =?utf8?q?=E8=AD=A6=E5=91=8A=E3=81=8C=E5=87=BA=E3=82=8B=E3=81=AE=E3=82=92?= =?utf8?q?=E7=9B=B4=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- KancolleSniffer.Test/SnifferTest.cs | 11 +++++++++++ KancolleSniffer.Test/logs | 2 +- KancolleSniffer/Model/Fleet.cs | 4 ++-- KancolleSniffer/Model/ShipInfo.cs | 7 ++++--- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/KancolleSniffer.Test/SnifferTest.cs b/KancolleSniffer.Test/SnifferTest.cs index 8f5e929..ac6b809 100644 --- a/KancolleSniffer.Test/SnifferTest.cs +++ b/KancolleSniffer.Test/SnifferTest.cs @@ -271,6 +271,17 @@ namespace KancolleSniffer.Test } /// + /// 連合艦隊の第二旗艦の大破を警告しない + /// + [TestMethod] + public void NotWarnDamaged1StShipInGuardFleet() + { + var sniffer = new Sniffer(); + SniffLogFile(sniffer, "combined_battle_004"); + PAssert.That(() => !sniffer.BadlyDamagedShips.Any()); + } + + /// /// 熟練度込みの制空値を正しく計算する /// [TestMethod] diff --git a/KancolleSniffer.Test/logs b/KancolleSniffer.Test/logs index 37eb669..58854d8 160000 --- a/KancolleSniffer.Test/logs +++ b/KancolleSniffer.Test/logs @@ -1 +1 @@ -Subproject commit 37eb669f909a9aa27105af1ff3c956de0f62ae8c +Subproject commit 58854d8f5962f024c081fb2dc655570e18880d74 diff --git a/KancolleSniffer/Model/Fleet.cs b/KancolleSniffer/Model/Fleet.cs index 5236020..dffb8f1 100644 --- a/KancolleSniffer/Model/Fleet.cs +++ b/KancolleSniffer/Model/Fleet.cs @@ -104,12 +104,12 @@ namespace KancolleSniffer.Model ship.Fleet = null; ship.DeckIndex = -1; } - Ships = _deck.Select((id, idx) => + Ships = _deck.Select((id, num) => { var ship = _shipInventry[id]; if (ship.Empty) return ship; - ship.DeckIndex = id; + ship.DeckIndex = num; ship.Fleet = this; return ship; }).ToArray(); diff --git a/KancolleSniffer/Model/ShipInfo.cs b/KancolleSniffer/Model/ShipInfo.cs index 4780e78..441440f 100644 --- a/KancolleSniffer/Model/ShipInfo.cs +++ b/KancolleSniffer/Model/ShipInfo.cs @@ -340,9 +340,10 @@ namespace KancolleSniffer.Model { BadlyDamagedShips = (from s in _fleets.Where(fleet => fleet.State == FleetState.Sortie) - .SelectMany(fleet => fleet.ActualShips) - where !s.Escaped && s.DamageLevel == ShipStatus.Damage.Badly && - !(s.Fleet.CombinedType != 0 && s.Fleet.Number == 1 && s.DeckIndex == 0) // 第二艦隊の旗艦を除く + .SelectMany(fleet => fleet.CombinedType != 0 && fleet.Number == 1 + ? fleet.ActualShips.Skip(1) // 第二艦隊の旗艦を除く + : fleet.ActualShips) + where !s.Escaped && s.DamageLevel == ShipStatus.Damage.Badly select s.Name).ToArray(); } -- 2.11.0