JS脚本:摧毁圣遗物换摩拉 图像识别改造;JS/地图追踪归档 (#641)
* JS/地图追踪归档 * JS脚本:摧毁圣遗物换摩拉 图像识别改造
This commit is contained in:
@@ -1,32 +1,32 @@
|
|||||||
(async function () {
|
(async function () {
|
||||||
setGameMetrics(1920, 1080, 2); // 设置游戏窗口大小和DPI
|
setGameMetrics(1920, 1080, 2); // 设置游戏窗口大小和DPI
|
||||||
keyPress("B");
|
keyPress("B");
|
||||||
await sleep(3000);
|
await sleep(3000);
|
||||||
click(670,40);
|
click(670,40);
|
||||||
await sleep(2000);
|
await sleep(2000);
|
||||||
click(660,1010);
|
click(660,1010);
|
||||||
await sleep(2000);
|
await sleep(2000);
|
||||||
click(300,1020);
|
click(300,1020);
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
click(300,380);
|
click(300,380);
|
||||||
await sleep(400);
|
await sleep(400);
|
||||||
click(300,300);
|
click(300,300);
|
||||||
await sleep(400);
|
await sleep(400);
|
||||||
click(300,220);
|
click(300,220);
|
||||||
await sleep(400);
|
await sleep(400);
|
||||||
click(300,150);
|
click(300,150);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(340,1010);
|
click(340,1010);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(1740,1020);
|
click(1740,1020);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(1180,750);
|
click(1180,750);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(950,800);
|
click(950,800);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
keyPress("Escape");
|
keyPress("Escape");
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
keyPress("Escape");
|
keyPress("Escape");
|
||||||
|
|
||||||
log.info("已分解狗粮");
|
log.info("已分解狗粮");
|
||||||
})();
|
})();
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 1,
|
"manifest_version": 1,
|
||||||
"name": "分解狗粮",
|
"name": "分解狗粮",
|
||||||
"version": "1.0",
|
"version": "1.0",
|
||||||
"description": "用于分解狗粮",
|
"description": "用于分解狗粮",
|
||||||
"authors": [
|
"authors": [
|
||||||
{
|
{
|
||||||
"name": "鹤望兰",
|
"name": "鹤望兰",
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"main": "main.js",
|
"main": "main.js",
|
||||||
}
|
}
|
||||||
@@ -1,30 +1,30 @@
|
|||||||
(async function () {
|
(async function () {
|
||||||
setGameMetrics(1920, 1080, 2); // 设置游戏窗口大小和DPI
|
setGameMetrics(1920, 1080, 2); // 设置游戏窗口大小和DPI
|
||||||
keyPress("B");
|
keyPress("B");
|
||||||
await sleep(3000);
|
await sleep(3000);
|
||||||
click(670,40);
|
click(670,40);
|
||||||
await sleep(2000);
|
await sleep(2000);
|
||||||
click(80,1010);
|
click(80,1010);
|
||||||
await sleep(2000);
|
await sleep(2000);
|
||||||
click(170,1020);
|
click(170,1020);
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
click(300,380);
|
click(300,380);
|
||||||
await sleep(400);
|
await sleep(400);
|
||||||
click(300,300);
|
click(300,300);
|
||||||
await sleep(400);
|
await sleep(400);
|
||||||
click(300,220);
|
click(300,220);
|
||||||
await sleep(400);
|
await sleep(400);
|
||||||
click(300,150);
|
click(300,150);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(340,1010);
|
click(340,1010);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(1740,1020);
|
click(1740,1020);
|
||||||
await sleep(3000);
|
await sleep(3000);
|
||||||
click(1180,830);
|
click(1180,830);
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
click(950,800);
|
click(950,800);
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
keyPress("Escape");
|
keyPress("Escape");
|
||||||
|
|
||||||
log.info("已摧毁狗粮");
|
log.info("已摧毁狗粮");
|
||||||
})();
|
})();
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 1,
|
"manifest_version": 1,
|
||||||
"name": "摧毁狗粮",
|
"name": "摧毁狗粮",
|
||||||
"version": "1.0",
|
"version": "1.0",
|
||||||
"description": "用于摧毁狗粮获取摩拉",
|
"description": "用于摧毁狗粮获取摩拉",
|
||||||
"authors": [
|
"authors": [
|
||||||
{
|
{
|
||||||
"name": "鹤望兰",
|
"name": "鹤望兰",
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"main": "main.js",
|
"main": "main.js",
|
||||||
}
|
}
|
||||||
@@ -1,33 +1,33 @@
|
|||||||
(async function () {
|
(async function () {
|
||||||
setGameMetrics(3840, 2160, 2);
|
setGameMetrics(3840, 2160, 2);
|
||||||
keyPress("b");
|
keyPress("b");
|
||||||
await sleep(1500);
|
await sleep(1500);
|
||||||
click(1350, 90);
|
click(1350, 90);
|
||||||
await sleep(1240);
|
await sleep(1240);
|
||||||
click(1310, 2030);
|
click(1310, 2030);
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
click(580, 2030);
|
click(580, 2030);
|
||||||
await sleep(1240);
|
await sleep(1240);
|
||||||
click(250, 300);
|
click(250, 300);
|
||||||
await sleep(500);
|
await sleep(500);
|
||||||
click(250, 450);
|
click(250, 450);
|
||||||
await sleep(500);
|
await sleep(500);
|
||||||
click(250, 600);
|
click(250, 600);
|
||||||
await sleep(500);
|
await sleep(500);
|
||||||
click(250, 750);
|
click(250, 750);
|
||||||
await sleep(500);
|
await sleep(500);
|
||||||
click(700, 2030);
|
click(700, 2030);
|
||||||
await sleep(1240);
|
await sleep(1240);
|
||||||
click(3500, 2030);
|
click(3500, 2030);
|
||||||
await sleep(1240);
|
await sleep(1240);
|
||||||
click(2300, 1500);
|
click(2300, 1500);
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
keyPress("Escape");
|
keyPress("Escape");
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
keyPress("Escape");
|
keyPress("Escape");
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
keyPress("Escape");
|
keyPress("Escape");
|
||||||
await sleep(1000);
|
await sleep(1000);
|
||||||
|
|
||||||
log.info("已分解狗粮");
|
log.info("已分解狗粮");
|
||||||
})();
|
})();
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 1,
|
"manifest_version": 1,
|
||||||
"name": "分解狗粮",
|
"name": "分解狗粮",
|
||||||
"version": "1.0",
|
"version": "1.0",
|
||||||
"description": "用于分解狗粮",
|
"description": "用于分解狗粮",
|
||||||
"authors": [
|
"authors": [
|
||||||
{
|
{
|
||||||
"name": "HZYgrandma",
|
"name": "HZYgrandma",
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"main": "main.js",
|
"main": "main.js",
|
||||||
}
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 3.9 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
70
repo/js/DestroyArtifactsForMora/main.js
Normal file
70
repo/js/DestroyArtifactsForMora/main.js
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
const ArtifactsButtonRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("Assets/RecognitionObject/ArtifactsButton.png"));
|
||||||
|
const DeleteButtonRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("Assets/RecognitionObject/DeleteButton.png"));
|
||||||
|
const AutoAddButtonRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("Assets/RecognitionObject/AutoAddButton.png"));
|
||||||
|
const ConfirmButtonRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("Assets/RecognitionObject/ConfirmButton.png"));
|
||||||
|
const DestoryButtonRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("Assets/RecognitionObject/DestoryButton.png"));
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns {Promise<void>}
|
||||||
|
*/
|
||||||
|
|
||||||
|
(async function() {
|
||||||
|
await genshin.returnMainUi();
|
||||||
|
keyPress("B");
|
||||||
|
await sleep(1500);
|
||||||
|
|
||||||
|
let ArtifactsButton = captureGameRegion().find(ArtifactsButtonRo);
|
||||||
|
if (ArtifactsButton.isExist()) {
|
||||||
|
log.info("识别到圣遗物按钮");
|
||||||
|
ArtifactsButton.click();
|
||||||
|
await sleep(1500);
|
||||||
|
}
|
||||||
|
|
||||||
|
//计算摧毁次数
|
||||||
|
if (settings.number > 21){
|
||||||
|
times = Math.ceil(settings.number/100)
|
||||||
|
} else if (settings.number <= 21){
|
||||||
|
times = settings.number
|
||||||
|
} else {
|
||||||
|
times = 1
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
for (let i=0 ;i < times ; i++) {
|
||||||
|
captureGameRegion().find(DeleteButtonRo).click();// 点击摧毁
|
||||||
|
await sleep(600);
|
||||||
|
captureGameRegion().find(AutoAddButtonRo).click();// 点击自动添加
|
||||||
|
await sleep(600);
|
||||||
|
|
||||||
|
if (settings.oneStar) {
|
||||||
|
await sleep(300);
|
||||||
|
click(150,150);
|
||||||
|
}
|
||||||
|
if (settings.twoStar) {
|
||||||
|
await sleep(300);
|
||||||
|
click(150,220);
|
||||||
|
}
|
||||||
|
if (settings.threeStar) {
|
||||||
|
await sleep(300);
|
||||||
|
click(150,300);
|
||||||
|
}
|
||||||
|
if (settings.fourStar) {
|
||||||
|
await sleep(300);
|
||||||
|
click(150,370);
|
||||||
|
}
|
||||||
|
|
||||||
|
captureGameRegion().find(ConfirmButtonRo).click();// 点击快捷放入
|
||||||
|
await sleep(600);
|
||||||
|
captureGameRegion().find(DestoryButtonRo).click();// 点击摧毁
|
||||||
|
await sleep(600);
|
||||||
|
captureGameRegion().find(DestoryButtonRo).click();// 弹出页面点击摧毁
|
||||||
|
await sleep(600);
|
||||||
|
click(960, 1000);// 点击空白处
|
||||||
|
await sleep(1000);
|
||||||
|
}
|
||||||
|
} catch(ex) {
|
||||||
|
log.info("背包里的圣遗物已摧毁完毕,提前结束")
|
||||||
|
} finally {
|
||||||
|
await genshin.returnMainUi();
|
||||||
|
}
|
||||||
|
|
||||||
|
})();
|
||||||
15
repo/js/DestroyArtifactsForMora/manifest.json
Normal file
15
repo/js/DestroyArtifactsForMora/manifest.json
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"manifest_version": 1,
|
||||||
|
"name": "摧毁圣遗物换摩拉",
|
||||||
|
"version": "1.0",
|
||||||
|
"bgiVersion": "0.44.6",
|
||||||
|
"description": "图像识别改造版",
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "起个名字好难的喵",
|
||||||
|
"links":"https://github.com/MisakaAldrich"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"main": "main.js",
|
||||||
|
"settings_ui": "settings.json"
|
||||||
|
}
|
||||||
27
repo/js/DestroyArtifactsForMora/settings.json
Normal file
27
repo/js/DestroyArtifactsForMora/settings.json
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "number",
|
||||||
|
"type": "input-text",
|
||||||
|
"label": "摧毁数量(百) 或 摧毁次数"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "oneStar",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "摧毁一星圣遗物"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "twoStar",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "摧毁二星圣遗物"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "threeStar",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "摧毁三星圣遗物"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "fourStar",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "摧毁四星圣遗物"
|
||||||
|
}
|
||||||
|
]
|
||||||
Reference in New Issue
Block a user