mirror of
https://github.com/TheFunny/ArisuAutoSweeper
synced 2026-06-26 09:14:56 +00:00
feat: tasks
Added module tasks for EN
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
from module.base.button import Button, ButtonWrapper
|
||||
|
||||
# This file was auto-generated, do not modify it manually. To generate:
|
||||
# ``` python -m dev_tools.button_extract ```
|
||||
|
||||
CLAIM = ButtonWrapper(
|
||||
name='CLAIM',
|
||||
jp=None,
|
||||
en=Button(
|
||||
file='./assets/en/task/CLAIM.png',
|
||||
area=(941, 656, 1009, 684),
|
||||
search=(921, 636, 1029, 704),
|
||||
color=(213, 190, 58),
|
||||
button=(935, 639, 1015, 698),
|
||||
),
|
||||
)
|
||||
CLAIMED = ButtonWrapper(
|
||||
name='CLAIMED',
|
||||
jp=None,
|
||||
en=Button(
|
||||
file='./assets/en/task/CLAIMED.png',
|
||||
area=(941, 653, 1007, 682),
|
||||
search=(921, 633, 1027, 702),
|
||||
color=(205, 205, 204),
|
||||
button=(936, 643, 1012, 698),
|
||||
),
|
||||
)
|
||||
CLAIMED_ALL = ButtonWrapper(
|
||||
name='CLAIMED_ALL',
|
||||
jp=None,
|
||||
en=Button(
|
||||
file='./assets/en/task/CLAIMED_ALL.png',
|
||||
area=(1088, 650, 1215, 687),
|
||||
search=(1068, 630, 1235, 707),
|
||||
color=(181, 182, 185),
|
||||
button=(1052, 644, 1250, 700),
|
||||
),
|
||||
)
|
||||
CLAIM_ALL = ButtonWrapper(
|
||||
name='CLAIM_ALL',
|
||||
jp=None,
|
||||
en=Button(
|
||||
file='./assets/en/task/CLAIM_ALL.png',
|
||||
area=(1086, 652, 1216, 685),
|
||||
search=(1066, 632, 1236, 705),
|
||||
color=(215, 198, 64),
|
||||
button=(1054, 642, 1243, 700),
|
||||
),
|
||||
)
|
||||
@@ -0,0 +1,56 @@
|
||||
from enum import Enum
|
||||
|
||||
from module.base.timer import Timer
|
||||
from module.logger import logger
|
||||
from tasks.base.page import page_task
|
||||
from tasks.base.ui import UI
|
||||
from tasks.task.assets.assets_task import *
|
||||
|
||||
|
||||
class TaskStatus(Enum):
|
||||
"""
|
||||
Task status
|
||||
"""
|
||||
CLAIM_ALL = 0
|
||||
CLAIM = 1
|
||||
FINISHED = -1
|
||||
|
||||
class Task(UI):
|
||||
def _handle_task(self, status):
|
||||
match status:
|
||||
case TaskStatus.CLAIM_ALL:
|
||||
if self.match_color(CLAIM_ALL):
|
||||
self.device.click(CLAIM_ALL)
|
||||
logger.info("Click Claim All")
|
||||
else:
|
||||
return TaskStatus.CLAIM
|
||||
case TaskStatus.CLAIM:
|
||||
if self.match_color(CLAIM):
|
||||
self.device.click(CLAIM)
|
||||
logger.info("Click Claim")
|
||||
else:
|
||||
return TaskStatus.FINISHED
|
||||
case _:
|
||||
logger.warning(f"Invalid status: {status}")
|
||||
return status
|
||||
|
||||
def run(self):
|
||||
self.ui_ensure(page_task)
|
||||
|
||||
status = TaskStatus.CLAIM_ALL
|
||||
action_timer = Timer(0.5)
|
||||
|
||||
while 1:
|
||||
self.device.screenshot()
|
||||
|
||||
if self.ui_additional():
|
||||
continue
|
||||
|
||||
if action_timer.reached_and_reset():
|
||||
logger.attr('Status', status)
|
||||
status = self._handle_task(status)
|
||||
|
||||
if status is TaskStatus.FINISHED:
|
||||
break
|
||||
|
||||
self.config.task_delay(server_update=True)
|
||||
Reference in New Issue
Block a user