JS脚本:AutoFishingTeyvat、AEscoffier_chef【更新】 (#3014)

This commit is contained in:
提瓦特钓鱼玳师
2026-03-19 23:18:03 +08:00
committed by GitHub
parent 632d9ebfd1
commit 07f91cd550
6 changed files with 44 additions and 20 deletions

View File

@@ -11,6 +11,8 @@
## ⚠️(重要)时延设置
若需要使用手动烹饪,必须正确调整该参数,才能最大可能保证料理结果为“完美”。
各星级需要独立设置,如果不打算每个星级都重设一遍,就只填一个值(该值代表所有星级都使用该时延)
**注:**手动设置时延仅需对未解锁自动烹饪的对应星级料理进行调整即可,例如在原神内筛选<未解锁自动烹饪的料理>后只有2、3、4星的料理那么只需要将<烹饪数量>设为1选三个对应星级的料理即可根据料理结果对默认的时延(92 85 96 86 86)进行设置如仅更改2、3、4星的时延则仅更改默认项的中间三个数字的值即可确保一共有5个数值分别对应1-5星料理
---

View File

@@ -564,13 +564,35 @@
/**
*
* 自动执行手动烹饪(源于JS脚本: 烹饪熟练度一键拉满-(柒叶子-https://github.com/511760049))
* @param segmentTime
* @param price 料理星级
* @returns {Promise<number>}
*/
async function auto_cooking_bgi(segmentTime = 66) {
if (settings.segmentTime !== "" && parseInt(settings.segmentTime, 10) !== 0) {
segmentTime = parseInt(settings.segmentTime, 10);
async function auto_cooking_bgi(price = "1") {
let segmentTime = settings.segmentTime;
if (segmentTime.includes(" ")) {
let segList = segmentTime.split(" ");
if (segList.length === 5) {
segmentTime = parseInt(segList[parseInt(price, 10) - 1]); // 取对应星级的时延默认settings内提供的时延从1星开始
} else if (segList.length < 5) {
log.warn(`JS脚本配置内未位置全部的5个星级的独立时延将根据已提供的时延自动选择...`);
await sleep(3000);
if (segList.length > parseInt(price, 10)) {
segmentTime = parseInt(segList[parseInt(price, 10) - 1]); // 取对应星级的时延默认settings内提供的时延从1星开始
log.info(`${segmentTime} | ${parseInt(segList[parseInt(price, 10) - 1])}`);
} else {
segmentTime = parseInt(segList[segList.length - 1], 10); // 取最后一个值settings内提供的最后一个值
}
} else {
log.warn("JS脚本配置内的 时延 设置错误建议检查后继续任务将在10s后使用默认时延继续...");
await sleep(5000);
segmentTime = 86;
}
} else {
if (segmentTime !== "" && parseInt(segmentTime, 10) !== 0) {
segmentTime = parseInt(segmentTime, 10);
}
}
await sleep(350);
await click(1005, 1011); // 点击手动烹饪
await sleep(1000); // 等待画面稳定
@@ -719,7 +741,7 @@
await sleep(500);
let cook_num = parseInt(food_msg[food_name]["price"], 10) * 5;
for (let i = 0; i < cook_num; i++) {
await auto_cooking_bgi();
await auto_cooking_bgi(food_msg[food_name]["price"]);
log.info(`进度: ${i + 1}/${cook_num}`);
await sleep(1000);
// 检测自动烹饪解锁
@@ -1038,7 +1060,7 @@
let cook_num = parseInt(food_msg[food_name]["price"], 10) * 5;
let cook_count = 0;
for (let i = 0; i < cook_num; i++) {
await auto_cooking_bgi(); // 调用手动烹饪
await auto_cooking_bgi(food_msg[food_name]["price"]); // 调用手动烹饪
cook_count++; // 手动烹饪计数
log.info(`进度: ${i + 1}/${cook_num >= food_num ? food_num: cook_num}`);
await sleep(1000);
@@ -1840,13 +1862,13 @@
return null;
}
// 返回主界面
await genshin.returnMainUi();
// // 返回主界面
// await genshin.returnMainUi();
// 刷满熟练度
if (settings.unlockAutoCooking) {
log.info("当前模式为刷满熟练度...");
if (parseInt(settings.segmentTime, 10) === 86) {
if (!(segmentTime.includes(" ")) && settings.segmentTime === "92 85 96 203 86") {
log.warn("检测到JS脚本配置 时延 未进行更改,请确保已经正确设置!\n将在10s后继续...");
await sleep(5000);
}
@@ -1869,12 +1891,12 @@
for (let i = 0; i < 2; i++) {
let food_dic = await calculate_food(i !== 0);
if (Object.keys(food_dic).length !== 0) {
// 前往锅
let flag = await go_and_interact("锅");
if (!flag) {
log.error("未找到锅...");
return null;
}
// // 前往锅
// let flag = await go_and_interact("锅");
// if (!flag) {
// log.error("未找到锅...");
// return null;
// }
for (const [f_name, f_num] of Object.entries(food_dic)) {
// 找到料理
let findResult = await find_and_click_food(f_name);

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 1,
"name": "一只爱可菲",
"version": "2.3.2",
"version": "2.3.3",
"bgi_version": "0.55.0",
"description": "专精料理制作的爱可菲(自动烹饪及解锁、特殊料理、食材加工)[内置料理数据已更新至月之四]\n自动烹饪烹饪精度自定义、一键全解锁、分类选择料理、自动处理食材不足等异常\n特殊料理支持根据概率计算产出、支持全部的特殊料理\n食材加工食材持有量检测、可自选制作鱼肉的配方、可选等待加工完成或跳过、矿石加速",
"tags": [

View File

@@ -8,8 +8,8 @@
{
"name": "segmentTime",
"type": "input-text",
"label": "时延",
"default": "86"
"label": "时延(各星级使用空格隔开,只填一个值则应用到全部星级)",
"default": "92 85 96 86 86"
},
{
"name": "title_1",

View File

@@ -1077,7 +1077,7 @@
if (time_target < now) { // 不是当天终止,天数+1
time_target.setDate(now.getDate() + 1); // 不会超限
}
let time_show = `${time_target.getFullYear()}/${time_target.getMonth()}/${time_target.getDate()} ${time_target.getHours()}:${time_target.getMinutes()}`;
let time_show = `${time_target.getFullYear()}/${time_target.getMonth() + 1}/${time_target.getDate()} ${time_target.getHours()}:${time_target.getMinutes()}`;
log.info(`定时关闭已启用,将在 ${time_show} 后停止后续任务...`);
await sleep(2000);
}

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 1,
"name": "提瓦特自动钓鱼(全流程+自选)",
"version": "2.4.5",
"version": "2.4.6",
"bgi_version": "0.55.0",
"description": "支持自动追踪并垂钓bgi支持的全提瓦特垂钓点",
"authors": [