OSDN Git Service

晴嵐(六三一空)任務の達成時にエラーになるのを直す
authorKazuhiro Fujieda <fujieda@users.osdn.me>
Sat, 2 Dec 2017 04:35:07 +0000 (13:35 +0900)
committerKazuhiro Fujieda <fujieda@users.osdn.me>
Sat, 2 Dec 2017 11:26:01 +0000 (20:26 +0900)
KancolleSniffer.Test/LoggerTest.cs
KancolleSniffer/Logger.cs
KancolleSniffer/Sniffer.cs

index 1cba238..7607a5e 100644 (file)
@@ -248,5 +248,24 @@ namespace KancolleSniffer.Test
             PAssert.That(() =>\r
                 "2017-05-01 00:00:00,45417045,0|2017-05-01 00:00:00,45417045,350|" == result);\r
         }\r
+\r
+        /// <summary>\r
+        /// 晴嵐(六三一空)任務の場合はapi_bounus_countがない\r
+        /// </summary>\r
+        [TestMethod]\r
+        public void InspectClearItemGetSeiran631Ku()\r
+        {\r
+            var sniffer = new Sniffer(true);\r
+            sniffer.SetLogWriter((path, s, h) => { }, () => new DateTime(2017, 5, 1));\r
+            sniffer.EnableLog(LogType.Achivement);\r
+            sniffer.Sniff("/kcsapi/api_req_quest/clearitemget",\r
+                "api%5Fquest%5Fid=656&api%5Fverno=1",\r
+                JsonParser.Parse(\r
+                    @"{""api_result"":1,""api_result_msg"":""成功"",""api_data"":\r
+                    {""api_material"":[0,0,0,0],""api_bounus"":[\r
+                    {""api_type"":15,""api_count"":1,""api_item"":{""api_id_from"":9999,""api_id_to"":9999,\r
+                    ""api_message"":""第一潜水隊運用航空隊:「晴嵐(六三一空)」の新編成を<br>完了しました!""}}\r
+                    ]}}"));\r
+        }\r
     }\r
 }
\ No newline at end of file
index dd88a23..0d2047d 100644 (file)
@@ -151,7 +151,7 @@ namespace KancolleSniffer
         {\r
             if ((_logType & LogType.Achivement) == 0)\r
                 return;\r
-            if (json.api_bounus_count == 0)\r
+            if (!json.api_bounus())\r
                 return;\r
             foreach (var entry in json.api_bounus)\r
             {\r
index 382e098..610b6ae 100644 (file)
@@ -57,8 +57,9 @@ namespace KancolleSniffer
             All = (1 << 9) - 1\r
         }\r
 \r
-        public Sniffer()\r
+        public Sniffer(bool start = false)\r
         {\r
+            _start = start;\r
             _shipInfo = new ShipInfo(_itemInfo);\r
             _conditionTimer = new ConditionTimer(_shipInfo);\r
             _dockInfo = new DockInfo(_shipInfo, _materialInfo);\r