From 7e70bba3956f56f1ebe340071483ca7a1ece9110 Mon Sep 17 00:00:00 2001 From: EightyDollars Date: Tue, 9 Jul 2024 16:39:32 +0800 Subject: [PATCH] =?UTF-8?q?add:=E7=AC=AC8=E7=AB=A0=E5=AF=BC=E8=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- arknights_mower/models/navigation.pkl | Bin 8696 -> 11688 bytes arknights_mower/solvers/navigation.py | 39 +++++++++++++++++++++++--- arknights_mower/utils/recognize.py | 1 + 3 files changed, 36 insertions(+), 4 deletions(-) diff --git a/arknights_mower/models/navigation.pkl b/arknights_mower/models/navigation.pkl index 4e463c85d60732a3d232f69540177238cac0be34..8691ec462d8d1feebc5274a17aa1a93ca6fd0905 100644 GIT binary patch delta 4260 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 G1X)^mKRgov delta 1244 zcmV<21S9*XTlhne7zN^qg(0@F9T^>egh+gO^WohxN4%Dcz)i$3awd{YZ*8nKbp~UI zuJbBID*GcrYqkLg5J34wPieK^RD#xxtLO4Gp6YeVEm>e9R!XjGV57~}XCF(BCtU>t zXiCR;r{Awxy&_l#20)-rK%XUCM!5TeGn8`#sL9*++1+%Xa#IiJvy~ zbr7&n7S}M%Ixhz>-etdWpK$%fRk$y7QDmFWezYg!wjgpfW-Uk;S3(gKg;=7kH`qrN zkc_P~pVl$ym5kC3vwHExXu4>dcra=xjl6p%r7dwf!zv%vv+~n*Iu>?h{i!YF_*1*b z-NO^oEDW79kQwFb=-fy8Gh5bwBtBhOu5I}vJ2VHp8Wp!DcZX-drQNOkH&p526=~`3 zyb_uquIAp$DY%yy35r6rk;s8oEefBBN(G-1X`_F6*6IKK1%a4i0U`m{w6ni{rxU6x zZn?#zthvYWA#%@^q2_Lr0rKOV5KE~~#^Npu8vX+}{G%Fha5pg0usz4W1Z?2|T%Whh$_z!M0t#AodL(3vFmtJOgc$x+ zP@dh)6Dxk%L0LQ|GNSY}2oWFkOVrqz9csr__GW)g3 z+;Uj1v`M>Kkk&|Ai-Jq`GM+n;rDaQyC>r=k8FL#9JsdVQ4}se;eIM(2vmAsnkYWR& zclzRFa!~MH@CQeK#13ZB-ziy2eO|DGu~pWy)ZvH{4c5qj6hrLxQUdc6T!FZ z8EMq!;Rid=F)F5LEwNU$TM@K9uyG*EUHpTljR`R+$FqvFM9^D8bhkGHc*2JuEyZ*! z_1pt<^wP3|UkQD@^}<-{B8@>*oy>(LbnOC3H~ps;fC6HFe_X8*R@8M#!j1z>Q%9o< z?C<5IfX$Kn%^%*!!>gv(wUVEacEnz1*~rdh2w#~2mf3u|(6@;?h7rRH*%@Rq0yHxx zj@M)Ps5)`00T8-BhXlNWhEI|t9nC>Jz$$sOwGcahnF&7>$?^!RY&@6ajQF%7-+_uR zCm6u#HzCM>nQ^byJ14X-%E+}V!FHV!Mn|RfJ`z2P)oCI~t4S#BCr`{sEq-vqpNjRk z_Fpqg!%)!krV;1d;)RC_rZOrqbbSs4qe!3QR#@(pJ2G>I2m?JzU&Rk6u0000?)+aHPdDI910n$T;lL`Q&On6SQ#Ao{g00000 G1X)_=Okd0Z diff --git a/arknights_mower/solvers/navigation.py b/arknights_mower/solvers/navigation.py index 23d12eb6e..d56261cee 100644 --- a/arknights_mower/solvers/navigation.py +++ b/arknights_mower/solvers/navigation.py @@ -2,7 +2,7 @@ import pickle import cv2 - +import re from arknights_mower import __rootdir__ from arknights_mower.utils import hot_update from arknights_mower.utils.graph import SceneGraphSolver @@ -25,6 +25,34 @@ "1-11": (4965, -9), "1-12": (5436, -10), }, + 8: { + "R8-1": (0, 0), + "R8-2": (471, 0), + "R8-3": (864, 0), + "R8-4": (1259, 0), + "R8-5": (1651, -4), + "R8-6": (2045, -4), + "R8-7": (2228, -124), + "R8-8": (2437, -4), + "R8-9": (2951, -4), + "R8-10": (3284, -4), + "R8-11": (3617, -4), + "M8-1": (6, 339), + "M8-2": (865, 339), + "M8-3": (1259, 339), + "M8-4": (1651, 339), + "M8-5": (2045, 339), + "M8-6": (2439, 340), + "M8-7": (2952, 340), + "M8-8": (3617, 339), + "JT8-1": (4092, 171), + "JT8-2": (4545, 171), + "JT8-3": (5022, 171), + "H8-1": (5556, -24), + "H8-2": (5759, 354), + "H8-3": (5999, -24), + "H8-4": (6192, 354), + }, 12: { "12-1": (0, 0), "12-2": (342, 292), @@ -123,7 +151,7 @@ class NavigationSolver(SceneGraphSolver): def run(self, name: str): logger.info("Start: 关卡导航") self.success = False - self.act=None + self.act = None hot_update.update() if name in hot_update.navigation.NavigationSolver.location: @@ -139,9 +167,12 @@ def run(self, name: str): self.pr_prefix = pr_prefix self.now_difficulty = None self.change_to = None + self.patten = r"^(R|JT|H|M)(\d{1,2})$" if name == "Annihilation": logger.info("剿灭导航") - elif prefix.isdigit(): + elif prefix.isdigit() or re.match(self.patten, prefix): + if match := re.search(self.patten, prefix): + prefix = match.group(2) prefix = int(prefix) self.prefix = prefix if prefix in location and name in location[prefix]: @@ -166,7 +197,7 @@ def run(self, name: str): else: logger.error(f"暂不支持{name}") return False - + super().run() return self.success diff --git a/arknights_mower/utils/recognize.py b/arknights_mower/utils/recognize.py index 32dbc38b2..2086e4688 100644 --- a/arknights_mower/utils/recognize.py +++ b/arknights_mower/utils/recognize.py @@ -739,6 +739,7 @@ def find( "loading3": (1681, 1000), "loading4": (828, 429), "main_theme": (283, 945), + "main_theme_small": (321, 973), "materiel_ico": (892, 61), "mission_daily_on": ((685, 15), (1910, 100)), "mission_weekly_on": ((685, 15), (1910, 100)),