mirror of
https://github.com/ok-oldking/ok-wuthering-waves.git
synced 2025-06-08 00:15:20 +00:00
34 lines
1.0 KiB
Python
34 lines
1.0 KiB
Python
from qfluentwidgets import FluentIcon
|
|
|
|
from ok.logging.Logger import get_logger
|
|
from ok.task.TriggerTask import TriggerTask
|
|
from src.task.BaseCombatTask import BaseCombatTask, NotInCombatException
|
|
|
|
logger = get_logger(__name__)
|
|
|
|
|
|
class AutoCombatTask(BaseCombatTask, TriggerTask):
|
|
|
|
def __init__(self):
|
|
super().__init__()
|
|
self.trigger_interval = 0.1
|
|
self.name = "Auto Combat"
|
|
self.description = "Enable auto combat in Abyss, Game World etc"
|
|
self.icon = FluentIcon.CALORIES
|
|
|
|
def run(self):
|
|
while self.in_combat():
|
|
try:
|
|
logger.debug(f'autocombat loop {self.chars}')
|
|
self.get_current_char().perform()
|
|
except NotInCombatException as e:
|
|
logger.info(f'auto_combat_task_out_of_combat {e}')
|
|
if self.debug:
|
|
self.screenshot(f'auto_combat_task_out_of_combat {e}')
|
|
break
|
|
|
|
def trigger(self):
|
|
if self.in_combat():
|
|
self.load_chars()
|
|
return True
|