1
0
mirror of https://github.com/0O0o0oOoO00/Alas.git synced 2026-05-14 14:29:26 +08:00

fix: disable global ship properties and factor of hook for retirement handler

This commit is contained in:
0O0o0oOoO00
2025-05-21 21:03:59 +08:00
parent 634e7ce16b
commit 5d7a2d3c58
2 changed files with 31 additions and 5 deletions

View File

@@ -180,6 +180,28 @@ def crack_op(ops: Union[Type[CrackOp.Op], List[Type[CrackOp.Op]]]):
return inner
def do_crack_op_before_call(ops: Union[Type[CrackOp.Op], List[Type[CrackOp.Op]]]):
def inner(f):
def wrapper(*args, **kwargs):
obj = args[0]
do_crack_op(obj.config, obj.device, ops)
return f(*args, **kwargs)
return wrapper
return inner
def do_crack_op_after_call(ops: Union[Type[CrackOp.Op], List[Type[CrackOp.Op]]]):
def inner(f):
def wrapper(*args, **kwargs):
obj = args[0]
ret = f(*args, **kwargs)
do_crack_op(obj.config, obj.device, ops)
return ret
return wrapper
return inner
def disable_all_crack(f):
def wrapper(*args, **kwargs):

View File

@@ -6,7 +6,7 @@ from module.config.deep import deep_get
from module.exception import RequestHumanTakeover, ScriptError
from module.handler.assets import AUTO_SEARCH_MAP_OPTION_OFF, AUTO_SEARCH_MAP_OPTION_ON
from module.logger import logger
from module.luahook.crack import do_crack_op
from module.luahook.crack import do_crack_op, do_crack_op_before_call, do_crack_op_after_call
from module.luahook.op import CrackOp
from module.retire.assets import *
from module.retire.enhancement import Enhancement
@@ -399,6 +399,14 @@ class Retirement(Enhancement, QuickRetireSettingHandler):
return total
@do_crack_op_before_call([
CrackOp.DisableGlobalShipProperties,
CrackOp.DisableGGFactor
])
@do_crack_op_after_call([
CrackOp.EnableGlobalShipProperties,
CrackOp.EnableGGFactor
])
def handle_retirement(self):
"""
Returns:
@@ -417,12 +425,10 @@ class Retirement(Enhancement, QuickRetireSettingHandler):
self.map_cat_attack_timer.reset()
return True
elif self.config.Retirement_RetireMode == 'enhance':
do_crack_op(self.config, self.device, CrackOp.DisableGlobalShipProperties)
if self.appear_then_click(RETIRE_APPEAR_3, offset=(20, 20), interval=3):
self.interval_clear(DOCK_CHECK)
self.interval_reset([AUTO_SEARCH_MAP_OPTION_OFF, AUTO_SEARCH_MAP_OPTION_ON])
self.map_cat_attack_timer.reset()
do_crack_op(self.config, self.device, CrackOp.EnableGlobalShipProperties)
return False
if self.appear(DOCK_CHECK, offset=(20, 20), interval=10):
self.handle_dock_cards_loading()
@@ -437,9 +443,7 @@ class Retirement(Enhancement, QuickRetireSettingHandler):
self._unable_to_enhance = True
self.interval_reset(DOCK_CHECK)
self.map_cat_attack_timer.reset()
do_crack_op(self.config, self.device, CrackOp.EnableGlobalShipProperties)
return True
do_crack_op(self.config, self.device, CrackOp.EnableGlobalShipProperties)
else:
if self.appear_then_click(RETIRE_APPEAR_1, offset=(20, 20), interval=3):
self.interval_clear(IN_RETIREMENT_CHECK)