From 8f46b383ae139750836d5675d61b5e3bbed5b988 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=91=E7=AB=AF=E5=AE=A2?= <107686912+Kirito520Asuna@users.noreply.github.com> Date: Sun, 17 Aug 2025 14:47:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E9=A1=B5=E9=9D=A2=E5=88=87?= =?UTF-8?q?=E6=8D=A2=E5=8A=9F=E8=83=BD(version=201.1.0)=20(#1619)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: 添加原神初露之源水下采集脚本(init) * feat: 初露之源添加<自体自身之塔>上部、中部、下部区域采集功能(补齐完整) * feat: 添加队伍切换功能 * feat: 添加返回主界面功能JS(方便扩展调度器使用) * feat: 添加活动页面切换功能 * docs: 添加活动切换脚本说明文档及代码优化 * docs: 更新活动切换脚本说明文档 * refactor: (用于提交PR)移除废弃的队伍切换和采集脚本-并修正切换活动页面的默认值 * refactor: 调整分页和OCR计数相关参数 * refactor: (版本升为1.1.0)优化鼠标移动逻辑并调整默认参数 * json 命名错误替换 * fix: 添加活动识别完成判断并优化代码格式 --- repo/js/ActivitySwitch/READEME.md | 4 +- .../(活动页面)鼠标滑轮向上移动一格.json | 1 + .../(活动页面)鼠标滑轮向下移动一格.json | 1 + repo/js/ActivitySwitch/main.js | 55 +++++++++++++++---- repo/js/ActivitySwitch/manifest.json | 4 +- repo/js/ActivitySwitch/settings.json | 10 ++++ 6 files changed, 61 insertions(+), 14 deletions(-) create mode 100644 repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向上移动一格.json create mode 100644 repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向下移动一格.json diff --git a/repo/js/ActivitySwitch/READEME.md b/repo/js/ActivitySwitch/READEME.md index a43a6e2fc..34f449573 100644 --- a/repo/js/ActivitySwitch/READEME.md +++ b/repo/js/ActivitySwitch/READEME.md @@ -6,7 +6,9 @@ ## 核心功能 1. 返回主界面,打开活动页面,切换活动页面 -2. 可设置 启动返回主界面(建议启用), 活动名称,最大识别次数(默认2次,不包含首次识别),滑多少次数到顶(默认6次,建议设大点) + +2. 可设置 启动返回主界面(建议启用), 活动名称,最大识别次数(默认3次,不包含首次识别),滑多少次数到顶(默认4次,建议设大点) + 3. 其他料理获取:除了烹饪以外的部分料理的获取[仅有数据,未实装] ## 注意事项 diff --git a/repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向上移动一格.json b/repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向上移动一格.json new file mode 100644 index 000000000..a28062515 --- /dev/null +++ b/repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向上移动一格.json @@ -0,0 +1 @@ +{"macroEvents":[{"type":6,"mouseX":0,"mouseY":-120,"time":1140},{"type":6,"mouseX":0,"mouseY":-120,"time":1187},{"type":6,"mouseX":0,"mouseY":-120,"time":1656},{"type":6,"mouseX":0,"mouseY":-120,"time":1672},{"type":6,"mouseX":0,"mouseY":-120,"time":3172},{"type":6,"mouseX":0,"mouseY":-120,"time":3187}],"info":{"name":"","description":"","x":214,"y":202,"width":1920,"height":1080,"recordDpi":1}} \ No newline at end of file diff --git a/repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向下移动一格.json b/repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向下移动一格.json new file mode 100644 index 000000000..41023f201 --- /dev/null +++ b/repo/js/ActivitySwitch/assets/(活动页面)鼠标滑轮向下移动一格.json @@ -0,0 +1 @@ +{"macroEvents":[{"type":6,"mouseX":0,"mouseY":120,"time":969},{"type":6,"mouseX":0,"mouseY":120,"time":1078},{"type":6,"mouseX":0,"mouseY":120,"time":1578},{"type":6,"mouseX":0,"mouseY":120,"time":1610},{"type":6,"mouseX":0,"mouseY":120,"time":2063},{"type":6,"mouseX":0,"mouseY":120,"time":2094}],"info":{"name":"","description":"","x":214,"y":202,"width":1920,"height":1080,"recordDpi":1}} \ No newline at end of file diff --git a/repo/js/ActivitySwitch/main.js b/repo/js/ActivitySwitch/main.js index fa1ab36d3..d7d4cd405 100644 --- a/repo/js/ActivitySwitch/main.js +++ b/repo/js/ActivitySwitch/main.js @@ -64,6 +64,11 @@ async function switchToActivityPage(activityName, activityKey, maxOcrCount) { lastActivityNameTwo = clickActivity.lastActivityName } log.info(`滑动次数:${index}`) + // log.info(`lastActivityName==>${lastActivityNameOne}^^${lastActivityNameTwo}`) + if (lastActivityNameOne != null && lastActivityNameTwo != null && lastActivityNameOne === lastActivityNameTwo) { + log.info(`已识别完所有活动`) + break; + } if (!switchToActivity && maxOcrCount <= index) { log.error(`已识别:${index}次,已超出最大次数:${maxOcrCount}`) break; @@ -91,13 +96,28 @@ async function switchToActivityPage(activityName, activityKey, maxOcrCount) { * @returns {Promise} */ async function moveMouseUp(x, y, height) { - for (let i = 0; i < height; i++) { - await moveMouseTo(x, y); - await sleep(1000) - await leftButtonDown(); - await keyMouseScript.runFile(`assets/(活动页面)鼠标向上移动一格.json`) - await leftButtonUp(); + + let operate = '鼠标拖动' + + if (operate === settings.operate) { + for (let i = 0; i < height; i++) { + await moveMouseTo(x, y); + await sleep(1000) + await leftButtonDown(); + await keyMouseScript.runFile(`assets/(活动页面)鼠标向上移动一格.json`) + await leftButtonUp(); + } + return } + + await moveMouseTo(x, y); + await leftButtonDown(); + await leftButtonUp(); + for (let i = 0; i < height; i++) { + await sleep(1000) + await keyMouseScript.runFile(`assets/(活动页面)鼠标滑轮向上移动一格.json`) + } + } /** @@ -106,12 +126,25 @@ async function moveMouseUp(x, y, height) { * @returns {Promise} */ async function moveMouseDown(x, y, height) { + + let operate = '鼠标拖动' + + if (operate === settings.operate) { + for (let i = 0; i < height; i++) { + await moveMouseTo(x, y); + await sleep(1000) + await leftButtonDown(); + await keyMouseScript.runFile(`assets/(活动页面)鼠标向下移动一格.json`) + await leftButtonUp(); + } + return + } + + await moveMouseTo(x, y); + await leftButtonDown(); + await leftButtonUp(); for (let i = 0; i < height; i++) { - await moveMouseTo(x, y); - await sleep(1000) - await leftButtonDown(); - await keyMouseScript.runFile(`assets/(活动页面)鼠标向下移动一格.json`) - await leftButtonUp(); + await keyMouseScript.runFile(`assets/(活动页面)鼠标滑轮向下移动一格.json`) } } diff --git a/repo/js/ActivitySwitch/manifest.json b/repo/js/ActivitySwitch/manifest.json index 7b997c836..479f1418c 100644 --- a/repo/js/ActivitySwitch/manifest.json +++ b/repo/js/ActivitySwitch/manifest.json @@ -1,7 +1,7 @@ { "name": "切换活动页面", - "version": "1.0.1", - "description": "(需要处于主界面)一个通过 F5 打开活动页面、鼠标上滑并根据活动名称选择活动的脚本", + "version": "1.1.0", + "description": "(需要处于主界面)一个通过 F5 打开活动页面、(鼠标上滑/滚轮滑动)并根据活动名称选择活动的脚本", "settings_ui": "settings.json", "main": "main.js", "authors": [ diff --git a/repo/js/ActivitySwitch/settings.json b/repo/js/ActivitySwitch/settings.json index 735d48d36..d3294c00a 100644 --- a/repo/js/ActivitySwitch/settings.json +++ b/repo/js/ActivitySwitch/settings.json @@ -61,6 +61,16 @@ "9", ] }, + { + "name": "operate", + "type": "select", + "label": "滑动页面方式(默认:滚轮滑动)", + "options": [ + "默认", + "鼠标拖动", + "滚轮滑动" + ] + }, { "name": "activityKey", "type": "input-text",