From cb7b620f3b9117a6ddceb33ba7246133ddaa8c43 Mon Sep 17 00:00:00 2001 From: Tseed <77049769+T888T@users.noreply.github.com> Date: Mon, 27 Jan 2025 00:10:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=8D=E6=8A=93=E6=99=B6?= =?UTF-8?q?=E6=A0=B8=E8=BF=98=E4=BC=9A=E5=88=87=E6=8D=A2=E9=98=9F=E4=BC=8D?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/main.js | 192 ++++++++++-------- .../manifest.json | 10 +- .../settings.json | 10 + 3 files changed, 121 insertions(+), 91 deletions(-) diff --git a/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/main.js b/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/main.js index d303f5b0..278d8382 100644 --- a/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/main.js +++ b/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/main.js @@ -1,4 +1,6 @@ (async function () { + const startTime = Date.now(); //记录启动时间 + setGameMetrics(1920, 1080, 1); // 设置游戏运行的分辨率和缩放 //基础延迟 let delay = settings.delay || 2000; @@ -58,33 +60,36 @@ // 设置世界权限 - keyPress("VK_F2") - await sleep(1000); - click(160, 1020); // 点击世界权限 - await sleep(1000); let domainName = settings.domainName; - switch (domainName) { - case "不允许加入": - click(330, 870); - log.info("权限设置为 不允许加入"); - break; - case "直接加入": - click(330, 920); - log.info("权限设置为 直接加入"); - break; - case "确认后可加入": - click(330, 970); - log.info("权限设置为 确认后可加入"); - break; - default: - click(330, 870); // 为空不允许 - log.info("锁门"); - await sleep(2000); - keyPress("Escape"); - break; + if (domainName != "默认当前") { + keyPress("VK_F2") + await sleep(1000); + click(160, 1020); // 点击世界权限 + await sleep(1000); + switch (domainName) { + case "不允许加入": + click(330, 870); + log.info("权限设置为 不允许加入"); + break; + case "直接加入": + click(330, 920); + log.info("权限设置为 直接加入"); + break; + case "确认后可加入": + click(330, 970); + log.info("权限设置为 确认后可加入"); + break; + default: + click(330, 870); // 为空不允许 + log.info("锁门"); + await sleep(2000); + keyPress("Escape"); + break; + } } + // 前往_合成台 await hct_AutoPath(hct_filePath); await sleep(1000); @@ -107,19 +112,21 @@ // 自动秘境 - while (true) { - try { - await dispatcher.runTask(new SoloTask("AutoDomain")); - await sleep(500); - break; - } catch (ex) { - if (ex.message.includes("检测到复苏界面")) { - log.info("复活后,继续执行自动秘境。"); - continue; - } - else { - // 如果不包含 "检测到复苏界面",则继续抛出异常 - throw ex; + if (settings.autoInstance == "是" | settings.autoInstance == undefined) { + while (true) { + try { + await dispatcher.runTask(new SoloTask("AutoDomain")); + await sleep(500); + break; + } catch (ex) { + if (ex.message.includes("检测到复苏界面")) { + log.info("复活后,继续执行自动秘境。"); + continue; + } + else { + // 如果不包含 "检测到复苏界面",则继续抛出异常 + throw ex; + } } } } @@ -233,52 +240,45 @@ await sleep(1000); - //切换队伍 - keyPress("L"); - await sleep(3000); - click(75, 1020); - await sleep(200); - click(700, 115); - await sleep(200); - click(700, 115); - await sleep(300); - click(75, 200); - await sleep(800); - click(75, 1020); - await sleep(800); - let tempVar = settings.number || 5; - if (tempVar < 9) { // 向右点击 - for (let i = 1; i < tempVar; i++) { - click(1850, 540); - await sleep(50); - } - } else { // 向左点击 - tempVar = 16 - tempVar - for (let i = 0; i < tempVar; i++) { - click(75, 540); - await sleep(50); + //切换至抓晶蝶队伍 + if (settings.catchButterfly == "是" | settings.catchButterfly == undefined) { + keyPress("L"); + await sleep(3000); + click(75, 1020); + await sleep(200); + click(700, 115); + await sleep(200); + click(700, 115); + await sleep(300); + click(75, 200); + await sleep(800); + click(75, 1020); + await sleep(800); + let tempVar = settings.number || 5; + if (tempVar < 9) { // 向右点击 + for (let i = 1; i < tempVar; i++) { + click(1850, 540); + await sleep(50); + } + } else { // 向左点击 + tempVar = 16 - tempVar + for (let i = 0; i < tempVar; i++) { + click(75, 540); + await sleep(50); + } } + click(1555, 1020); + await sleep(1000); + keyPress("Escape"); + log.info("已切换至第" + settings.number || 5 + "队"); + await sleep(delay); } - click(1555, 1020); - await sleep(1000); - keyPress("Escape"); - log.info("已切换至第" + settings.number || 5 + "队"); - await sleep(delay); - //切换角色 keyPress("1"); log.info("已切换至第1个角色"); - // // 向后行走1.5秒 - // keyDown("S"); - // await sleep(1500); - // keyUp("S"); - // log.info("已完成 向后走1.5秒"); - // await sleep(1000); - - // 进入尘歌壶 keyPress("B"); await sleep(1000); @@ -293,9 +293,11 @@ log.info("已完成 进入尘歌壶"); - // // 防止加载卡岩 - // await sleep(3000); - // log.info("等待防止加载卡岩"); + // 如果延迟时间大于3000ms 执行防止加载卡岩 + if (delay > 3000) { + await sleep(3000); + log.info("当前基础延迟大于{time},已等待防止加载卡岩", "3000ms"); + } // 尘歌壶找阿圆 @@ -405,25 +407,37 @@ await captureCrystalfly('枫丹-苍白的遗荣', 4188, 2992, 2); await captureCrystalfly('枫丹-幽林雾道', 3376, 3290, 2); await captureCrystalfly('枫丹-卡布狄斯堡遗迹上方', 3554, 3024, 4); - await captureCrystalfly('枫丹-卡布狄斯堡遗迹下方', 3374, 2699, 4); + await captureCrystalfly('枫丹-卡布狄斯堡遗迹下方_优化', 3374, 2699, 3); await captureCrystalfly('枫丹-莫尔泰区', 3810, 2334, 2); await captureCrystalfly('枫丹-特别温暖的地方', 4790, 2520, 3); + + await captureCrystalfly('须弥-化城郭左侧', 2699, -767, 2); await captureCrystalfly('须弥-下风蚀地', 4452, -2456, 3); + dispatcher.addTimer(new RealtimeTimer("AutoPick", { "forceInteraction": false })); // 关闭自动拾取的实时任务 } - - // 结束游戏 - for (let i = 0; i < 5; i++) { - log.info('即将在 {num}s 后退出', 5 - i + "s"); - await sleep(1000); - } + const endTime = Date.now(); + const totalTimeInSeconds = (endTime - startTime) / 1000; + const minutes = Math.floor(totalTimeInSeconds / 60); + const seconds = totalTimeInSeconds % 60; + const formattedTime = `${minutes}分${seconds.toFixed(0).padStart(2, '0')}秒`; + log.info(`已完成总耗时: ${formattedTime}`); + await sleep(2000); log.info("已完成 所有内容 结束-Tzi"); await sleep(2000); - keyDown("MENU"); - keyDown("F4"); - await sleep(50); - keyUp("MENU"); - keyUp("F4"); + + // 结束游戏 + if (settings.exitGame == "是" | settings.exitGame == undefined) { + for (let i = 0; i < 5; i++) { + log.info('即将在 {num}s 后退出', 5 - i + "s"); + await sleep(1000); + } + keyDown("MENU"); + keyDown("F4"); + await sleep(50); + keyUp("MENU"); + keyUp("F4"); + } })(); diff --git a/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/manifest.json b/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/manifest.json index 63f84c1c..1d4d787a 100644 --- a/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/manifest.json +++ b/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 1, - "name": "Tzi-每日一条龙+副本晶蝶尘歌壶邮件", - "version": "0.03", + "name": "Tzi-每日一条龙+副本晶蝶尘歌壶邮件_0.04", + "version": "0.04", "bgi_version": "0.36.0", "description": "每日一条龙 包含每日任务 刷副本,分解狗粮,尘歌壶,抓晶蝶 自动下线。【自动副本】请先去独立任务中将自动秘境配置完成,【自动晶蝶】队伍需要携带早柚或瑶瑶。【尘歌壶】将快捷道具栏需装满4个,确保尘歌壶在第5位。运行前可以右键配置参数。主要适配枫丹凯瑟琳锚点。", "authors": [ @@ -16,6 +16,12 @@ //同时感谢大佬们的付出 为我提供思路 +// version 0.04 +// 新增设置世界权限 默认当前的选项 +// 修复不抓晶核还会切换队伍的问题 +// 新增晶蝶点位 + + // version 0.03 // 新增多个合成台点位 // 新增多个晶蝶抓取点位 diff --git a/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/settings.json b/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/settings.json index a43eebf5..f28f82fe 100644 --- a/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/settings.json +++ b/repo/js/Tzi-每日一条龙+副本晶蝶尘歌壶/settings.json @@ -4,6 +4,7 @@ "type": "select", "label": "设置房间权限(默认 不允许加入)", "options": [ + "默认当前", "直接加入", "确认后可加入", "不允许加入" @@ -46,6 +47,15 @@ "清琼岛" ] }, + { + "name": "autoInstance", + "type": "select", + "label": "自动秘境(默认 是)", + "options": [ + "是", + "否" + ] + }, { "name": "decomposeDogFood", "type": "select",