Skip to content

Commit

Permalink
🎨 调整功能描述的实现方法
Browse files Browse the repository at this point in the history
  • Loading branch information
AquamarineCyan committed Jan 13, 2025
1 parent c3742ae commit 683f2e5
Show file tree
Hide file tree
Showing 17 changed files with 74 additions and 37 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.MD
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
- 优化程序初始化流程
- 移除测试功能`掉落统计beta`
- 任务结束支持提示信息
- 调整功能描述的实现方法

### 修复

Expand Down
5 changes: 4 additions & 1 deletion src/package/baiguiyexing.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,15 @@ class BaiGuiYeXing(Package):
"kaishi", # 开始
"baiguiqiyueshu", # 百鬼契约书
]
description = "仅适用于清票,无法指定鬼王"

@log_function_call
def __init__(self, n: int = 0) -> None:
super().__init__(n)

@staticmethod
def description() -> None:
logger.ui("仅适用于清票,无法指定鬼王")

def load_asset(self):
self.IMAGE_TITLE = AssetImage(**get_asset(self.asset_image_list, "title"))
self.IMAGE_JINRU = AssetImage(**get_asset(self.asset_image_list, "jinru"))
Expand Down
5 changes: 4 additions & 1 deletion src/package/daoguantupo.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ class DaoGuanTuPo(Package):
"title", # 标题
"zhanbao", # 战报
]
description = "目前仅支持正在进行中的道馆突破,无法实现跳转道馆场景"
STATE_IDLE = 1 # 准备界面
STATE_WAIT_AUTO_ENTER = 2 # 等待主动进入
STATE_WAIT_START = 3 # 等待开始
Expand All @@ -39,6 +38,10 @@ def __init__(self, flag_guanzhan: bool = False) -> None:
self.flag_fighting = False # 是否进行中
self.state = self.STATE_IDLE

@staticmethod
def description() -> None:
logger.ui("目前仅支持正在进行中的道馆突破,无法实现跳转道馆场景")

