diff --git a/resource/tasks.json b/resource/tasks.json index 6267f93202..b4f113f54e 100644 --- a/resource/tasks.json +++ b/resource/tasks.json @@ -4437,8 +4437,10 @@ "template": "empty.png", "action": "ClickSelf", "roi": [1155, 41, 125, 679], + "method": "RGBCount", "templThreshold": 0.7, - "maskRange": [100, 140], + "colorScales": [[90, 150]], + "colorWithClose": false, "postDelay": 500 }, "BattleQuickFormationFilter": { diff --git a/resource/template/BattleQuickFormationRole-All.png b/resource/template/BattleQuickFormationRole-All.png index 3230307a52..bf34914c8d 100644 Binary files a/resource/template/BattleQuickFormationRole-All.png and b/resource/template/BattleQuickFormationRole-All.png differ diff --git a/resource/template/BattleQuickFormationRole-Caster.png b/resource/template/BattleQuickFormationRole-Caster.png index f2c8aca4ab..59a63bb4f3 100644 Binary files a/resource/template/BattleQuickFormationRole-Caster.png and b/resource/template/BattleQuickFormationRole-Caster.png differ diff --git a/resource/template/BattleQuickFormationRole-Medic.png b/resource/template/BattleQuickFormationRole-Medic.png index cf232025e9..c06040f278 100644 Binary files a/resource/template/BattleQuickFormationRole-Medic.png and b/resource/template/BattleQuickFormationRole-Medic.png differ diff --git a/resource/template/BattleQuickFormationRole-Pioneer.png b/resource/template/BattleQuickFormationRole-Pioneer.png index bf49b2333d..ea046111ae 100644 Binary files a/resource/template/BattleQuickFormationRole-Pioneer.png and b/resource/template/BattleQuickFormationRole-Pioneer.png differ diff --git a/resource/template/BattleQuickFormationRole-Sniper.png b/resource/template/BattleQuickFormationRole-Sniper.png index 4c7821b085..a4ca3e35d4 100644 Binary files a/resource/template/BattleQuickFormationRole-Sniper.png and b/resource/template/BattleQuickFormationRole-Sniper.png differ diff --git a/resource/template/BattleQuickFormationRole-Special.png b/resource/template/BattleQuickFormationRole-Special.png index a1c990a9ca..00edeee5d5 100644 Binary files a/resource/template/BattleQuickFormationRole-Special.png and b/resource/template/BattleQuickFormationRole-Special.png differ diff --git a/resource/template/BattleQuickFormationRole-Support.png b/resource/template/BattleQuickFormationRole-Support.png index 464a572193..e79a4abf56 100644 Binary files a/resource/template/BattleQuickFormationRole-Support.png and b/resource/template/BattleQuickFormationRole-Support.png differ diff --git a/resource/template/BattleQuickFormationRole-Tank.png b/resource/template/BattleQuickFormationRole-Tank.png index 80f91b4077..aeb24e564e 100644 Binary files a/resource/template/BattleQuickFormationRole-Tank.png and b/resource/template/BattleQuickFormationRole-Tank.png differ diff --git a/resource/template/BattleQuickFormationRole-Warrior.png b/resource/template/BattleQuickFormationRole-Warrior.png index 9651f3ed83..bb077e0f1a 100644 Binary files a/resource/template/BattleQuickFormationRole-Warrior.png and b/resource/template/BattleQuickFormationRole-Warrior.png differ diff --git a/src/MaaCore/Task/Miscellaneous/BattleFormationTask.cpp b/src/MaaCore/Task/Miscellaneous/BattleFormationTask.cpp index e95c215dc4..ee7365f913 100644 --- a/src/MaaCore/Task/Miscellaneous/BattleFormationTask.cpp +++ b/src/MaaCore/Task/Miscellaneous/BattleFormationTask.cpp @@ -431,7 +431,7 @@ bool asst::BattleFormationTask::click_role_table(battle::Role role) tasks = { "BattleQuickFormationRole-All", "BattleQuickFormationRole-All-OCR" }; } else { - tasks = { "BattleQuickFormationRole-" + role_iter->second }; + tasks = { "BattleQuickFormationRole-" + role_iter->second, "BattleQuickFormationRole-All", "BattleQuickFormationRole-All-OCR"}; } return ProcessTask(*this, tasks).set_retry_times(0).run(); } diff --git a/tools/MaskRangeTool/main.py b/tools/MaskRangeTool/main.py index 35bfcf9fbe..84cdd27010 100644 --- a/tools/MaskRangeTool/main.py +++ b/tools/MaskRangeTool/main.py @@ -16,24 +16,24 @@ if __name__ == '__main__': rgb_base_mask_range_ignore_dark = [[[20, 20, 20], [255, 255, 255]]] # 忽略暗色背景 # 自动判断图片的合适 mask_ranges - image = cv2.imread(str(maa_dir / "resource" / "template" / "Sarkaz@Roguelike@StageEmergencyTransportation.png")) - generate_mask_ranges(image, 'luv', luv_base_mask_range_ignore_light_dark) - generate_mask_ranges(image, 'hsv', hsv_base_mask_range_ignore_dark) - generate_mask_ranges(image, 'rgb', rgb_base_mask_range_ignore_dark) + # image = cv2.imread(str(maa_dir / "resource" / "template" / "BattleQuickFormationRole-Pioneer.png")) + # generate_mask_ranges(image, 'luv', luv_base_mask_range_ignore_light_dark) + # generate_mask_ranges(image, 'hsv', hsv_base_mask_range_ignore_dark) + # generate_mask_ranges(image, 'rgb', rgb_base_mask_range_ignore_dark) # 在给定的 mask_ranges 下展示一张图 - image = cv2.imread(str(maa_dir / "resource" / "template" / "Sarkaz@Roguelike@StageEmergencyTransportation.png")) - mask_ranges = [[[78, 60, 80], [93, 140, 120]]] - show_image_mask(image, calc_mask_from_ranges(image, mask_ranges, 'hsv', True), 'hsv') - mask_ranges = [[[93, 81, 130], [102, 97, 142]], [[128, 100, 164], [134, 110, 169]], [[95, 85, 145], [105, 95, 155]]] - show_image_mask(image, calc_mask_from_ranges(image, mask_ranges, 'luv', True), 'luv') + image = cv2.imread(str(maa_dir / "resource" / "template" / "BattleQuickFormationRole-Pioneer.png")) + mask_ranges = [[[90, 90, 90], [150, 150, 150]]] + show_image_mask(image, calc_mask_from_ranges(image, mask_ranges, 'rgb', True), 'rgb') + # mask_ranges = [[[93, 81, 130], [102, 97, 142]], [[128, 100, 164], [134, 110, 169]], [[95, 85, 145], [105, 95, 155]]] + # show_image_mask(image, calc_mask_from_ranges(image, mask_ranges, 'luv', True), 'luv') # 在给定的 mask_ranges 下比较两张图 - image1 = cv2.imread(str(maa_dir / "resource" / "template" / "Sarkaz@Roguelike@StageEmergencyTransportation.png")) - image2 = cv2.imread(str(maa_dir / "resource" / "template" / "Sarkaz@Roguelike@StageConfrontation.png")) - mask_ranges = [[[78, 60, 80], [93, 140, 120]], [[18, 90, 130], [23, 130, 150]], [[14, 130, 200], [16, 150, 220]]] - compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "hsv") - compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "hsv", True) - mask_ranges = [[[93, 81, 125], [102, 97, 150]], [[95, 85, 145], [105, 95, 155]]] - compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "luv") - compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "luv", True) + image1 = cv2.imread(str(maa_dir / "resource" / "template" / "BattleQuickFormationRole-Pioneer.png")) + image2 = cv2.imread(str(maa_dir / "resource" / "template" / "BattleQuickFormationRole-Tank.png")) + mask_ranges = [[[90, 90, 90], [150, 150, 150]]] + compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "rgb") + compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "rgb", True) + # mask_ranges = [[[93, 81, 125], [102, 97, 150]], [[95, 85, 145], [105, 95, 155]]] + # compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "luv") + # compare_2_image_with_mask_ranges(image1, image2, mask_ranges, "luv", True)