poi-plugin-quest-info-2 0.8.1 → 0.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/kcQuestsData/DATA_VERSION +1 -1
- package/build/kcQuestsData/index.ts +1 -1
- package/build/kcQuestsData/quests-scn-new.json +11 -1
- package/build/kcQuestsData/quests-scn.json +193 -14
- package/build/prePostQuest.json +142 -22
- package/build/questCategory.json +6 -1
- package/build/questCodeMap.json +23 -4
- package/package.json +1 -1
- package/src/__tests__/__snapshots__/questCategory.spec.ts.snap +10 -0
- package/src/__tests__/__snapshots__/questHelper.spec.ts.snap +22 -0
- package/src/__tests__/kcwikiData.spec.ts +1 -1
- package/src/__tests__/questCategory.spec.ts +2 -2
- package/src/__tests__/questHelper.spec.ts +4 -0
- package/src/questHelper.ts +28 -8
- package/src/store/quest.ts +7 -4
- package/src/store/store.tsx +1 -0
- package/tsconfig.json +1 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
148476742357a844acd8fd6ca11723711fd4217d
|
|
@@ -2103,10 +2103,10 @@
|
|
|
2103
2103
|
]
|
|
2104
2104
|
},
|
|
2105
2105
|
"315": {
|
|
2106
|
-
"code": "
|
|
2107
|
-
"desc": "
|
|
2106
|
+
"code": "C64",
|
|
2107
|
+
"desc": "在春季的一天之内取得 8 次以上「演习」的胜利,进一步提高舰队的水平!",
|
|
2108
2108
|
"memo": "奖励:间宫 *1 礼物箱 *1",
|
|
2109
|
-
"memo2": "
|
|
2109
|
+
"memo2": "春季限定单日内演习取得 8 次胜利与「春季大演習 (C54)」内容相同",
|
|
2110
2110
|
"name": "春季大演习",
|
|
2111
2111
|
"pre": [
|
|
2112
2112
|
"C2"
|
|
@@ -2476,6 +2476,16 @@
|
|
|
2476
2476
|
"B117"
|
|
2477
2477
|
]
|
|
2478
2478
|
},
|
|
2479
|
+
"356": {
|
|
2480
|
+
"code": "C65",
|
|
2481
|
+
"desc": "精锐驱逐舰演习任务:编成包含精锐第十九驱逐队「矶波改二」「浦波改二」「绫波改二」「敷波改二」四舰的演习舰队。以该舰队于本日取得演习【S 判定】胜利 3 次以上!",
|
|
2482
|
+
"memo": "奖励:以下奖励二选一:伊良湖 开发资材 ×4 以下奖励三选一:熟練見張員 Green",
|
|
2483
|
+
"memo2": "包含矶波改二、浦波改二、绫波改二、敷波改二的舰队单日内演习 3 次 S 胜",
|
|
2484
|
+
"name": "精锐「第十九驱逐队」演习!",
|
|
2485
|
+
"pre": [
|
|
2486
|
+
"B180"
|
|
2487
|
+
]
|
|
2488
|
+
},
|
|
2479
2489
|
"401": {
|
|
2480
2490
|
"code": "D1",
|
|
2481
2491
|
"desc": "舰队出发「远征」!",
|
|
@@ -4325,14 +4335,54 @@
|
|
|
4325
4335
|
]
|
|
4326
4336
|
},
|
|
4327
4337
|
"817": {
|
|
4328
|
-
"code": "
|
|
4329
|
-
"desc": "
|
|
4330
|
-
"memo": "
|
|
4331
|
-
"memo2": "
|
|
4332
|
-
"name": "
|
|
4338
|
+
"code": "B70",
|
|
4339
|
+
"desc": "新编的水雷战队出击 1-4 、歼灭同方面的来袭之敌!",
|
|
4340
|
+
"memo": "奖励:间宫 *1 高速修复材 *3",
|
|
4341
|
+
"memo2": "水雷战队出击 1-4 (轻巡只能为一艘)",
|
|
4342
|
+
"name": "新编舰队、南西群岛防卫线紧急出击!",
|
|
4333
4343
|
"pre": [
|
|
4334
|
-
"
|
|
4335
|
-
|
|
4344
|
+
"A69"
|
|
4345
|
+
]
|
|
4346
|
+
},
|
|
4347
|
+
"818": {
|
|
4348
|
+
"code": "B71",
|
|
4349
|
+
"desc": "新编水雷战队出击 1-6 ,确保航路安全!",
|
|
4350
|
+
"memo": "奖励:特制家具职人 *1 开发资材 *4",
|
|
4351
|
+
"memo2": "水雷战队出击 1-6",
|
|
4352
|
+
"name": "镇守府近海航路的安全确保强化!",
|
|
4353
|
+
"pre": [
|
|
4354
|
+
"B70"
|
|
4355
|
+
]
|
|
4356
|
+
},
|
|
4357
|
+
"819": {
|
|
4358
|
+
"code": "B72",
|
|
4359
|
+
"desc": "第三十一战队 (第一次) 1-6 反复出击,压制敌潜艇!",
|
|
4360
|
+
"memo": "奖励:改修资材 *2 三式水中探信仪 * 1",
|
|
4361
|
+
"memo2": "五十铃改二 (旗舰),皋月改二,卯月改,和任意任意 3 只舰娘通关 1-6 两次",
|
|
4362
|
+
"name": "「第三十一战队」对敌潜艇压制!",
|
|
4363
|
+
"pre": [
|
|
4364
|
+
"A66",
|
|
4365
|
+
"Bw5"
|
|
4366
|
+
]
|
|
4367
|
+
},
|
|
4368
|
+
"820": {
|
|
4369
|
+
"code": "B73",
|
|
4370
|
+
"desc": "包含新编「第八驱逐队」的舰队出击 1-6 ,确保航路安全!",
|
|
4371
|
+
"memo": "奖励:探照灯 * 1 大发动艇 * 1",
|
|
4372
|
+
"memo2": "朝潮改二旗舰,大潮,满潮,荒潮加上任意两只舰娘通关 1-6 一次,朝潮改二丁也可以",
|
|
4373
|
+
"name": "新编「第八驱逐队」出击!",
|
|
4374
|
+
"pre": [
|
|
4375
|
+
"A70"
|
|
4376
|
+
]
|
|
4377
|
+
},
|
|
4378
|
+
"821": {
|
|
4379
|
+
"code": "B74",
|
|
4380
|
+
"desc": "包含「第八驱逐队第一小队」的舰队反复出击 1-5 ,完全压制敌潜艇!",
|
|
4381
|
+
"memo": "奖励:改修资材 *4 四式水中听音机 * 1",
|
|
4382
|
+
"memo2": "用包含朝潮改二丁,大潮改二的舰队击破 1-5BOSS 两次",
|
|
4383
|
+
"name": "精鋭「八驱第一小队」対潜哨戒!",
|
|
4384
|
+
"pre": [
|
|
4385
|
+
"A71"
|
|
4336
4386
|
]
|
|
4337
4387
|
},
|
|
4338
4388
|
"822": {
|
|
@@ -4346,6 +4396,65 @@
|
|
|
4346
4396
|
"Bm6"
|
|
4347
4397
|
]
|
|
4348
4398
|
},
|
|
4399
|
+
"823": {
|
|
4400
|
+
"code": "B75",
|
|
4401
|
+
"desc": "编成以轻巡为旗舰和四艘驱逐舰为基干的护卫舰队,反复出击 1-4 ,努力确保同海域的制海权!",
|
|
4402
|
+
"memo": "奖励:高速修复材 *4 伊良湖 *1",
|
|
4403
|
+
"memo2": "旗舰轻巡 + 四艘驱逐舰 (必要) 与一艘任意舰,出击 1-4,击败 Boss 获得 S 胜两次。",
|
|
4404
|
+
"name": "水雷战队、南西诸岛防卫线反复出击!",
|
|
4405
|
+
"pre": [
|
|
4406
|
+
"B70"
|
|
4407
|
+
]
|
|
4408
|
+
},
|
|
4409
|
+
"824": {
|
|
4410
|
+
"code": "B76",
|
|
4411
|
+
"desc": "编成以轻空母为旗舰和三艘驱逐舰为基干的护卫舰队,在 1-3 展开,实施对这一海域的哨戒,确保这一海域的安全!",
|
|
4412
|
+
"memo": "奖励:特制家具职人 *1 家具箱 (中) *1",
|
|
4413
|
+
"memo2": "旗舰轻母 + 三艘驱逐舰 (必要) 与两艘任意舰,出击 1-3,击败 Boss 获得 S 胜一次。",
|
|
4414
|
+
"name": "制油所地带沿岸的警戒的实施!",
|
|
4415
|
+
"pre": []
|
|
4416
|
+
},
|
|
4417
|
+
"825": {
|
|
4418
|
+
"code": "B77",
|
|
4419
|
+
"desc": "以水雷战队出击 2-2 | 巴士岛近海、2-3 | 东部奥廖尔海,捕捉歼灭同海域的敌军!",
|
|
4420
|
+
"memo": "奖励:伊良湖 *1 特制家具职人 *1",
|
|
4421
|
+
"memo2": "出击 2-2、2-3 各一次 S 胜达成即可水雷战队 (轻巡或雷巡为旗舰,驱逐舰四艘,其余自由)",
|
|
4422
|
+
"name": "水雷战队、南西诸岛海域的警戒!",
|
|
4423
|
+
"pre": [
|
|
4424
|
+
"C2"
|
|
4425
|
+
]
|
|
4426
|
+
},
|
|
4427
|
+
"826": {
|
|
4428
|
+
"code": "B78",
|
|
4429
|
+
"desc": "以四支特型驱逐舰组成的 “第十九驱逐队” 出击镇守府近海,实施 1-5 ,压制猖獗的敌潜水部队!",
|
|
4430
|
+
"memo": "奖励:高速修复材 *3 伊良湖 *1",
|
|
4431
|
+
"memo2": "用矶波、浦波、绫波、敷波取得 1-5Boss 战胜利,A 胜可。因为带路关系,只能组成 4 人舰队",
|
|
4432
|
+
"name": "“第十九驱逐队” 出击!",
|
|
4433
|
+
"pre": [
|
|
4434
|
+
"A72"
|
|
4435
|
+
]
|
|
4436
|
+
},
|
|
4437
|
+
"827": {
|
|
4438
|
+
"code": "B79",
|
|
4439
|
+
"desc": "编成并出击包含 “第十九驱逐队” 的有力舰队,捕获并击破位于 2-5 的敌主力舰队。",
|
|
4440
|
+
"memo": "奖励:改修资材 *4 洋上补给 *1",
|
|
4441
|
+
"memo2": "用包含矶波、浦波、绫波、敷波 + 2 任意的舰队取得 2-5Boss 战胜利,A 胜可",
|
|
4442
|
+
"name": "“第十九驱逐队” 突入敌方主力!",
|
|
4443
|
+
"pre": [
|
|
4444
|
+
"B78"
|
|
4445
|
+
]
|
|
4446
|
+
},
|
|
4447
|
+
"828": {
|
|
4448
|
+
"code": "B80",
|
|
4449
|
+
"desc": "再度实施中部海域的航空侦查 “K 作战”,同时歼灭敌方巡逻舰队,为实施中部海域的飞机场施工做准备!",
|
|
4450
|
+
"memo": "奖励:设营队 *1",
|
|
4451
|
+
"memo2": "击破 6-3BOSS (S 胜利)",
|
|
4452
|
+
"name": "实施飞行场的施工准备吧!",
|
|
4453
|
+
"pre": [
|
|
4454
|
+
"B41",
|
|
4455
|
+
"B62"
|
|
4456
|
+
]
|
|
4457
|
+
},
|
|
4349
4458
|
"829": {
|
|
4350
4459
|
"code": "B81",
|
|
4351
4460
|
"desc": "用精锐部队突入南方サブ岛冲海域!突破敌人的迎击,同时击溃敌军登陆部队!",
|
|
@@ -5337,11 +5446,11 @@
|
|
|
5337
5446
|
]
|
|
5338
5447
|
},
|
|
5339
5448
|
"932": {
|
|
5340
|
-
"code": "
|
|
5341
|
-
"desc": "
|
|
5449
|
+
"code": "2204B1",
|
|
5450
|
+
"desc": "【春限定】以第十六驱逐队「天津风」为旗舰,第二僚舰配置「雪风」「时津风」「初风」其一,反复出击南西群岛海域巴士海峡、东部奥廖尔海、马六甲海峡槟榔屿海域深处!击败敌方舰队!",
|
|
5342
5451
|
"memo": "奖励:特制家具职人 以下奖励三选一:高速修复材 ×6 三式爆雷投射机 ×3 洋上补给 ×3",
|
|
5343
|
-
"memo2": "
|
|
5344
|
-
"name": "
|
|
5452
|
+
"memo2": "21 年旧限时任务。旗舰天津风,僚舰雪风、时津风,初风 3 选 1,加其他任意,出击 2-2、2-3、7-3P2,各两次 A 胜以上",
|
|
5453
|
+
"name": "【春限定】春之天津风!",
|
|
5345
5454
|
"pre": []
|
|
5346
5455
|
},
|
|
5347
5456
|
"933": {
|
|
@@ -5708,6 +5817,60 @@
|
|
|
5708
5817
|
"B176"
|
|
5709
5818
|
]
|
|
5710
5819
|
},
|
|
5820
|
+
"970": {
|
|
5821
|
+
"code": "B179",
|
|
5822
|
+
"desc": "以包含「浦波改二」「青叶」「鬼怒」的舰队,出击南西群岛防卫线、东部奥廖尔海、冲之岛海、塔威塔威泊地海岸、昭南本土航线!找出并歼灭敌方舰队!",
|
|
5823
|
+
"memo": "奖励:以下奖励三选一:新型火炮兵装资材 新型航空兵装资材 补强增设 以下奖励三选一:试制 长 12.7cm 连装炮 A 型改四新型航空兵装资材 ×3 战斗详报",
|
|
5824
|
+
"memo2": "浦波改二 + 青叶 + 鬼怒 + 任意舰,出击 1-4、2-3、2-5、7-2P2、7-4 各一次 S 胜",
|
|
5825
|
+
"name": "第十六战队,改装「浦波改二」出击!",
|
|
5826
|
+
"pre": []
|
|
5827
|
+
},
|
|
5828
|
+
"971": {
|
|
5829
|
+
"code": "2204B2",
|
|
5830
|
+
"desc": "「九周年限定任务」编成旗舰轻巡,僚舰驱逐舰 2 艘以上的舰队,出击镇守府正面海域,南西诸岛近海,制油所地带沿岸,南西诸岛防卫线,镇守府近海!确保镇守府海域周围的安全!",
|
|
5831
|
+
"memo": "奖励:以下奖励二选一:开发资材 ×9 高速修复材 ×9 以下奖励三选一:九九式艦爆二二型 ×3 九九式艦爆二二型 (熟練) 补强增设",
|
|
5832
|
+
"memo2": "1-1,1-2,1-3,1-4,1-5 S 胜各 1 次",
|
|
5833
|
+
"name": "「限定任务」舰队 9 周年,拔锚!",
|
|
5834
|
+
"pre": []
|
|
5835
|
+
},
|
|
5836
|
+
"972": {
|
|
5837
|
+
"code": "2204B3",
|
|
5838
|
+
"desc": "「九周年任务扩张作战」编成旗舰轻空母,僚舰驱逐舰 2 艘以上的舰队,出击东部奥缪尔海,北方 AL 海域,昭南本土航路,中部北海域孔雀岛近海!消灭敌方战力!",
|
|
5839
|
+
"memo": "奖励:家具 九周年春日装饰窗以下奖励三选一:新型航空兵装资材 ×6 勋章 ×351cm 連装砲",
|
|
5840
|
+
"memo2": "2-3,3-5,7-4,6-4 S 胜各 1 次",
|
|
5841
|
+
"name": "「限定任务」舰队九周年,扩张作战!",
|
|
5842
|
+
"pre": [
|
|
5843
|
+
"2204B2"
|
|
5844
|
+
]
|
|
5845
|
+
},
|
|
5846
|
+
"973": {
|
|
5847
|
+
"code": "By11",
|
|
5848
|
+
"desc": "编成含有 3 艘以上美英舰艇,且不含空母的舰队,出击北方海域莫雷海及阿尔锋西诺方向、西方海域里兰卡岛、南西海域槟榔屿海域深处,搜寻敌舰队并逐一击破!",
|
|
5849
|
+
"memo": "奖励:以下奖励三选一:开发资材 ×8 熟练搭乘员 新型航空兵装资材 以下奖励三选一:Swordfish (水上機型) ×2SOC Seagull OS2U",
|
|
5850
|
+
"memo2": "年常任务 (5 月) 包含任意英国和美国舰娘共三艘,加其他任意舰娘 Red",
|
|
5851
|
+
"name": "日英美联合水上舰队,起航!",
|
|
5852
|
+
"pre": []
|
|
5853
|
+
},
|
|
5854
|
+
"974": {
|
|
5855
|
+
"code": "B180",
|
|
5856
|
+
"desc": "以包含改装特 I 型驱逐舰「矶波改二」的强力舰队,出击镇守府海域南西群岛近海、炼油厂地带沿岸以及南方海域前方!于各战斗海域搜寻歼灭敌方舰队!",
|
|
5857
|
+
"memo": "奖励:以下奖励三选一:高速修复材 ×9 新型火炮兵装资材 补强增设 以下奖励三选一:12.7cm 連装砲 A 型改二 61cm 三連装 (酸素) 魚雷 ×2 开发资材 ×9",
|
|
5858
|
+
"memo2": "包含矶波改二的舰队出击 1-2、1-3、5-1,各一次 S 胜",
|
|
5859
|
+
"name": "「矶波改二」,起航!",
|
|
5860
|
+
"pre": [
|
|
5861
|
+
"By1"
|
|
5862
|
+
]
|
|
5863
|
+
},
|
|
5864
|
+
"975": {
|
|
5865
|
+
"code": "By12",
|
|
5866
|
+
"desc": "以包含精锐第十九驱逐队「矶波改二」「浦波改二」「绫波改二」「敷波改二」的舰队,出击镇守府近海、南西群岛东部奥廖尔海、北方基斯岛海域、南方萨部岛近海海域!搜寻并歼灭敌舰队!",
|
|
5867
|
+
"memo": "奖励:以下奖励三选一:熟練見張員 ×2 改修资材 ×4 高速修复材 ×9 以下奖励三选一:勋章 ×212.7cm 連装砲 A 型改二 ×261cm 三連装 (酸素) 魚雷後期型",
|
|
5868
|
+
"memo2": "年常任务 (5 月) 包含矶波改二、浦波改二、绫波改二、敷波改二的舰队出击 1-5、2-3、3-2、5-3,各一次 S 胜",
|
|
5869
|
+
"name": "精锐「第十九驱逐队」,全力出击!",
|
|
5870
|
+
"pre": [
|
|
5871
|
+
"C65"
|
|
5872
|
+
]
|
|
5873
|
+
},
|
|
5711
5874
|
"1101": {
|
|
5712
5875
|
"code": "F96",
|
|
5713
5876
|
"desc": "工厂整备:废弃「12.7cm 连装炮」x8,准备家具币 x4000 和「14cm 单装炮」「20.3cm 连装炮」各 x4!※完成任务后,准备了的家具币和必要装备 (低改修值的优先) 会被消费。",
|
|
@@ -5816,5 +5979,21 @@
|
|
|
5816
5979
|
"memo2": "",
|
|
5817
5980
|
"name": "镇守府大扫除",
|
|
5818
5981
|
"pre": []
|
|
5982
|
+
},
|
|
5983
|
+
"1113": {
|
|
5984
|
+
"code": "F107",
|
|
5985
|
+
"desc": "开发伊号一型乙导弹搭载机:准备陆军新型尖端袭击机「ki102 乙」*1,「二式复战 屠龙 丙型」*1,熟练搭乘员 * 2 以及新型航空兵装资材 * 4!(任务完成后,准备的资材会消失)",
|
|
5986
|
+
"memo": "奖励:准备キ 102 乙、二式複戦 屠龍 丙型、熟练搭乘员 X2、新型航空兵装资材 X4。奖励キ 102 乙改 + イ号一型乙 誘導弾",
|
|
5987
|
+
"memo2": "准备キ 102 乙、二式複戦 屠龍 丙型、熟练搭乘员 X2、新型航空兵装资材 X4。奖励キ 102 乙改 + イ号一型乙 誘導弾",
|
|
5988
|
+
"name": "装配「无线导弹」的新型袭击机编入实战",
|
|
5989
|
+
"pre": []
|
|
5990
|
+
},
|
|
5991
|
+
"1114": {
|
|
5992
|
+
"code": "F108",
|
|
5993
|
+
"desc": "废弃「小口径主炮」「中口径主炮」「副炮」各 * 3,准备「35.6 连装炮」*3、高速建造材 * 8、铝 800!(任务完成后会消耗准备的资源・装备・高速建造材)",
|
|
5994
|
+
"memo": "奖励:以下奖励三选一:新型火炮兵装资材 新型航空兵装资材 开发资材 ×5 以下奖励三选一:新型兵装资材 新型喷进装备开发资材 改修资材 ×3",
|
|
5995
|
+
"memo2": "废弃小口径主炮、中口径主炮、副炮各 3 个准备 35.6cm 连装炮 ×3、高速建造材 ×8、铝 ×800",
|
|
5996
|
+
"name": "「工厂任务」新装备开发计划 I",
|
|
5997
|
+
"pre": []
|
|
5819
5998
|
}
|
|
5820
5999
|
}
|
package/build/prePostQuest.json
CHANGED
|
@@ -612,7 +612,8 @@
|
|
|
612
612
|
"B55"
|
|
613
613
|
],
|
|
614
614
|
"post": [
|
|
615
|
-
"B60"
|
|
615
|
+
"B60",
|
|
616
|
+
"B72"
|
|
616
617
|
]
|
|
617
618
|
},
|
|
618
619
|
"172": {
|
|
@@ -636,19 +637,25 @@
|
|
|
636
637
|
"pre": [
|
|
637
638
|
"A4"
|
|
638
639
|
],
|
|
639
|
-
"post": [
|
|
640
|
+
"post": [
|
|
641
|
+
"B70"
|
|
642
|
+
]
|
|
640
643
|
},
|
|
641
644
|
"175": {
|
|
642
645
|
"pre": [
|
|
643
646
|
"B20"
|
|
644
647
|
],
|
|
645
|
-
"post": [
|
|
648
|
+
"post": [
|
|
649
|
+
"B73"
|
|
650
|
+
]
|
|
646
651
|
},
|
|
647
652
|
"176": {
|
|
648
653
|
"pre": [
|
|
649
654
|
"B72"
|
|
650
655
|
],
|
|
651
|
-
"post": [
|
|
656
|
+
"post": [
|
|
657
|
+
"B74"
|
|
658
|
+
]
|
|
652
659
|
},
|
|
653
660
|
"177": {
|
|
654
661
|
"pre": [
|
|
@@ -656,7 +663,8 @@
|
|
|
656
663
|
"B21"
|
|
657
664
|
],
|
|
658
665
|
"post": [
|
|
659
|
-
"C42"
|
|
666
|
+
"C42",
|
|
667
|
+
"B78"
|
|
660
668
|
]
|
|
661
669
|
},
|
|
662
670
|
"178": {
|
|
@@ -734,8 +742,8 @@
|
|
|
734
742
|
},
|
|
735
743
|
"186": {
|
|
736
744
|
"pre": [
|
|
737
|
-
"
|
|
738
|
-
"
|
|
745
|
+
"B74",
|
|
746
|
+
"B108"
|
|
739
747
|
],
|
|
740
748
|
"post": [
|
|
741
749
|
"B109"
|
|
@@ -1109,6 +1117,7 @@
|
|
|
1109
1117
|
"Bw7",
|
|
1110
1118
|
"F12",
|
|
1111
1119
|
"F41",
|
|
1120
|
+
"B72",
|
|
1112
1121
|
"B100"
|
|
1113
1122
|
]
|
|
1114
1123
|
},
|
|
@@ -1744,12 +1753,13 @@
|
|
|
1744
1753
|
"C3",
|
|
1745
1754
|
"C61",
|
|
1746
1755
|
"C63",
|
|
1747
|
-
"
|
|
1756
|
+
"C64",
|
|
1748
1757
|
"C48",
|
|
1749
1758
|
"F44",
|
|
1750
1759
|
"F82",
|
|
1751
1760
|
"F85",
|
|
1752
1761
|
"B58",
|
|
1762
|
+
"B77",
|
|
1753
1763
|
"B101",
|
|
1754
1764
|
"B104",
|
|
1755
1765
|
"B122",
|
|
@@ -2055,6 +2065,14 @@
|
|
|
2055
2065
|
],
|
|
2056
2066
|
"post": []
|
|
2057
2067
|
},
|
|
2068
|
+
"356": {
|
|
2069
|
+
"pre": [
|
|
2070
|
+
"B180"
|
|
2071
|
+
],
|
|
2072
|
+
"post": [
|
|
2073
|
+
"By12"
|
|
2074
|
+
]
|
|
2075
|
+
},
|
|
2058
2076
|
"401": {
|
|
2059
2077
|
"pre": [
|
|
2060
2078
|
"A5"
|
|
@@ -2764,8 +2782,8 @@
|
|
|
2764
2782
|
},
|
|
2765
2783
|
"639": {
|
|
2766
2784
|
"pre": [
|
|
2767
|
-
"
|
|
2768
|
-
"
|
|
2785
|
+
"F34",
|
|
2786
|
+
"B71"
|
|
2769
2787
|
],
|
|
2770
2788
|
"post": []
|
|
2771
2789
|
},
|
|
@@ -2780,8 +2798,8 @@
|
|
|
2780
2798
|
},
|
|
2781
2799
|
"642": {
|
|
2782
2800
|
"pre": [
|
|
2783
|
-
"
|
|
2784
|
-
"
|
|
2801
|
+
"F37",
|
|
2802
|
+
"B77"
|
|
2785
2803
|
],
|
|
2786
2804
|
"post": [
|
|
2787
2805
|
"F39",
|
|
@@ -3471,13 +3489,44 @@
|
|
|
3471
3489
|
},
|
|
3472
3490
|
"817": {
|
|
3473
3491
|
"pre": [
|
|
3474
|
-
"
|
|
3475
|
-
"B62"
|
|
3492
|
+
"A69"
|
|
3476
3493
|
],
|
|
3477
3494
|
"post": [
|
|
3478
|
-
"
|
|
3479
|
-
"
|
|
3480
|
-
|
|
3495
|
+
"B71",
|
|
3496
|
+
"B75"
|
|
3497
|
+
]
|
|
3498
|
+
},
|
|
3499
|
+
"818": {
|
|
3500
|
+
"pre": [
|
|
3501
|
+
"B70"
|
|
3502
|
+
],
|
|
3503
|
+
"post": [
|
|
3504
|
+
"F36"
|
|
3505
|
+
]
|
|
3506
|
+
},
|
|
3507
|
+
"819": {
|
|
3508
|
+
"pre": [
|
|
3509
|
+
"A66",
|
|
3510
|
+
"Bw5"
|
|
3511
|
+
],
|
|
3512
|
+
"post": [
|
|
3513
|
+
"A71"
|
|
3514
|
+
]
|
|
3515
|
+
},
|
|
3516
|
+
"820": {
|
|
3517
|
+
"pre": [
|
|
3518
|
+
"A70"
|
|
3519
|
+
],
|
|
3520
|
+
"post": [
|
|
3521
|
+
"B90"
|
|
3522
|
+
]
|
|
3523
|
+
},
|
|
3524
|
+
"821": {
|
|
3525
|
+
"pre": [
|
|
3526
|
+
"A71"
|
|
3527
|
+
],
|
|
3528
|
+
"post": [
|
|
3529
|
+
"A81"
|
|
3481
3530
|
]
|
|
3482
3531
|
},
|
|
3483
3532
|
"822": {
|
|
@@ -3487,6 +3536,49 @@
|
|
|
3487
3536
|
],
|
|
3488
3537
|
"post": []
|
|
3489
3538
|
},
|
|
3539
|
+
"823": {
|
|
3540
|
+
"pre": [
|
|
3541
|
+
"B70"
|
|
3542
|
+
],
|
|
3543
|
+
"post": [
|
|
3544
|
+
"B168"
|
|
3545
|
+
]
|
|
3546
|
+
},
|
|
3547
|
+
"825": {
|
|
3548
|
+
"pre": [
|
|
3549
|
+
"C2"
|
|
3550
|
+
],
|
|
3551
|
+
"post": [
|
|
3552
|
+
"F38"
|
|
3553
|
+
]
|
|
3554
|
+
},
|
|
3555
|
+
"826": {
|
|
3556
|
+
"pre": [
|
|
3557
|
+
"A72"
|
|
3558
|
+
],
|
|
3559
|
+
"post": [
|
|
3560
|
+
"B79"
|
|
3561
|
+
]
|
|
3562
|
+
},
|
|
3563
|
+
"827": {
|
|
3564
|
+
"pre": [
|
|
3565
|
+
"B78"
|
|
3566
|
+
],
|
|
3567
|
+
"post": [
|
|
3568
|
+
"B86"
|
|
3569
|
+
]
|
|
3570
|
+
},
|
|
3571
|
+
"828": {
|
|
3572
|
+
"pre": [
|
|
3573
|
+
"B41",
|
|
3574
|
+
"B62"
|
|
3575
|
+
],
|
|
3576
|
+
"post": [
|
|
3577
|
+
"F49",
|
|
3578
|
+
"B81",
|
|
3579
|
+
"B139"
|
|
3580
|
+
]
|
|
3581
|
+
},
|
|
3490
3582
|
"829": {
|
|
3491
3583
|
"pre": [
|
|
3492
3584
|
"B80"
|
|
@@ -3581,8 +3673,8 @@
|
|
|
3581
3673
|
},
|
|
3582
3674
|
"844": {
|
|
3583
3675
|
"pre": [
|
|
3584
|
-
"
|
|
3585
|
-
"
|
|
3676
|
+
"B73",
|
|
3677
|
+
"B81"
|
|
3586
3678
|
],
|
|
3587
3679
|
"post": [
|
|
3588
3680
|
"B178"
|
|
@@ -4013,7 +4105,9 @@
|
|
|
4013
4105
|
"pre": [
|
|
4014
4106
|
"B44"
|
|
4015
4107
|
],
|
|
4016
|
-
"post": [
|
|
4108
|
+
"post": [
|
|
4109
|
+
"B180"
|
|
4110
|
+
]
|
|
4017
4111
|
},
|
|
4018
4112
|
"905": {
|
|
4019
4113
|
"pre": [
|
|
@@ -4250,8 +4344,8 @@
|
|
|
4250
4344
|
},
|
|
4251
4345
|
"940": {
|
|
4252
4346
|
"pre": [
|
|
4253
|
-
"
|
|
4254
|
-
"
|
|
4347
|
+
"B75",
|
|
4348
|
+
"B103"
|
|
4255
4349
|
],
|
|
4256
4350
|
"post": []
|
|
4257
4351
|
},
|
|
@@ -4445,6 +4539,32 @@
|
|
|
4445
4539
|
],
|
|
4446
4540
|
"post": []
|
|
4447
4541
|
},
|
|
4542
|
+
"971": {
|
|
4543
|
+
"pre": [],
|
|
4544
|
+
"post": [
|
|
4545
|
+
"2204B3"
|
|
4546
|
+
]
|
|
4547
|
+
},
|
|
4548
|
+
"972": {
|
|
4549
|
+
"pre": [
|
|
4550
|
+
"2204B2"
|
|
4551
|
+
],
|
|
4552
|
+
"post": []
|
|
4553
|
+
},
|
|
4554
|
+
"974": {
|
|
4555
|
+
"pre": [
|
|
4556
|
+
"By1"
|
|
4557
|
+
],
|
|
4558
|
+
"post": [
|
|
4559
|
+
"C65"
|
|
4560
|
+
]
|
|
4561
|
+
},
|
|
4562
|
+
"975": {
|
|
4563
|
+
"pre": [
|
|
4564
|
+
"C65"
|
|
4565
|
+
],
|
|
4566
|
+
"post": []
|
|
4567
|
+
},
|
|
4448
4568
|
"1101": {
|
|
4449
4569
|
"pre": [],
|
|
4450
4570
|
"post": [
|
package/build/questCategory.json
CHANGED
|
@@ -117,6 +117,8 @@
|
|
|
117
117
|
946,
|
|
118
118
|
947,
|
|
119
119
|
948,
|
|
120
|
+
973,
|
|
121
|
+
975,
|
|
120
122
|
1103,
|
|
121
123
|
1104,
|
|
122
124
|
1105,
|
|
@@ -327,6 +329,7 @@
|
|
|
327
329
|
347,
|
|
328
330
|
351,
|
|
329
331
|
352,
|
|
332
|
+
356,
|
|
330
333
|
401,
|
|
331
334
|
405,
|
|
332
335
|
406,
|
|
@@ -591,6 +594,7 @@
|
|
|
591
594
|
970,
|
|
592
595
|
971,
|
|
593
596
|
972,
|
|
597
|
+
974,
|
|
594
598
|
1101,
|
|
595
599
|
1102,
|
|
596
600
|
1106,
|
|
@@ -599,6 +603,7 @@
|
|
|
599
603
|
1110,
|
|
600
604
|
1111,
|
|
601
605
|
1112,
|
|
602
|
-
1113
|
|
606
|
+
1113,
|
|
607
|
+
1114
|
|
603
608
|
]
|
|
604
609
|
}
|
package/build/questCodeMap.json
CHANGED
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
"C9": 312,
|
|
206
206
|
"C61": 313,
|
|
207
207
|
"C63": 314,
|
|
208
|
-
"
|
|
208
|
+
"C64": 315,
|
|
209
209
|
"C13": 316,
|
|
210
210
|
"C15": 317,
|
|
211
211
|
"C16": 318,
|
|
@@ -244,6 +244,7 @@
|
|
|
244
244
|
"C58": 353,
|
|
245
245
|
"C60": 354,
|
|
246
246
|
"C62": 355,
|
|
247
|
+
"C65": 356,
|
|
247
248
|
"D1": 401,
|
|
248
249
|
"D2": 402,
|
|
249
250
|
"D3": 403,
|
|
@@ -423,8 +424,18 @@
|
|
|
423
424
|
"B68": 814,
|
|
424
425
|
"B69": 815,
|
|
425
426
|
"B67": 816,
|
|
426
|
-
"
|
|
427
|
+
"B70": 817,
|
|
428
|
+
"B71": 818,
|
|
429
|
+
"B72": 819,
|
|
430
|
+
"B73": 820,
|
|
431
|
+
"B74": 821,
|
|
427
432
|
"Bq1": 822,
|
|
433
|
+
"B75": 823,
|
|
434
|
+
"B76": 824,
|
|
435
|
+
"B77": 825,
|
|
436
|
+
"B78": 826,
|
|
437
|
+
"B79": 827,
|
|
438
|
+
"B80": 828,
|
|
428
439
|
"B81": 829,
|
|
429
440
|
"B82": 830,
|
|
430
441
|
"B139": 833,
|
|
@@ -522,7 +533,7 @@
|
|
|
522
533
|
"B156": 929,
|
|
523
534
|
"B157": 930,
|
|
524
535
|
"B158": 931,
|
|
525
|
-
"
|
|
536
|
+
"2204B1": 932,
|
|
526
537
|
"B159": 933,
|
|
527
538
|
"B160": 934,
|
|
528
539
|
"B161": 935,
|
|
@@ -560,6 +571,12 @@
|
|
|
560
571
|
"B176": 967,
|
|
561
572
|
"B177": 968,
|
|
562
573
|
"B178": 969,
|
|
574
|
+
"B179": 970,
|
|
575
|
+
"2204B2": 971,
|
|
576
|
+
"2204B3": 972,
|
|
577
|
+
"By11": 973,
|
|
578
|
+
"B180": 974,
|
|
579
|
+
"By12": 975,
|
|
563
580
|
"F96": 1101,
|
|
564
581
|
"F97": 1102,
|
|
565
582
|
"F98": 1103,
|
|
@@ -571,5 +588,7 @@
|
|
|
571
588
|
"F104": 1109,
|
|
572
589
|
"21FaLF01": 1110,
|
|
573
590
|
"F105": 1111,
|
|
574
|
-
"F106": 1112
|
|
591
|
+
"F106": 1112,
|
|
592
|
+
"F107": 1113,
|
|
593
|
+
"F108": 1114
|
|
575
594
|
}
|
package/package.json
CHANGED
|
@@ -557,6 +557,16 @@ Object {
|
|
|
557
557
|
"gameId": 948,
|
|
558
558
|
"name": "机动部队决战",
|
|
559
559
|
},
|
|
560
|
+
Object {
|
|
561
|
+
"code": "By11",
|
|
562
|
+
"gameId": 973,
|
|
563
|
+
"name": "日英美联合水上舰队,起航!",
|
|
564
|
+
},
|
|
565
|
+
Object {
|
|
566
|
+
"code": "By12",
|
|
567
|
+
"gameId": 975,
|
|
568
|
+
"name": "精锐「第十九驱逐队」,全力出击!",
|
|
569
|
+
},
|
|
560
570
|
Object {
|
|
561
571
|
"code": "F98",
|
|
562
572
|
"gameId": 1103,
|
|
@@ -77,6 +77,7 @@ Object {
|
|
|
77
77
|
"173": true,
|
|
78
78
|
"174": true,
|
|
79
79
|
"175": true,
|
|
80
|
+
"176": true,
|
|
80
81
|
"177": true,
|
|
81
82
|
"178": true,
|
|
82
83
|
"179": true,
|
|
@@ -177,6 +178,7 @@ Object {
|
|
|
177
178
|
"346": true,
|
|
178
179
|
"347": true,
|
|
179
180
|
"355": true,
|
|
181
|
+
"356": true,
|
|
180
182
|
"401": true,
|
|
181
183
|
"402": true,
|
|
182
184
|
"403": true,
|
|
@@ -288,7 +290,15 @@ Object {
|
|
|
288
290
|
"815": true,
|
|
289
291
|
"816": true,
|
|
290
292
|
"817": true,
|
|
293
|
+
"818": true,
|
|
294
|
+
"819": true,
|
|
295
|
+
"820": true,
|
|
296
|
+
"821": true,
|
|
291
297
|
"822": true,
|
|
298
|
+
"823": true,
|
|
299
|
+
"826": true,
|
|
300
|
+
"827": true,
|
|
301
|
+
"828": true,
|
|
292
302
|
"829": true,
|
|
293
303
|
"833": true,
|
|
294
304
|
"835": true,
|
|
@@ -362,6 +372,8 @@ Object {
|
|
|
362
372
|
"967": true,
|
|
363
373
|
"968": true,
|
|
364
374
|
"969": true,
|
|
375
|
+
"974": true,
|
|
376
|
+
"975": true,
|
|
365
377
|
}
|
|
366
378
|
`;
|
|
367
379
|
|
|
@@ -397,3 +409,13 @@ Object {
|
|
|
397
409
|
"307": true,
|
|
398
410
|
}
|
|
399
411
|
`;
|
|
412
|
+
|
|
413
|
+
exports[`questHelper should getCompletedQuest quest match snapshot 1`] = `
|
|
414
|
+
Object {
|
|
415
|
+
"101": true,
|
|
416
|
+
"102": true,
|
|
417
|
+
"103": true,
|
|
418
|
+
"104": true,
|
|
419
|
+
"174": true,
|
|
420
|
+
}
|
|
421
|
+
`;
|
|
@@ -4,7 +4,7 @@ import newQuestData from '../../build/kcQuestsData/quests-scn-new.json'
|
|
|
4
4
|
describe('should version correct', () => {
|
|
5
5
|
test('should KcwikiQuestData Game data version correct', () => {
|
|
6
6
|
expect(version).toMatchInlineSnapshot(
|
|
7
|
-
`"
|
|
7
|
+
`"148476742357a844acd8fd6ca11723711fd4217d"`
|
|
8
8
|
)
|
|
9
9
|
})
|
|
10
10
|
|
|
@@ -8,8 +8,8 @@ describe('should questCategory correct', () => {
|
|
|
8
8
|
expect(questCategory.weeklyQuest.length).toMatchInlineSnapshot(`17`)
|
|
9
9
|
expect(questCategory.monthlyQuest.length).toMatchInlineSnapshot(`11`)
|
|
10
10
|
expect(questCategory.quarterlyQuest.length).toMatchInlineSnapshot(`25`)
|
|
11
|
-
expect(questCategory.yearlyQuest.length).toMatchInlineSnapshot(`
|
|
12
|
-
expect(questCategory.singleQuest.length).toMatchInlineSnapshot(`
|
|
11
|
+
expect(questCategory.yearlyQuest.length).toMatchInlineSnapshot(`39`)
|
|
12
|
+
expect(questCategory.singleQuest.length).toMatchInlineSnapshot(`480`)
|
|
13
13
|
})
|
|
14
14
|
|
|
15
15
|
test('snapshot', () => {
|
|
@@ -22,6 +22,10 @@ describe('questHelper', () => {
|
|
|
22
22
|
expect(getCompletedQuest([101])).toEqual({})
|
|
23
23
|
})
|
|
24
24
|
|
|
25
|
+
test('should getCompletedQuest quest match snapshot', () => {
|
|
26
|
+
expect(getCompletedQuest([817])).toMatchSnapshot()
|
|
27
|
+
})
|
|
28
|
+
|
|
25
29
|
test('should 236 getCompletedQuest correct', () => {
|
|
26
30
|
expect(getCompletedQuest([236])).toMatchSnapshot()
|
|
27
31
|
})
|
package/src/questHelper.ts
CHANGED
|
@@ -248,15 +248,35 @@ const calcQuestMap = (
|
|
|
248
248
|
return map
|
|
249
249
|
}
|
|
250
250
|
|
|
251
|
-
export const getCompletedQuest = moize(
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
251
|
+
export const getCompletedQuest = moize(
|
|
252
|
+
(inProgressQuest: number[]) => {
|
|
253
|
+
const completedQuest = calcQuestMap(inProgressQuest, getPreQuestIds)
|
|
254
|
+
return completedQuest
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
matchesArg: (cacheKeyArg, keyArg) => {
|
|
258
|
+
if (Array.isArray(cacheKeyArg) && Array.isArray(keyArg)) {
|
|
259
|
+
return cacheKeyArg.join(',') === keyArg.join(',')
|
|
260
|
+
}
|
|
261
|
+
return cacheKeyArg === keyArg
|
|
262
|
+
},
|
|
263
|
+
}
|
|
264
|
+
)
|
|
255
265
|
|
|
256
|
-
export const getLockedQuest = moize(
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
266
|
+
export const getLockedQuest = moize(
|
|
267
|
+
(inProgressQuest: number[]) => {
|
|
268
|
+
const lockedQuest = calcQuestMap(inProgressQuest, getPostQuestIds)
|
|
269
|
+
return lockedQuest
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
matchesArg: (cacheKeyArg, keyArg) => {
|
|
273
|
+
if (Array.isArray(cacheKeyArg) && Array.isArray(keyArg)) {
|
|
274
|
+
return cacheKeyArg.join(',') === keyArg.join(',')
|
|
275
|
+
}
|
|
276
|
+
return cacheKeyArg === keyArg
|
|
277
|
+
},
|
|
278
|
+
}
|
|
279
|
+
)
|
|
260
280
|
|
|
261
281
|
export const questApiStateToQuestStatus = (
|
|
262
282
|
state: QUEST_API_STATE | undefined
|
package/src/store/quest.ts
CHANGED
|
@@ -88,7 +88,7 @@ export const useQuest = (): UnionQuest[] => {
|
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
export const useQuestByCode = (code: string)
|
|
91
|
+
export const useQuestByCode = (code: string) => {
|
|
92
92
|
const questMap = useQuestMap()
|
|
93
93
|
const gameId = getQuestIdByCode(code)
|
|
94
94
|
if (gameId && gameId in questMap) {
|
|
@@ -102,17 +102,20 @@ export const useQuestByCode = (code: string): UnionQuest | null => {
|
|
|
102
102
|
|
|
103
103
|
export const useQuestStatus = (gameId: number | null) => {
|
|
104
104
|
const gameQuest = useGameQuest()
|
|
105
|
-
const gameQuestId = gameQuest.map((quest) => quest.api_no)
|
|
106
|
-
const completedQuest = getCompletedQuest(gameQuestId)
|
|
107
|
-
const lockedQuest = getLockedQuest(gameQuestId)
|
|
108
105
|
|
|
109
106
|
if (!gameId) {
|
|
110
107
|
return QUEST_STATUS.UNKNOWN
|
|
111
108
|
}
|
|
112
109
|
const theGameQuest = gameQuest.find((quest) => quest.api_no === gameId)
|
|
113
110
|
if (theGameQuest) {
|
|
111
|
+
// the quest is in game
|
|
114
112
|
return questApiStateToQuestStatus(theGameQuest.api_state)
|
|
115
113
|
}
|
|
114
|
+
|
|
115
|
+
const gameQuestId = gameQuest.map((quest) => quest.api_no)
|
|
116
|
+
const completedQuest = getCompletedQuest(gameQuestId)
|
|
117
|
+
const lockedQuest = getLockedQuest(gameQuestId)
|
|
118
|
+
|
|
116
119
|
if (gameId in lockedQuest) {
|
|
117
120
|
return QUEST_STATUS.LOCKED
|
|
118
121
|
}
|
package/src/store/store.tsx
CHANGED
package/tsconfig.json
CHANGED