def load_asset(self):
self.IMAGE_BUTTON_ZHUWEI = AssetImage(
**get_asset(self.asset_image_list, "button_zhuwei")
Expand Down
4 changes: 3 additions & 1 deletion src/package/douji.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,13 @@
class DouJi(Package):
scene_name = "斗技"
resource_path = "douji"
description = "支持五段至名士之间的固定翻牌上阵"

def __init__(self, n: int = 0) -> None:
super().__init__(n)

def description() -> None:
logger.ui("支持五段至名士之间的固定翻牌上阵")

def load_asset(self):
self.OCR_TITLE = AssetOcr(**get_asset(self.asset_ocr_list, "title"))
self.OCR_FIGHT = AssetOcr(**get_asset(self.asset_ocr_list, "fight"))
Expand Down
4 changes: 1 addition & 3 deletions src/package/huodong.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@ def __init__(self, n: int = 0) -> None:
self.state = None

def show_description(self) -> None:
logger.ui(
f"""适配活动「{self.activity_name}」,可自行替换 /data/myresource/huodong 下的素材"""
)
logger.ui(f"""适配活动「{self.activity_name}」,可自行替换 /data/myresource/huodong 下的素材""")

def load_asset(self) -> None:
self.IMAGE_TITLE = AssetImage(**get_asset(self.asset_image_list, "title"))
Expand Down
11 changes: 7 additions & 4 deletions src/package/jiejietupo.py
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,6 @@ class JieJieTuPoGeRen(JieJieTuPo):
"""

scene_name = "个人突破"
description = "默认3胜刷新,保级第一轮将会刷新,请注意当前的胜利次数"
tupo_geren_x = {
1: 215,
2: 515,
Expand All @@ -176,9 +175,13 @@ def __init__(
self.list_xunzhang: list = None # 勋章列表
self.tupo_victory: int = None # 攻破次数
self.time_refresh: int = 0 # 记录刷新时间
self.flag_refresh_rule: int = int(flag_refresh_rule)
self.flag_current_level: int = int(flag_current_level)
self.flag_target_level: int = int(flag_target_level)
self.flag_refresh_rule: int = flag_refresh_rule
self.flag_current_level: int = flag_current_level
self.flag_target_level: int = flag_target_level

@staticmethod
def description():
logger.ui("默认3胜刷新,保级第一轮将会刷新,请注意当前的胜利次数")

def load_asset(self):
super().load_asset()
Expand Down
5 changes: 4 additions & 1 deletion src/package/juexing.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,14 @@ class JueXing(Package):
resource_list = [
"title", # 标题
]
description = "单人觉醒副本"

@log_function_call
def __init__(self, n: int = 0) -> None:
super().__init__(n)

@staticmethod
def description() -> None:
logger.ui("单人觉醒副本")

@log_function_call
def start(self):
Expand Down
5 changes: 4 additions & 1 deletion src/package/liudaozhimen.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ class LiuDaoZhiMen(Package):

scene_name = "六道之门速刷"
resource_path = "liudaozhimen"
description = "六道之门速刷,目前仅适配:椒图,4柔风,不打星之子的阵容,需要手动勾选“不再提醒”"
resource_list: list = [
"determine", # 确定
"fight", # 挑战
Expand All @@ -33,6 +32,10 @@ def __init__(self, n: int = 0) -> None:
super().__init__(n)
self.state = self.STATE_START

@staticmethod
def description() -> None:
logger.ui("六道之门速刷,目前仅适配:椒图,4柔风,不打星之子的阵容,需要手动勾选“不再提醒”")

def load_asset(self):
self.IMAGE_DETERMINE = self.get_image_asset("determine")
self.IMAGE_FIGHT_READY_QUIT = self.get_image_asset("fight_ready_quit")
Expand Down
4 changes: 3 additions & 1 deletion src/package/qiling.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ class QiLing(Package):

scene_name = "契灵"
resource_path = "qiling"
description = "次数为探查次数,选中“结契”按钮将在探查结束后自动挑战场上所有,请提前在游戏内配置“结契设置”"
resource_list: list = [
"mingqizhaohuan",
"queding",
Expand Down Expand Up @@ -62,6 +61,9 @@ def __init__(
self._flag_finish: bool = False
self._stone_count: int = 0 # 已使用鸣契石数量

def description() -> None:
logger.ui("次数为探查次数,选中“结契”按钮将在探查结束后自动挑战场上所有,请提前在游戏内配置“结契设置”")

def load_asset(self):
if self.asset_image_list is None:
logger.ui_error("发生错误,请先加载资源")
Expand Down
4 changes: 4 additions & 0 deletions src/package/rilun.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ def __init__(
self.flag_driver_start: bool = False # 司机待机
self.flag_fighting: bool = False # 是否进行中对局(默认否)

@staticmethod
def description() -> None:
logger.ui("日轮副本")

def load_asset(self):
self.IMAGE_FIGHTING = AssetImage(**get_asset(self.asset_image_list, "fighting"))

Expand Down
6 changes: 5 additions & 1 deletion src/package/tansuo.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,15 @@ class TanSuo(Package):
"treasure_box",
# "zidonglunhuan",
]
description = "提前准备好自动轮换和加成,仅单人探索"

@log_function_call
def __init__(self, n: int = 0) -> None:
super().__init__(n)

@staticmethod
def description() -> None:
logger.ui("提前准备好自动轮换和加成,仅单人探索")

def load_asset(self):
self.IMAGE_START = AssetImage(**get_asset(self.asset_image_list, "tansuo"))
self.IMAGE_CHUZHANXIAOHAO = AssetImage(
Expand Down
7 changes: 5 additions & 2 deletions src/package/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,6 @@ class Package:
"""路径"""
resource_list: list = []
"""资源列表"""
description: str = None
"""功能描述"""
fast_time: int = 0
"""最快通关速度,用于中途等待"""
global_resource_path: Path = RESOURCE_GLOBAL_PATH
Expand Down Expand Up @@ -150,6 +148,11 @@ def __init__(self, n: int = 0) -> None:
f"{self.resource_path}/assets.json 资源加载失败,请检查资源文件"
)

@staticmethod
def description() -> None:
"""功能描述,支持重写"""
pass

def load_asset_list(self):
self.asset_image_list = load_asset(self.resource_path, "image")
self.asset_ocr_list = load_asset(self.resource_path, "ocr")
Expand Down
5 changes: 4 additions & 1 deletion src/package/yeyuanhuo.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,16 @@ class YeYuanHuo(Package):
"title", # 标题
"start", # 挑战
]
description = "默认为“痴”,可在/data/myresource/yeyuanhuo路径下添加自定义素材"
fast_time = 13

@log_function_call
def __init__(self, n: int = 0) -> None:
super().__init__(n)

@staticmethod
def description() -> None:
logger.ui("默认为“痴”,可在/data/myresource/yeyuanhuo路径下添加自定义素材")

def load_asset(self):
self.IMAGE_TITLE = AssetImage(**get_asset(self.asset_image_list, "title"))
self.IMAGE_START = AssetImage(**get_asset(self.asset_image_list, "start"))
Expand Down
5 changes: 4 additions & 1 deletion src/package/yongshengzhihai.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,16 @@ class YongShengZhiHai(Package):
"fighting", # 进行中
# "accept_invitation", # 接受邀请
]
description = "默认打手30次"
fast_time = 13 - 2

@log_function_call
def __init__(self, n: int = 0) -> None:
super().__init__(n)

@staticmethod
def description() -> None:
logger.ui("默认打手30次")

def load_asset(self):
self.IMAGE_TITLE = AssetImage(**get_asset(self.asset_image_list, "title"))
self.IMAGE_PASSENGER = AssetImage(
Expand Down
9 changes: 4 additions & 5 deletions src/package/yuling.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,15 @@ class YuLing(Package):
"title", # 限时活动特征图像
"start", # 挑战
]
description = """暗神龙-周二六日
暗白藏主-周三六日
暗黑豹-周四六
暗孔雀-周五六日
绘卷期间请减少使用"""

@log_function_call
def __init__(self, n: int = 0) -> None:
super().__init__(n)

@staticmethod
def description() -> None:
logger.ui("""绘卷期间请减少使用""")

def load_asset(self):
self.IMAGE_TITLE = AssetImage(**get_asset(self.asset_image_list, "title"))
self.IMAGE_START = AssetImage(**get_asset(self.asset_image_list, "start"))
Expand Down
5 changes: 4 additions & 1 deletion src/package/zhaohuan.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ class ZhaoHuan(Package):
"title", # 标题
"zaicizhaohuan", # 再次召唤
]
description = "普通召唤,请选择十连次数,请选择合适的召唤屋"

@log_function_call
def __init__(self, n: int = 0) -> None:
Expand All @@ -36,6 +35,10 @@ def __init__(self, n: int = 0) -> None:
)
return

@staticmethod
def description() -> None:
logger.ui("普通召唤,请选择十连次数,请选择合适的召唤屋")

def check_first_times(self):
ocr = RuleOcr(self.OCR_ZHAOHUAN)
while True:
Expand Down
26 changes: 13 additions & 13 deletions src/utils/gui.py
Original file line number Diff line number Diff line change
Expand Up @@ -470,7 +470,7 @@ def game_function_description(self):
self.ui.button_passengers_2.setChecked(True)

case GameFunction.YONGSHENGZHIHAI:
logger.ui(YongShengZhiHai.description)
YongShengZhiHai.description()
self.ui.stackedWidget.setCurrentIndex(StackedWidgetIndex.YUHUN.value)
self.ui_spin_times_set_value_func(30)
self.ui.button_mode_team.setChecked(True)
Expand All @@ -483,14 +483,14 @@ def game_function_description(self):
self.ui.button_passengers_3.setEnabled(False)

case GameFunction.YEYUANHUO:
logger.ui(YeYuanHuo.description)
YeYuanHuo.description()

case GameFunction.YULING:
logger.ui(YuLing.description)
YuLing.description()
self.ui_spin_times_set_value_func(1, 1, 400) # 桌面版上限300

case GameFunction.GERENTUPO:
logger.ui(JieJieTuPoGeRen.description)
JieJieTuPoGeRen.description()
self.ui.stackedWidget.setCurrentIndex(StackedWidgetIndex.JIEJIETUPO.value)
self.ui.button_jiejietupo_switch_rule.setChecked(True)
self.ui.button_jiejietupo_current_level_60.setChecked(True)
Expand All @@ -507,20 +507,21 @@ def game_function_description(self):
self.ui_spin_times_set_value_func(times, 1, 200)

case GameFunction.DAOGUANTUPO:
logger.ui(DaoGuanTuPo.description)
DaoGuanTuPo.description()
self.ui.stackedWidget.setCurrentIndex(StackedWidgetIndex.DAOGUANTUPO.value)
self.ui.spin_times.setEnabled(False)

case GameFunction.ZHAOHUAN:
logger.ui(ZhaoHuan.description)
ZhaoHuan.description()

case GameFunction.BAIGUIYEXING:
logger.ui(BaiGuiYeXing.description)
BaiGuiYeXing.description()

case GameFunction.HUODONG:
HuoDong().show_description()

case GameFunction.RILUN:
RiLun.description()
self.ui.stackedWidget.setCurrentIndex(StackedWidgetIndex.YUHUN.value)
self.ui_spin_times_set_value_func(50)
self.ui.button_mode_team.setEnabled(True)
Expand All @@ -532,23 +533,23 @@ def game_function_description(self):
self.ui.button_passengers_2.setChecked(True)

case GameFunction.TANSUO:
logger.ui(TanSuo.description)
TanSuo.description()

case GameFunction.QILING:
logger.ui(QiLing.description)
QiLing.description()
self.ui.stackedWidget.setCurrentIndex(StackedWidgetIndex.QILING.value)
self.ui.button_qiling_jieqi.setChecked(True)
self.ui.combo_qiling_jieqi_stone.addItem("镇墓兽")
self.ui.spin_qiling_jieqi_stone.setValue(1)

case GameFunction.JUEXING:
logger.ui(JueXing.description)
JueXing.description()

case GameFunction.LIUDAOZHIMEN:
logger.ui(LiuDaoZhiMen.description, "warn")
LiuDaoZhiMen.description()

case GameFunction.DOUJI:
logger.ui(DouJi.description, "warn")
DouJi.description()

case GameFunction.YINGJIESHILIAN:
self.ui.stackedWidget.setCurrentIndex(StackedWidgetIndex.YINGJIESHILIAN.value)
Expand Down Expand Up @@ -684,7 +685,6 @@ def is_fighting(self, flag: bool):
self.ui.button_driver_True,
self.ui.button_passengers_2,
self.ui.button_passengers_3,
self.ui.button_yuhun_drop_statistics,
]:
item.setEnabled(not flag)
return
Expand Down

0 comments on commit 683f2e5

Please sign in to comment.