mirror of
https://github.com/ok-oldking/ok-wuthering-waves.git
synced 2025-06-07 09:25:34 +00:00
46 lines
1.5 KiB
Python
46 lines
1.5 KiB
Python
import time
|
|
|
|
from src.char.BaseChar import BaseChar, Priority
|
|
|
|
|
|
class Changli(BaseChar):
|
|
|
|
def __init__(self, *args):
|
|
super().__init__(*args)
|
|
self.enhanced_normal = False
|
|
self.last_e = 0
|
|
|
|
def reset_state(self):
|
|
self.enhanced_normal = False
|
|
|
|
def do_get_switch_priority(self, current_char: BaseChar, has_intro=False):
|
|
if time.time() - self.last_e < 3:
|
|
self.logger.info(
|
|
f'switch priority MIN because e not finished')
|
|
return Priority.MIN
|
|
else:
|
|
return super().do_get_switch_priority(current_char, has_intro)
|
|
|
|
def do_perform(self):
|
|
# self.logger.debug(
|
|
# f'Encore_perform_{self.has_intro}_{self.echo_available()}_{self.resonance_available()}_{self.liberation_available()}')
|
|
if self.has_intro or self.enhanced_normal:
|
|
self.normal_attack()
|
|
self.sleep(0.5)
|
|
self.enhanced_normal = False
|
|
if self.is_forte_full():
|
|
self.heavy_attack(0.8)
|
|
return self.switch_next_char()
|
|
if self.click_liberation():
|
|
self.heavy_attack(0.8)
|
|
return self.switch_next_char()
|
|
elif self.resonance_available():
|
|
self.send_resonance_key()
|
|
self.enhanced_normal = True
|
|
elif self.click_echo(1.5):
|
|
pass
|
|
else:
|
|
self.normal_attack()
|
|
self.logger.info('Changli nothing is available')
|
|
self.switch_next_char()
|