mirror of
https://github.com/0O0o0oOoO00/Alas.git
synced 2026-05-14 15:49:25 +08:00
fix: diamond inheritance of FleetEquipment, EquipmentChange, Equipment, Dock
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import collections
|
||||
|
||||
from module.base.button import ButtonGrid
|
||||
from module.base.decorator import cached_property
|
||||
from module.base.timer import Timer
|
||||
@@ -577,7 +579,7 @@ def equip_redirect_inherit_to_old() -> bool:
|
||||
return False
|
||||
|
||||
|
||||
class Equipment(StorageHandler, ApiCollectionSwitch):
|
||||
class Equipment(StorageHandler):
|
||||
def __init__(self, config, device=None, task=None):
|
||||
conf = AzurLaneConfig.build_azurlane_config(config, task)
|
||||
dev = Device.build_device(conf, device)
|
||||
@@ -585,7 +587,24 @@ class Equipment(StorageHandler, ApiCollectionSwitch):
|
||||
self.equipment_old: EquipmentOld = EquipmentOld(config=conf, device=dev, task=task)
|
||||
self.equipment_new: EquipmentNew = EquipmentNew(config=conf, device=dev, task=task)
|
||||
StorageHandler.__init__(self, config=conf, device=dev, task=task)
|
||||
ApiCollectionSwitch.__init__(self, self.equipment_old, self.equipment_new)
|
||||
|
||||
self.equipment_switch_stack = collections.deque()
|
||||
self.equipment_current_use = self.equipment_new
|
||||
|
||||
def switch_equipment_to_old(self):
|
||||
self.equipment_switch_stack.append(self.equipment_current_use)
|
||||
self.equipment_current_use = self.equipment_new
|
||||
|
||||
def switch_equipment_to_new(self):
|
||||
self.equipment_switch_stack.append(self.equipment_current_use)
|
||||
self.equipment_current_use = self.equipment_new
|
||||
|
||||
def switch_equipment_back(self):
|
||||
if len(self.equipment_switch_stack) == 0:
|
||||
self.equipment_current_use = self.equipment_new
|
||||
return
|
||||
|
||||
self.equipment_current_use = self.equipment_switch_stack.pop()
|
||||
|
||||
'''
|
||||
EquipmentOld
|
||||
|
||||
@@ -318,7 +318,7 @@ class EquipmentChangeNew(EquipmentNew):
|
||||
return
|
||||
|
||||
|
||||
class EquipmentChange(StorageHandler, ApiCollectionSwitch):
|
||||
class EquipmentChange(StorageHandler):
|
||||
def __init__(self, config, device=None, task=None):
|
||||
conf = AzurLaneConfig.build_azurlane_config(config, task)
|
||||
dev = Device.build_device(conf, device)
|
||||
@@ -326,7 +326,24 @@ class EquipmentChange(StorageHandler, ApiCollectionSwitch):
|
||||
self.equipment_change_old: EquipmentChangeOld = EquipmentChangeOld(config=conf, device=dev, task=task)
|
||||
self.equipment_change_new: EquipmentChangeNew = EquipmentChangeNew(config=conf, device=dev, task=task)
|
||||
StorageHandler.__init__(self, config=conf, device=dev, task=task)
|
||||
ApiCollectionSwitch.__init__(self, self.equipment_change_old, self.equipment_change_new)
|
||||
|
||||
self.equipment_change_switch_stack = collections.deque()
|
||||
self.equipment_change_current_use = self.equipment_change_new
|
||||
|
||||
def switch_equipment_change_to_old(self):
|
||||
self.equipment_change_switch_stack.append(self.equipment_change_current_use)
|
||||
self.equipment_change_current_use = self.equipment_change_new
|
||||
|
||||
def switch_equipment_change_to_new(self):
|
||||
self.equipment_change_switch_stack.append(self.equipment_change_current_use)
|
||||
self.equipment_change_current_use = self.equipment_change_new
|
||||
|
||||
def switch_equipment_change_back(self):
|
||||
if len(self.equipment_change_switch_stack) == 0:
|
||||
self.equipment_change_current_use = self.equipment_change_new
|
||||
return
|
||||
|
||||
self.equipment_change_current_use = self.equipment_change_switch_stack.pop()
|
||||
|
||||
'''
|
||||
EquipmentChangeOld
|
||||
@@ -487,7 +504,7 @@ class EquipmentChange(StorageHandler, ApiCollectionSwitch):
|
||||
'''
|
||||
|
||||
def equipping_set(self, enable=False):
|
||||
return self.current_use.equipping_set(enable=enable)
|
||||
return self.equipment_change_current_use.equipping_set(enable=enable)
|
||||
|
||||
def _equip_equipment(self, point, offset=(100, 100)):
|
||||
return self.current_use._equip_equipment(point, offset=offset)
|
||||
return self.equipment_change_current_use._equip_equipment(point, offset=offset)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import collections
|
||||
|
||||
import gl
|
||||
from module.base.decorator import cached_property, Config
|
||||
from module.base.utils import ApiCollectionSwitch
|
||||
@@ -85,7 +87,7 @@ class FleetEquipmentNew(EquipmentChangeNew):
|
||||
self.ui_back(FLEET_CHECK)
|
||||
|
||||
|
||||
class FleetEquipment(StorageHandler, ApiCollectionSwitch):
|
||||
class FleetEquipment(StorageHandler):
|
||||
def __init__(self, config, device=None, task=None):
|
||||
conf = AzurLaneConfig.build_azurlane_config(config, task)
|
||||
dev = Device.build_device(conf, device)
|
||||
@@ -93,7 +95,23 @@ class FleetEquipment(StorageHandler, ApiCollectionSwitch):
|
||||
self.fleet_equipment_old: DailyEquipment = DailyEquipment(config=conf, device=dev, task=task)
|
||||
self.fleet_equipment_new: FleetEquipmentNew = FleetEquipmentNew(config=conf, device=dev, task=task)
|
||||
StorageHandler.__init__(self, config=conf, device=dev, task=task)
|
||||
ApiCollectionSwitch.__init__(self, self.fleet_equipment_old, self.fleet_equipment_new)
|
||||
|
||||
self.fleet_equipment_switch_stack = collections.deque()
|
||||
self.fleet_equipment_current_use = self.fleet_equipment_new
|
||||
|
||||
def switch_fleet_equipment_to_old(self):
|
||||
self.fleet_equipment_switch_stack.append(self.fleet_equipment_current_use)
|
||||
self.fleet_equipment_current_use = self.fleet_equipment_new
|
||||
|
||||
def switch_fleet_equipment_to_new(self):
|
||||
self.fleet_equipment_switch_stack.append(self.fleet_equipment_current_use)
|
||||
self.fleet_equipment_current_use = self.fleet_equipment_new
|
||||
|
||||
def switch_fleet_equipment_back(self):
|
||||
if len(self.fleet_equipment_switch_stack) == 0:
|
||||
self.fleet_equipment_current_use = self.fleet_equipment_new
|
||||
return
|
||||
self.fleet_equipment_current_use = self.fleet_equipment_switch_stack.pop()
|
||||
|
||||
'''
|
||||
DailyEquipment
|
||||
@@ -250,4 +268,4 @@ class FleetEquipment(StorageHandler, ApiCollectionSwitch):
|
||||
'''
|
||||
|
||||
def _equip_equipment(self, point, offset=(100, 100)):
|
||||
return self.current_use._equip_equipment(point, offset)
|
||||
return self.fleet_equipment_current_use._equip_equipment(point, offset)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import collections
|
||||
|
||||
import module.config.server as server
|
||||
|
||||
import gl
|
||||
@@ -454,7 +456,7 @@ def redirect_inherit_to_old() -> bool:
|
||||
return False
|
||||
|
||||
|
||||
class Dock(StorageHandler, ApiCollectionSwitch):
|
||||
class Dock(StorageHandler):
|
||||
def __init__(self, config, device=None, task=None):
|
||||
conf = AzurLaneConfig.build_azurlane_config(config, task)
|
||||
dev = Device.build_device(conf, device)
|
||||
@@ -462,7 +464,24 @@ class Dock(StorageHandler, ApiCollectionSwitch):
|
||||
self.dock_old: DockOld = DockOld(config=conf, device=dev, task=task)
|
||||
self.dock_new: DockNew = DockNew(config=conf, device=dev, task=task)
|
||||
StorageHandler.__init__(self, config=conf, device=dev, task=task)
|
||||
ApiCollectionSwitch.__init__(self, self.dock_old, self.dock_new)
|
||||
|
||||
self.dock_switch_stack = collections.deque()
|
||||
self.dock_current_use = self.dock_new
|
||||
|
||||
def switch_dock_to_old(self):
|
||||
self.dock_switch_stack.append(self.dock_current_use)
|
||||
self.dock_current_use = self.dock_old
|
||||
|
||||
def switch_dock_to_new(self):
|
||||
self.dock_switch_stack.append(self.dock_current_use)
|
||||
self.dock_current_use = self.dock_new
|
||||
|
||||
def switch_dock_back(self):
|
||||
if len(self.dock_switch_stack) == 0:
|
||||
self.dock_current_use = self.dock_new
|
||||
return
|
||||
|
||||
self.dock_current_use = self.dock_switch_stack.pop()
|
||||
|
||||
'''
|
||||
DockOld
|
||||
@@ -668,32 +687,32 @@ class Dock(StorageHandler, ApiCollectionSwitch):
|
||||
'''
|
||||
|
||||
def handle_dock_cards_loading(self):
|
||||
return self.current_use.handle_dock_cards_loading()
|
||||
return self.dock_current_use.handle_dock_cards_loading()
|
||||
|
||||
def _dock_quit_check_func(self):
|
||||
return self.current_use._dock_quit_check_func()
|
||||
return self.dock_current_use._dock_quit_check_func()
|
||||
|
||||
def dock_quit(self):
|
||||
return self.current_use.dock_quit()
|
||||
return self.dock_current_use.dock_quit()
|
||||
|
||||
def dock_filter_enter(self):
|
||||
return self.current_use.dock_filter_enter()
|
||||
return self.dock_current_use.dock_filter_enter()
|
||||
|
||||
def dock_filter_confirm(self, wait_loading=True):
|
||||
return self.current_use.dock_filter_confirm(wait_loading=wait_loading)
|
||||
return self.dock_current_use.dock_filter_confirm(wait_loading=wait_loading)
|
||||
|
||||
@cached_property
|
||||
def dock_filter(self) -> Setting:
|
||||
return self.current_use.dock_filter
|
||||
return self.dock_current_use.dock_filter
|
||||
|
||||
def dock_filter_set(self, sort='level', index='all', faction='all', rarity='all', extra='no_limit', wait_loading=True):
|
||||
return self.current_use.dock_filter_set(sort, index, faction, rarity, extra, wait_loading)
|
||||
return self.dock_current_use.dock_filter_set(sort, index, faction, rarity, extra, wait_loading)
|
||||
|
||||
def dock_select_one(self, button, skip_first_screenshot=True):
|
||||
return self.current_use.dock_select_one(button, skip_first_screenshot=skip_first_screenshot)
|
||||
return self.dock_current_use.dock_select_one(button, skip_first_screenshot=skip_first_screenshot)
|
||||
|
||||
def dock_selected(self, skip_first_screenshot=True):
|
||||
return self.current_use.dock_selected(skip_first_screenshot=skip_first_screenshot)
|
||||
return self.dock_current_use.dock_selected(skip_first_screenshot=skip_first_screenshot)
|
||||
|
||||
def dock_select_confirm(self, check_button, skip_first_screenshot=True):
|
||||
return self.current_use.dock_select_confirm(check_button, skip_first_screenshot=skip_first_screenshot)
|
||||
return self.dock_current_use.dock_select_confirm(check_button, skip_first_screenshot=skip_first_screenshot)
|
||||
|
||||
Reference in New Issue
Block a user