mirror of
https://github.com/babalae/bettergi-scripts-list.git
synced 2026-03-28 05:29:52 +08:00
feat(auto-plan): 添加运行类型支持并优化名称和资源管理
- 在自动计划配置中添加runType字段用于指定运行类型 - 将插件名称从"自动秘境计划"更改为"自动体力计划" - 为图像识别添加调试日志输出功能 - 使用try-finally块确保图像捕获区域资源正确释放 - 优化退出界面逻辑,增加主界面检测和确认按钮点击处理 - 添加循环跳出条件避免无限重试
This commit is contained in:
@@ -223,6 +223,7 @@ async function loadMode(Load, autoOrderSet, runConfig) {
|
||||
let autoOrder = {
|
||||
order: order, // 顺序值
|
||||
// day: day,// 执行日期
|
||||
runType: runType, // 运行类型
|
||||
days: days, // 执行日期(数组)
|
||||
autoFight: undefined, // 秘境信息对象
|
||||
autoLeyLineOutcrop: undefined // 地脉信息对象
|
||||
@@ -417,6 +418,7 @@ async function initRunOrderList(domainConfig) {
|
||||
// if (item.day) {
|
||||
// return item.day === dayOfWeek.day
|
||||
// }
|
||||
log.debug(`[{1}]item.days.length:{0}`, dayOfWeek.day, item?.days?.length||0)
|
||||
if (item.days && item.days.length > 0) {
|
||||
const includes = item.days.includes(dayOfWeek.day);
|
||||
log.debug(`[{1}]item.days:{0}`, dayOfWeek.day, JSON.stringify(item.days))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "自动秘境计划",
|
||||
"name": "自动体力计划",
|
||||
"version": "0.0.1",
|
||||
"description": "",
|
||||
"settings_ui": "settings.json",
|
||||
|
||||
@@ -110,9 +110,13 @@ const isInMainUI = () => {
|
||||
genshinJson.width / 5.0
|
||||
);
|
||||
let captureRegion = captureGameRegion();
|
||||
let res = captureRegion.find(paimonMenuRo);
|
||||
captureRegion.Dispose()
|
||||
return !res.isEmpty();
|
||||
try {
|
||||
let res = captureRegion.find(paimonMenuRo);
|
||||
return !res.isEmpty();
|
||||
}finally {
|
||||
captureRegion.Dispose()
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
async function toMainUi() {
|
||||
@@ -143,9 +147,12 @@ const isInOutDomainUI = () => {
|
||||
genshinJson.width / 5.0
|
||||
);
|
||||
let captureRegion = captureGameRegion();
|
||||
let res = captureRegion.find(paimonMenuRo);
|
||||
captureRegion.Dispose()
|
||||
return !res.isEmpty();
|
||||
try {
|
||||
let res = captureRegion.find(paimonMenuRo);
|
||||
return !res.isEmpty();
|
||||
}finally {
|
||||
captureRegion.Dispose()
|
||||
}
|
||||
};
|
||||
|
||||
async function outDomainUI() {
|
||||
@@ -156,21 +163,25 @@ async function outDomainUI() {
|
||||
await sleep(ms);
|
||||
await keyPress("ESCAPE");
|
||||
await sleep(ms);
|
||||
if (isInMainUI()){
|
||||
break
|
||||
} else if (isInOutDomainUI()) {
|
||||
try {
|
||||
//点击确认按钮
|
||||
await findTextAndClick('确认')
|
||||
}catch (e) {
|
||||
// log.error(`多次尝试点击确认失败 假定已经退出处理`);
|
||||
}
|
||||
|
||||
}
|
||||
if (index > 3) {
|
||||
log.error(`多次尝试匹配退出秘境界面失败 假定已经退出处理`);
|
||||
break
|
||||
}
|
||||
index += 1
|
||||
}
|
||||
|
||||
if (isInOutDomainUI()) {
|
||||
try {
|
||||
//点击确认按钮
|
||||
await findTextAndClick('确认')
|
||||
}catch (e) {
|
||||
log.error(`多次尝试点击确认失败 假定已经退出处理`);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user