From da796d990cb22e0d12eaa9934bc93f66673e832f Mon Sep 17 00:00:00 2001 From: 0O0o0oOoO00 <11174151+0O0o0oOoO00@users.noreply.github.com> Date: Fri, 24 Oct 2025 17:23:07 +0800 Subject: [PATCH] ref: split the check of whether to shop to corresponding class --- module/shop/shop_core.py | 6 +++++ module/shop/shop_guild.py | 6 +++++ module/shop/shop_medal.py | 6 +++++ module/shop/shop_merit.py | 6 +++++ module/shop/shop_reward.py | 47 -------------------------------------- 5 files changed, 24 insertions(+), 47 deletions(-) diff --git a/module/shop/shop_core.py b/module/shop/shop_core.py index cebf31f33..9a2f5c13c 100644 --- a/module/shop/shop_core.py +++ b/module/shop/shop_core.py @@ -101,3 +101,9 @@ class CoreShop_250814(ShopClerk, ShopStatus): # Execute buy operations self.shop_buy() + + +class CoreShop_250814(CoreShop_250814): + def run(self): + if self.config.full_config.ShopOnce_CoreShop_Enable: + super().run() diff --git a/module/shop/shop_guild.py b/module/shop/shop_guild.py index 12e289f11..d5dddf7f6 100644 --- a/module/shop/shop_guild.py +++ b/module/shop/shop_guild.py @@ -114,3 +114,9 @@ class GuildShop_250814(ShopClerk, ShopUI, ShopStatus): else: logger.info('Guild coins < 110, skip refreshing') break + + +class GuildShop_250814(GuildShop_250814): + def run(self): + if self.config.full_config.ShopOnce_GuildShop_Enable: + super().run() diff --git a/module/shop/shop_medal.py b/module/shop/shop_medal.py index 059dadbb9..2bca2cf88 100644 --- a/module/shop/shop_medal.py +++ b/module/shop/shop_medal.py @@ -282,3 +282,9 @@ class MedalShop2_250814(ShopClerk, ShopStatus): del_cached_property(self, 'shop_grid') del_cached_property(self, 'shop_medal_items') continue + + +class MedalShop2_250814(MedalShop2_250814): + def run(self): + if self.config.full_config.ShopOnce_MedalShop2_Enable: + super().run() diff --git a/module/shop/shop_merit.py b/module/shop/shop_merit.py index 5b1085bfe..5c27aa7e4 100644 --- a/module/shop/shop_merit.py +++ b/module/shop/shop_merit.py @@ -84,3 +84,9 @@ class MeritShop_250814(ShopClerk, ShopUI, ShopStatus): if refresh and self.shop_refresh(): continue break + + +class MeritShop_250814(MeritShop_250814): + def run(self): + if self.config.full_config.ShopOnce_MeritShop_Enable: + super().run() diff --git a/module/shop/shop_reward.py b/module/shop/shop_reward.py index c9f76f07d..6b50576df 100644 --- a/module/shop/shop_reward.py +++ b/module/shop/shop_reward.py @@ -44,53 +44,6 @@ class RewardShop(ShopUI): self.config.task_delay(server_update=True) -class RewardShop(RewardShop): - - def buy_merit_shop(self): - self.device.click_record_clear() - self.shop_nav_250814.set(NAV_GENERAL, main=self) - self.shop_tab_250814.set(TAB_MERIT, main=self) - MeritShop_250814(self.config, self.device).run() - - def buy_guild_shop(self): - self.device.click_record_clear() - self.shop_nav_250814.set(NAV_GENERAL, main=self) - self.shop_tab_250814.set(TAB_GUILD, main=self) - GuildShop_250814(self.config, self.device).run() - - def buy_core_shop(self): - # core limited, core monthly, medal, prototype - self.device.click_record_clear() - self.shop_nav_250814.set(NAV_MONTHLY, main=self) - self.shop_tab_250814.set(TAB_CORE_MONTHLY, main=self) - CoreShop_250814(self.config, self.device).run() - - def buy_medal_shop(self): - self.device.click_record_clear() - self.shop_nav_250814.set(NAV_MONTHLY, main=self) - self.shop_tab_250814.set(TAB_MEDAL, main=self) - MedalShop2_250814(self.config, self.device).run() - - def run_once(self): - # Munitions shops - if self.config.SERVER in ['tw']: - self.config.task_delay(server_update=True) - self.config.task_stop() - - self.ui_goto_shop() - - if self.config.full_config.ShopOnce_MeritShop_Enable: - self.buy_merit_shop() - if self.config.full_config.ShopOnce_GuildShop_Enable: - self.buy_guild_shop() - if self.config.full_config.ShopOnce_CoreShop_Enable: - self.buy_core_shop() - if self.config.full_config.ShopOnce_MedalShop2_Enable: - self.buy_medal_shop() - - self.config.task_delay(server_update=True) - - if __name__ == '__main__': self = RewardShop('alas') self.device.screenshot()