\r
private void SetCurrentFleet()\r
{\r
- var states = Sniffer.Fleets.Select(fleet => fleet.State).ToArray();\r
- var inSortie = states.Any(state => state >= FleetState.Sortie);\r
- if (_inSortie || !inSortie)\r
+ var inSortie = Sniffer.InSortie;\r
+ if (_inSortie || inSortie == -1)\r
{\r
- _inSortie = inSortie;\r
+ _inSortie = inSortie == -1;\r
return;\r
}\r
_inSortie = true;\r
- if (states[0] == FleetState.Sortie && states[1] == FleetState.Sortie)\r
+ if (inSortie == 10)\r
{\r
_combinedFleet = true;\r
_currentFleet = 0;\r
else\r
{\r
_combinedFleet = false;\r
- _currentFleet = Array.FindIndex(states, state => state >= FleetState.Sortie);\r
+ _currentFleet = inSortie;\r
}\r
}\r
\r
// See the License for the specific language governing permissions and\r
// limitations under the License.\r
\r
+using System;\r
using System.Collections.Generic;\r
using System.Linq;\r
using KancolleSniffer.Util;\r
\r
public IReadOnlyList<Fleet> Fleets => _fleets;\r
\r
+ public int InSortie\r
+ {\r
+ get\r
+ {\r
+ var sorties = _fleets.Select(f => f.State >= FleetState.Sortie).ToArray();\r
+ if (sorties[0] && sorties[1])\r
+ return 10;\r
+ var idx = Array.FindIndex(sorties, s => s);\r
+ return idx;\r
+ }\r
+ }\r
+\r
public ShipStatus GetShip(int id) => _shipInventory[id];\r
\r
public void SetItemHolder()\r
\r
public IReadOnlyList<Fleet> Fleets => _shipInfo.Fleets;\r
\r
+ public int InSortie => _shipInfo.InSortie;\r
+\r
public ShipInfo.ShipStatusPair[] BattleResultStatusDiff => _shipInfo.BattleResultDiff;\r
\r
public bool IsBattleResultError => _shipInfo.IsBattleResultError || _battleInfo.DisplayedResultRank.IsError;\r