From fa4345ef3fd510ee313e75dbdca10b38db00e725 Mon Sep 17 00:00:00 2001 From: Adriein Date: Sat, 8 Jun 2024 12:59:44 +0200 Subject: [PATCH 1/2] feat: trying to get char speed --- .../Widget/GlobalGameWidgetContainer.py | 23 +++++++++++++++++++ src/SharedPackage/Constants.py | 2 ++ 2 files changed, 25 insertions(+) diff --git a/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py b/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py index 13a092e..5d4c883 100644 --- a/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py +++ b/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py @@ -48,6 +48,9 @@ def __init__(self, monitor: Monitor, pyautogui: PyAutoGui, initial_floor_lvl: in Logger.info('Locating Ring Widget...') self.__ring_region = self.__locate_ring_widget() + Logger.info('Locating Skills Widget...') + self.__skill_region = self.__locate_skill_widget() + def battle_list_widget(self) -> ScreenRegion: return self.__battle_list_widget_region @@ -214,3 +217,23 @@ def __locate_ring_widget(self) -> ScreenRegion: end_x = x + width return ScreenRegion(start_x, end_x, start_y, end_y) + + def __locate_skill_widget(self) -> ScreenRegion: + frame = cv2.cvtColor(self.__initial_setup_screenshot, cv2.COLOR_BGR2GRAY) + + skill_anchor = Cv2File.load_image(f'src/Wiki/Ui/Skill/skill_widget.png') + + match = cv2.matchTemplate(frame, skill_anchor, cv2.TM_CCOEFF_NORMED) + + [_, _, _, max_coordinates] = cv2.minMaxLoc(match) + + (x, y) = max_coordinates + + height, width = skill_anchor.shape + + start_x = x + end_x = start_x + self.__monitor.adjust_pixel_to_monitor(Constants.REFERENCE_MINI_MAP_END_X) + start_y = y + end_y = start_y + self.__monitor.adjust_pixel_to_monitor(Constants.REFERENCE_SKILL_WIDGET_HEIGHT) + + return ScreenRegion(start_x, end_x, start_y, end_y) diff --git a/src/SharedPackage/Constants.py b/src/SharedPackage/Constants.py index 3c12982..69df2d7 100644 --- a/src/SharedPackage/Constants.py +++ b/src/SharedPackage/Constants.py @@ -19,6 +19,8 @@ class Constants: REFERENCE_MINI_MAP_START_Y = 50 REFERENCE_MINI_MAP_END_Y = 109 + REFERENCE_SKILL_WIDGET_HEIGHT = 180 + # APP MODE TRAIN_MODE = "TRAIN_MODE" DEBUG_MODE = "DEBUG_MODE" From 79825968ffa92f5fa6104de69a6f2bcaf9f236a3 Mon Sep 17 00:00:00 2001 From: Adriein Date: Sat, 8 Jun 2024 15:45:38 +0200 Subject: [PATCH 2/2] feat: trying to get char speed --- .../Widget/GlobalGameWidgetContainer.py | 4 ++-- src/Wiki/Ui/Skill/skill_widget.png | Bin 0 -> 4791 bytes 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 src/Wiki/Ui/Skill/skill_widget.png diff --git a/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py b/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py index 5d4c883..23242b6 100644 --- a/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py +++ b/src/OperatingSystemPackage/Widget/GlobalGameWidgetContainer.py @@ -232,8 +232,8 @@ def __locate_skill_widget(self) -> ScreenRegion: height, width = skill_anchor.shape start_x = x - end_x = start_x + self.__monitor.adjust_pixel_to_monitor(Constants.REFERENCE_MINI_MAP_END_X) + end_x = start_x + width start_y = y - end_y = start_y + self.__monitor.adjust_pixel_to_monitor(Constants.REFERENCE_SKILL_WIDGET_HEIGHT) + end_y = start_y + height + self.__monitor.adjust_pixel_to_monitor(Constants.REFERENCE_SKILL_WIDGET_HEIGHT) return ScreenRegion(start_x, end_x, start_y, end_y) diff --git a/src/Wiki/Ui/Skill/skill_widget.png b/src/Wiki/Ui/Skill/skill_widget.png new file mode 100644 index 0000000000000000000000000000000000000000..2a4f35e69b1c740c608620f8e5eaeba0d757e5de GIT binary patch literal 4791 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 RDAoV~002ovPDHLkV1k)Ye(V4M literal 0 HcmV?d00001