{\r
public List<AirBattleRecord> Result = new List<AirBattleRecord>();\r
\r
+ private bool _updated;\r
private readonly Func<int, string> _getShipName;\r
private readonly Func<int[], string[]> _getItemNames;\r
\r
public AirFireResult AirFire { get; set; }\r
}\r
\r
+ public bool CheckUpdate()\r
+ {\r
+ if (!_updated)\r
+ return false;\r
+ _updated = false;\r
+ return true;\r
+ }\r
+\r
public void Clear()\r
{\r
Result.Clear();\r
+ _updated = true;\r
}\r
\r
public class StageResult\r
SetEnemyFighterPower();\r
BattleState = url.Contains("sp_midnight") ? BattleState.SpNight :\r
url.Contains("midnight") ? BattleState.Night : BattleState.Day;\r
+ if (BattleState != BattleState.Night)\r
+ AirBattleResult.Clear();\r
CalcDamage(json);\r
ResultRank = url.Contains("/ld_") ? CalcLdResultRank() : CalcResultRank();\r
SetResult();\r
\r
private void CalcDamage(dynamic json)\r
{\r
- AirBattleResult.Clear();\r
foreach (KeyValuePair<string, dynamic> kv in json)\r
{\r
if (kv.Value == null)\r
\r
public void SetResult(Sniffer sniffer)\r
{\r
- var state = sniffer.Battle.BattleState;\r
- if (state != BattleState.Day && state != BattleState.SpNight)\r
+ var battleResult = sniffer.Battle.AirBattleResult;\r
+ if (!battleResult.CheckUpdate())\r
return;\r
- _resultList = sniffer.Battle.AirBattleResult.Result.ToArray();\r
+ _resultList = battleResult.Result.ToArray();\r
if (_resultList.Length == 0)\r
{\r
ResultRemained = false;\r