OSDN Git Service

7隻編成の戦闘で7隻目が攻撃されるとエラーになるのを直す
authorKazuhiro Fujieda <fujieda@users.osdn.me>
Mon, 20 Nov 2017 12:56:01 +0000 (21:56 +0900)
committerKazuhiro Fujieda <fujieda@users.osdn.me>
Mon, 20 Nov 2017 15:31:10 +0000 (00:31 +0900)
KancolleSniffer.Test/SnifferTest.cs
KancolleSniffer.Test/logs
KancolleSniffer/BattleInfo.cs

index 52b3a47..d3caef6 100644 (file)
@@ -106,6 +106,17 @@ namespace KancolleSniffer.Test
         }\r
 \r
         /// <summary>\r
+        /// 7隻編成の戦闘で7隻目が攻撃される\r
+        /// </summary>\r
+        [TestMethod]\r
+        public void Ship7Battle()\r
+        {\r
+            var sniffer = new Sniffer();\r
+            SniffLogFile(sniffer, "ship7battle_001");\r
+            PAssert.That(() => sniffer.Battle.ResultRank == BattleResultRank.P);\r
+        }\r
+\r
+        /// <summary>\r
         /// 出撃時に大破している艦娘がいたら警告する\r
         /// </summary>\r
         [TestMethod]\r
index e3d8d9f..4c1c0a2 160000 (submodule)
@@ -1 +1 @@
-Subproject commit e3d8d9f2f3814e8af506c90063e0c68dfc2c8faf
+Subproject commit 4c1c0a2589989496debb97ec8902c5952a4f956a
index addc669..74217b2 100644 (file)
@@ -459,24 +459,24 @@ namespace KancolleSniffer
                         continue;\r
                     if (turn.e == 1)\r
                     {\r
-                        if (hit.t < 6)\r
+                        if (hit.t < friend.Length)\r
                         {\r
                             friend[hit.t].ApplyDamage(hit.d);\r
                         }\r
                         else\r
                         {\r
-                            guard[hit.t % 6].ApplyDamage(hit.d);\r
+                            guard[hit.t - friend.Length].ApplyDamage(hit.d);\r
                         }\r
                     }\r
                     else\r
                     {\r
-                        if (hit.t < 6)\r
+                        if (hit.t < enemy.Length)\r
                         {\r
                             enemy[hit.t] -= hit.d;\r
                         }\r
                         else\r
                         {\r
-                            enemyGuard[hit.t % 6] -= hit.d;\r
+                            enemyGuard[hit.t - enemy.Length] -= hit.d;\r
                         }\r
                     }\r
                 }\r