OSDN Git Service

タイマーと終了時刻の切り替えをわかりやすくする
[kancollesniffer/KancolleSniffer.git] / KancolleSniffer / MainForm.cs
index bf4eda5..be88edc 100644 (file)
@@ -58,7 +58,6 @@ namespace KancolleSniffer
         private string _debugLogFile;\r
         private IEnumerator<string> _playLog;\r
         private DateTime _prev, _now;\r
-        private bool _inSortie;\r
 \r
         private readonly ErrorDialog _errorDialog = new ErrorDialog();\r
         private readonly ErrorLog _errorLog;\r
@@ -606,6 +605,7 @@ namespace KancolleSniffer
         private void UpdateShipInfo()\r
         {\r
             SetCurrentFleet();\r
+            SetCombined();\r
             UpdatePanelShipInfo();\r
             NotifyDamagedShip();\r
             UpdateChargeInfo();\r
@@ -615,6 +615,8 @@ namespace KancolleSniffer
                 _listForm.UpdateList();\r
         }\r
 \r
+        private bool _inSortie;\r
+\r
         private void SetCurrentFleet()\r
         {\r
             var states = _sniffer.Fleets.Select(fleet => fleet.State).ToArray();\r
@@ -637,6 +639,18 @@ namespace KancolleSniffer
             }\r
         }\r
 \r
+        private bool _prevCombined;\r
+\r
+        private void SetCombined()\r
+        {\r
+            if (_sniffer.IsCombinedFleet && !_prevCombined)\r
+            {\r
+                _combinedFleet = true;\r
+                _currentFleet = 0;\r
+            }\r
+            _prevCombined = _sniffer.IsCombinedFleet;\r
+        }\r
+\r
         private void UpdatePanelShipInfo()\r
         {\r
             var fleets = _sniffer.Fleets;\r
@@ -794,12 +808,18 @@ namespace KancolleSniffer
         private void UpdateNDocLabels()\r
         {\r
             _mainLabels.SetNDockLabels(_sniffer.NDock);\r
+            SetNDockLabel();\r
         }\r
 \r
+        private void SetNDockLabel()\r
+        {\r
+            labelNDock.Text = (_config.ShowEndTime & TimerKind.NDock) != 0 ? "入渠終了" : "入渠";\r
+        }\r
 \r
         private void labelNDock_Click(object sender, EventArgs e)\r
         {\r
             _config.ShowEndTime ^= TimerKind.NDock;\r
+            SetNDockLabel();\r
             UpdateTimers();\r
         }\r
 \r
@@ -818,6 +838,12 @@ namespace KancolleSniffer
                 }\r
                 nameLabels[i].Text = names[i];\r
             }\r
+            SetMissionLabel();\r
+        }\r
+\r
+        private void SetMissionLabel()\r
+        {\r
+            labelMission.Text = (_config.ShowEndTime & TimerKind.Mission) != 0 ? "遠征終了" : "遠征";\r
         }\r
 \r
         private string GenerateFleetParamsForMission(int fleetNumber)\r
@@ -840,6 +866,7 @@ namespace KancolleSniffer
         private void labelMission_Click(object sender, EventArgs e)\r
         {\r
             _config.ShowEndTime ^= TimerKind.Mission;\r
+            SetMissionLabel();\r
             UpdateTimers();\r
         }\r
 \r
@@ -874,6 +901,8 @@ namespace KancolleSniffer
             for (var i = 0; i < _sniffer.Missions.Length; i++)\r
             {\r
                 var entry = _sniffer.Missions[i];\r
+                if (entry.Name == "前衛支援任務" || entry.Name == "艦隊決戦支援任務")\r
+                    continue;\r
                 CheckAlarm("遠征終了", entry.Timer, i + 1, entry.Name);\r
             }\r
             for (var i = 0; i < _sniffer.NDock.Length; i++)\r