public FleetRecord(IReadOnlyList<Fleet> fleets, int number)\r
{\r
var fleet = fleets[number];\r
- Fleet = new[] {"第一", "第二", "第三", "第四"}[number] + " " + SpeedName(fleet);\r
- Fleet2 = GetSpec(fleet) + GetTp(fleets, number);\r
+ Fleet = new[] {"第一", "第二", "第三", "第四"}[number] + " " + SpeedName(fleet) + " " + SpecTotal(fleet);\r
+ Fleet2 = FleetParams(fleet) + GetTp(fleets, number);\r
}\r
\r
private static string SpeedName(Fleet fleet)\r
return $"\r\nTP:S{(int)tp} A{(int)(tp * 0.7)}";\r
}\r
\r
- private static string GetSpec(Fleet fleet)\r
+ private static string SpecTotal(Fleet fleet)\r
{\r
- var total = fleet.Ships.Aggregate(new Total(), (sum, next) => sum.Add(next));\r
+ var total = CalcTotal(fleet);\r
+ return "火" + CutOverFlow(total.FirePower) +\r
+ " 空" + CutOverFlow(total.AntiAir) +\r
+ " 潜" + CutOverFlow(total.AntiSubmarine) +\r
+ " 索" + CutOverFlow(total.LoS);\r
+ }\r
+\r
+ private static string FleetParams(Fleet fleet)\r
+ {\r
+ var total = CalcTotal(fleet);\r
return "計:" + HideIfZero(" Lv", total.Level) +\r
HideIfZero(" ド", total.Drum) + HideIfZero("(", total.DrumShips, "隻)") +\r
HideIfZero(" 大", fleet.DaihatsuBonus * 100, "%") + "\r\n" +\r
- " 火" + CutOverFlow(total.FirePower) +\r
- " 空" + CutOverFlow(total.AntiAir) +\r
- " 潜" + CutOverFlow(total.AntiSubmarine) +\r
- " 索" + CutOverFlow(total.LoS) + "\r\n" +\r
$"戦闘:燃{total.Fuel / 5}弾{total.Bull / 5} 支援:燃{total.Fuel / 2}弾{(int)(total.Bull * 0.8)}";\r
}\r
\r
+ private static Total CalcTotal(Fleet fleet)\r
+ {\r
+ return fleet.Ships.Aggregate(new Total(), (sum, next) => sum.Add(next));\r
+ }\r
+\r
private static int CutOverFlow(int value) => value > 999 ? 999 : value;\r
\r
private class Total\r