PAssert.That(() => count.NowArray.SequenceEqual(new[] {1, 1, 1}));\r
}\r
\r
+ /// <summary>\r
+ /// 893: 泊地周辺海域の安全確保を徹底せよ!\r
+ /// </summary>\r
+ [TestMethod]\r
+ public void BattleResult_893()\r
+ {\r
+ var questInfo = new QuestInfo(null, null, () => new DateTime(2015, 1, 1));\r
+ questInfo.InspectQuestList(CreateQuestList(new[] {893}));\r
+ var count = questInfo.Quests[0].Count;\r
+\r
+ questInfo.InspectMapNext(Js(new\r
+ {\r
+ api_maparea_id = 1,\r
+ api_mapinfo_no = 5,\r
+ api_event_id = 5\r
+ }));\r
+ questInfo.InspectBattleResult(Js(new {api_win_rank = "A"}));\r
+ PAssert.That(() => count.NowArray[0] == 0, "A勝利はカウントしない");\r
+ questInfo.InspectBattleResult(Js(new {api_win_rank = "S"}));\r
+ PAssert.That(() => count.NowArray[0] == 1, "1-5");\r
+\r
+ questInfo.InspectMapNext(Js(new\r
+ {\r
+ api_maparea_id = 7,\r
+ api_mapinfo_no = 1,\r
+ api_event_id = 5\r
+ }));\r
+ questInfo.InspectBattleResult(Js(new {api_win_rank = "S"}));\r
+ PAssert.That(() => count.NowArray[1] == 1, "7-1");\r
+\r
+ questInfo.InspectMapNext(Js(new\r
+ {\r
+ api_maparea_id = 7,\r
+ api_mapinfo_no = 2,\r
+ api_no = 9,\r
+ api_event_id = 4\r
+ }));\r
+ questInfo.InspectBattleResult(Js(new {api_win_rank = "S"}));\r
+ PAssert.That(() => count.NowArray[2] == 1, "7-2G");\r
+\r
+ questInfo.InspectMapNext(Js(new\r
+ {\r
+ api_maparea_id = 7,\r
+ api_mapinfo_no = 2,\r
+ api_no = 15,\r
+ api_event_id = 5\r
+ }));\r
+ questInfo.InspectBattleResult(Js(new {api_win_rank = "S"}));\r
+ PAssert.That(() => count.NowArray[3] == 1, "7-2M");\r
+ }\r
\r
/// <summary>\r
/// 302: 大規模演習\r
new QuestCount {Id = 428, NowArray = new[] {1, 1, 1}},\r
new QuestCount {Id = 873, NowArray = new[] {1, 1, 1}},\r
new QuestCount {Id= 888, NowArray = new []{1, 1, 1}},\r
- new QuestCount {Id = 688, NowArray = new[] {2, 1, 2, 1}}\r
+ new QuestCount {Id = 688, NowArray = new[] {2, 1, 2, 1}},\r
+ new QuestCount {Id = 893, NowArray = new[] {1, 1, 1, 1}}\r
}\r
};\r
questInfo.LoadState(status);\r
PAssert.That(() => q888.ToToolTip() == "5-1 5-3 5-4");\r
var q688 = status.QuestCountList[7];\r
PAssert.That(() => q688.ToToolTip() == "艦戦2 艦爆1 艦攻2 水偵1");\r
+ var q893 = status.QuestCountList[8];\r
+ PAssert.That(() => q893.ToToolTip() == "1-5:1 7-1:1 7-2G:1 7-2M:1");\r
}\r
\r
/// <summary>\r
return string.Join(" ",\r
new[] {"艦戦", "艦爆", "艦攻", "水偵"}.Zip(NowArray, (type, n) => n >= 1 ? type + n : "")\r
.Where(s => !string.IsNullOrEmpty(s)));\r
+ case 893:\r
+ return string.Join(" ",\r
+ new[] {"1-5", "7-1", "7-2G", "7-2M"}.Zip(NowArray, (map, n) => n >= 1 ? $"{map}:{n}" : "")\r
+ .Where(s => !string.IsNullOrEmpty(s)));\r
}\r
return "";\r
}\r
{873, new QuestSpec {Interval = Quarterly, MaxArray = new[] {1, 1, 1}, Material = new[] {0, 0, 0, 0}}}, // 873: 北方海域警備を実施せよ!\r
{875, new QuestSpec {Interval = Quarterly, Max = 2, Material = new[] {0, 0, 0, 0}}}, // 875: 精鋭「三一駆」、鉄底海域に突入せよ!\r
{888, new QuestSpec {Interval = Quarterly, MaxArray = new[] {1, 1, 1}, Material = new[] {0, 0, 0, 0}}}, // 888: 新編成「三川艦隊」、鉄底海峡に突入せよ!\r
+ {893, new QuestSpec {Interval = Quarterly, MaxArray = new[] {3, 3, 3, 3}, Material = new[] {0, 0, 0, 0}}}, // 893: 泊地周辺海域の安全確保を徹底せよ!\r
\r
{303, new QuestPractice {Interval = Daily, Max = 3, Win = false, Material = new[] {1, 0, 0, 0}}}, // 303: 「演習」で練度向上!\r
{304, new QuestPractice {Interval = Daily, Max = 5, Win = true, Material = new[] {0, 0, 1, 0}}}, // 304: 「演習」で他提督を圧倒せよ!\r
}\r
\r
private int _map;\r
+ private int _cell;\r
private bool _boss;\r
\r
public void InspectMapStart(dynamic json)\r
public void InspectMapNext(dynamic json)\r
{\r
_map = (int)json.api_maparea_id * 10 + (int)json.api_mapinfo_no;\r
+ _cell = json.api_no() ? (int)json.api_no : 0;\r
_boss = (int)json.api_event_id == 5;\r
\r
if (_quests.TryGetValue(861, out var q861))\r
break;\r
}\r
}\r
+ if (_quests.TryGetValue(893, out var q893))\r
+ {\r
+ if (QuestSortie.CompareRank(rank, "S") != 0)\r
+ return;\r
+ var array = q893.Count.NowArray;\r
+ if (!_boss)\r
+ {\r
+ if (_map == 72 && _cell == 9)\r
+ {\r
+ array[2]++;\r
+ NeedSave = true;\r
+ }\r
+ return;\r
+ }\r
+ switch (_map)\r
+ {\r
+ case 15:\r
+ array[0]++;\r
+ NeedSave = true;\r
+ break;\r
+ case 71:\r
+ array[1]++;\r
+ NeedSave = true;\r
+ break;\r
+ case 72:\r
+ array[3]++;\r
+ NeedSave = true;\r
+ break;\r
+ }\r
+ }\r
}\r
\r
private int _questFleet;\r