var stage1 = json.api_stage1;\r
if (stage1 == null || (stage1.api_f_count == 0 && stage1.api_e_count == 0))\r
return;\r
- AirBattleResults.Add(new AirBattleResult\r
+ var result = new AirBattleResult\r
{\r
PhaseName = phaseName,\r
AirControlLevel = json.api_stage1.api_disp_seiku() ? (int)json.api_stage1.api_disp_seiku : 0,\r
EnemyCount = (int)json.api_stage2.api_e_count,\r
EnemyLost = (int)json.api_stage2.api_e_lostcount\r
}\r
- });\r
+ };\r
+ if (json.api_stage2 != null && json.api_stage2.api_air_fire())\r
+ {\r
+ var airfire = json.api_stage2.api_air_fire;\r
+ var idx = (int)airfire.api_idx;\r
+ result.AirFire = new AirBattleResult.AirFireResult\r
+ {\r
+ ShipName = idx < _friend.Length ? _friend[idx].Name : _guard[idx - 6].Name,\r
+ Kind = (int)airfire.api_kind,\r
+ Items = ((int[])airfire.api_use_items).Select(id => _itemInfo.GetSpecByItemId(id).Name).ToArray()\r
+ };\r
+ }\r
+ AirBattleResults.Add(result);\r
}\r
\r
private void CalcKoukuDamage(dynamic json)\r
public int NowHp => _status.NowHp;\r
public bool Escaped => _status.Escaped;\r
public ShipStatus.Damage DamageLevel => _status.DamageLevel;\r
- public int StartHp;\r
+ public string Name => _status.Name;\r
+ public int StartHp { get; private set; }\r
\r
public static Record[] Setup(ShipStatus[] ships, bool practice) =>\r
(from s in ships\r