OSDN Git Service

第一が6隻未満の連合艦隊で戦闘するとエラーになるのを直す
authorKazuhiro Fujieda <fujieda@users.osdn.me>
Fri, 24 Nov 2017 12:23:43 +0000 (21:23 +0900)
committerKazuhiro Fujieda <fujieda@users.osdn.me>
Fri, 24 Nov 2017 14:46:08 +0000 (23:46 +0900)
KancolleSniffer.Test/SnifferTest.cs
KancolleSniffer.Test/logs
KancolleSniffer/BattleInfo.cs

index e2aba8b..2bb1684 100644 (file)
@@ -150,6 +150,17 @@ namespace KancolleSniffer.Test
         }\r
 \r
         /// <summary>\r
+        /// 第一が6隻未満の連合艦隊で戦闘する\r
+        /// </summary>\r
+        [TestMethod]\r
+        public void SmallCombinedFleetBattle()\r
+        {\r
+            var sniffer = new Sniffer();\r
+            SniffLogFile(sniffer, "combined_battle_003");\r
+            PAssert.That(() => sniffer.WrongBattleResult.Length == 0);\r
+        }\r
+\r
+        /// <summary>\r
         /// 出撃時に大破している艦娘がいたら警告する\r
         /// </summary>\r
         [TestMethod]\r
index cdc1b5f..5827b6c 160000 (submodule)
@@ -1 +1 @@
-Subproject commit cdc1b5f8205835274ad8246e9492c1a45c25c7dd
+Subproject commit 5827b6cae69e6be85e7d4ba19561a41512cd9924
index 612c14b..c5de9b0 100644 (file)
@@ -382,7 +382,7 @@ namespace KancolleSniffer
             for (var i = 0; i < friend.Length; i++)\r
                 friend[i].ApplyDamage(damage[i]);\r
             for (var i = 0; i < guard.Length; i++)\r
-                guard[i].ApplyDamage(damage[i + friend.Length]);\r
+                guard[i].ApplyDamage(damage[i + 6]);\r
         }\r
 \r
         private void CalcSimpleDamage(dynamic rawDamage, Record[] friend)\r
@@ -398,7 +398,7 @@ namespace KancolleSniffer
             for (var i = 0; i < enemy.Length; i++)\r
                 enemy[i] -= damage[i];\r
             for (var i = 0; i < enemyGuard.Length; i++)\r
-                enemyGuard[i] -= damage[i + enemy.Length];\r
+                enemyGuard[i] -= damage[i + 6];\r
         }\r
 \r
         private void CalcSimpleDamage(dynamic rawDamage, int[] result)\r
@@ -434,7 +434,7 @@ namespace KancolleSniffer
                         }\r
                         else\r
                         {\r
-                            guard[hit.t - friend.Length].ApplyDamage(hit.d);\r
+                            guard[hit.t - 6].ApplyDamage(hit.d);\r
                         }\r
                     }\r
                     else\r
@@ -445,7 +445,7 @@ namespace KancolleSniffer
                         }\r
                         else\r
                         {\r
-                            enemyGuard[hit.t - enemy.Length] -= hit.d;\r
+                            enemyGuard[hit.t - 6] -= hit.d;\r
                         }\r
                     }\r
                 }\r