OSDN Git Service

補強増設スロットの機銃の改修値を火力と雷撃に反映させる
authorKazuhiro Fujieda <fujieda@users.osdn.me>
Thu, 22 Dec 2016 14:46:46 +0000 (23:46 +0900)
committerKazuhiro Fujieda <fujieda@users.osdn.me>
Thu, 22 Dec 2016 14:49:52 +0000 (23:49 +0900)
KancolleSniffer/ShipInfo.cs

index e01d1a0..9b34481 100644 (file)
@@ -49,6 +49,8 @@ namespace KancolleSniffer
 \r
         public int CombinedFleetType { get; set; }\r
 \r
+        private IEnumerable<ItemStatus> AllSlot => Slot.Concat(new[] {SlotEx});\r
+\r
         public ShipStatus()\r
         {\r
             Id = -1;\r
@@ -102,7 +104,7 @@ namespace KancolleSniffer
                     return 0;\r
                 var isRyuseiAttack = Spec.Id == 352 && // 速吸改\r
                                      Slot.Any(item => item.Spec.Type == 8); // 艦攻装備\r
-                var levelBonus = Slot.Sum(item => item.FirePowerLevelBonus);\r
+                var levelBonus = AllSlot.Sum(item => item.FirePowerLevelBonus);\r
                 if (!Spec.IsAircraftCarrier && !isRyuseiAttack)\r
                     return Firepower + levelBonus + CombinedFleetFirepowerBonus + 5;\r
                 var specs = (from item in Slot where item.Spec.IsAircraft select item.Spec).ToArray();\r
@@ -141,7 +143,7 @@ namespace KancolleSniffer
             {\r
                 if (Spec.IsAircraftCarrier || Torpedo == 0)\r
                     return 0;\r
-                return Torpedo + Slot.Sum(item => item.TorpedoLevelBonus) + CombinedFleetTorpedoPenalty + 5;\r
+                return Torpedo + AllSlot.Sum(item => item.TorpedoLevelBonus) + CombinedFleetTorpedoPenalty + 5;\r
             }\r
         }\r
 \r
@@ -198,7 +200,7 @@ namespace KancolleSniffer
                     : Slot.FirstOrDefault(item => item.Spec.Id == 42 || item.Spec.Id == 43)?.Spec.Id ?? -1;\r
 \r
         public double TransportPoint\r
-            => Spec.TransportPoint + Slot.Sum(item => item.Spec.TransportPoint) + SlotEx.Spec.TransportPoint;\r
+            => Spec.TransportPoint + AllSlot.Sum(item => item.Spec.TransportPoint);\r
 \r
         public object Clone()\r
         {\r