diff --git a/js/提瓦特百货商店/main.js b/js/提瓦特百货商店/main.js new file mode 100644 index 00000000..1571f862 --- /dev/null +++ b/js/提瓦特百货商店/main.js @@ -0,0 +1,101 @@ +// 检查 F 图标和右边水平对齐的文字 +async function checkNpcAndFAlignment(npcName, fDialogueRo) { + try { + let ra = captureGameRegion(); + let fRes = ra.find(fDialogueRo); + if (!fRes.isExist()) { + let f_attempts = 0; // 初始化为0而不是null + while (f_attempts < 5) { + f_attempts++; + log.info(`当前尝试次数:${f_attempts}`); + + if (f_attempts <= 3) { + await keyMouseScript.runFile(`assets/滚轮下翻.json`); + await sleep(1000); + } else if (f_attempts === 4) { + log.warn("尝试调整游戏时间"); + // 先调整到8点 + await setGameTime(8); + await sleep(2000); + + // 8点时进行3次滚轮下滑和NPC检测 + log.info("8点时执行滚轮下滑和NPC检测循环"); + for (let i = 0; i < 3; i++) { + await keyMouseScript.runFile(`assets/滚轮下翻.json`); + await sleep(1000); + // 检查F图标和NPC是否对齐 + if (await checkAlignment()) { + log.info(`在8点第${i + 1}次滚动后找到对齐的NPC: ${npcName}`); + return true; + } + } + + // 如果8点没找到,调整到18点 + await setGameTime(18); + await sleep(2000); + + // 18点时进行3次滚轮下滑和NPC检测 + log.info("18点时执行滚轮下滑和NPC检测循环"); + for (let i = 0; i < 3; i++) { + await keyMouseScript.runFile(`assets/滚轮下翻.json`); + await sleep(1000); + // 检查F图标和NPC是否对齐 + if (await checkAlignment()) { + log.info(`在18点第${i + 1}次滚动后找到对齐的NPC: ${npcName}`); + return true; + } + } + + // 如果都没找到,重新加载路径文件 + log.info("重新加载路径文件"); + await pathingScript.runFile(filePath); + await sleep(500); + } else { + log.warn("尝试次数已达上限"); + break; + } + + fRes = ra.find(fDialogueRo); + if (fRes.isExist()) { + log.info("找到 F 图标"); + // 找到F图标后,立即检查对齐情况 + if (await checkAlignment()) { + return true; + } + } + log.warn(`尝试 ${f_attempts}:寻找 F 图标`); + } + + if (!fRes.isExist()) { + log.warn("经过多次尝试后仍未找到 F 图标"); + return false; + } + } + + // 如果已经找到F图标,检查对齐情况 + return await checkAlignment(); + } catch (err) { + log.warn(`检查NPC和F对齐失败: ${err}`); + return false; + } + + // 内部函数:检查F图标和NPC是否对齐 + async function checkAlignment() { + let ra = captureGameRegion(); + let fRes = ra.find(fDialogueRo); + if (!fRes.isExist()) return false; + + let centerYF = fRes.y + fRes.height / 2; + let ocrResult = await performOcr(npcName, npcxRange, { min: fRes.y, max: fRes.y + fRes.height }, tolerance); + if (!ocrResult.success) { + return false; + } + + let centerYnpcName = ocrResult.y + ocrResult.height / 2; + let isAligned = Math.abs(centerYnpcName - centerYF) <= npctolerance; + if (isAligned) { + log.info(`NPC '${npcName}' 和 F 图标水平对齐,NPC: ${centerYnpcName}, F 图标: ${centerYF}`); + } + return isAligned; + } +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Comfirm.png b/repo/js/提瓦特百货商店/assets/Comfirm.png new file mode 100644 index 00000000..201445d0 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Comfirm.png differ diff --git a/repo/js/提瓦特百货商店/assets/E_Dialogue.png b/repo/js/提瓦特百货商店/assets/E_Dialogue.png new file mode 100644 index 00000000..9114ff5b Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/E_Dialogue.png differ diff --git a/repo/js/提瓦特百货商店/assets/F_Dialogue.png b/repo/js/提瓦特百货商店/assets/F_Dialogue.png new file mode 100644 index 00000000..314a85f1 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/F_Dialogue.png differ diff --git a/repo/js/提瓦特百货商店/assets/Pathing/枫丹咖啡厅露泽店主-阿鲁埃.json b/repo/js/提瓦特百货商店/assets/Pathing/枫丹咖啡厅露泽店主-阿鲁埃.json new file mode 100644 index 00000000..f89082e7 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/枫丹咖啡厅露泽店主-阿鲁埃.json @@ -0,0 +1,58 @@ +{ + "info": { + "name": "枫丹咖啡厅露泽店主阿鲁埃", + "type": "collect", + "author": "吉吉喵", + "version": "1.0", + "description": "咖啡豆", + "bgi_version": "0.42.3" + }, + "positions": [ + { + "id": 1, + "x": 4649.4873046875, + "y": 3467.8935546875, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "teleport" + }, + { + "id": 2, + "x": 4627.564453125, + "y": 3470.357421875, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "path" + }, + { + "id": 3, + "x": 4604.40869140625, + "y": 3510.25, + "action": "stop_flying", + "move_mode": "fly", + "action_params": "", + "type": "path" + }, + { + "id": 4, + "x": 4600.888671875, + "y": 3514.0810546875, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "target", + "locked": false + }, + { + "id": 5, + "x": 4599.888671875, + "y": 3516.081054687501, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "orientation" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/枫丹达莫维百货店主布-布希柯.json b/repo/js/提瓦特百货商店/assets/Pathing/枫丹达莫维百货店主布-布希柯.json new file mode 100644 index 00000000..b72b9c30 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/枫丹达莫维百货店主布-布希柯.json @@ -0,0 +1,40 @@ +{ + "info": { + "name": "枫丹达莫维百货店主布希柯", + "type": "collect", + "author": "吉吉喵", + "version": "1.0", + "description": "杂货", + "bgi_version": "0.35.1" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 4514.18, + "y": 3630.4, + "action_params": "", + "locked": false + }, + { + "id": 2, + "x": 4514.2802734375, + "y": 3604.35498046875, + "type": "path", + "move_mode": "fly", + "action": "stop_flying", + "action_params": "" + }, + { + "id": 3, + "x": 4470.1357421875, + "y": 3562.072265625, + "type": "path", + "move_mode": "fly", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月万民堂老板-卯师傅.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月万民堂老板-卯师傅.json new file mode 100644 index 00000000..33eae434 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月万民堂老板-卯师傅.json @@ -0,0 +1,37 @@ +{ + "info": { + "name": "璃月万民堂老板卯师傅", + "type": "collect", + "author": "吉吉喵", + "version": "1.0", + "description": "鱼肉+螃蟹", + "bgi_version": "0.42.3" + }, + "positions": [ + { + "id": 1, + "x": 267.9150390625, + "y": -665.1591796875, + "action": "", + "move_mode": "walk", + "type": "teleport", + "locked": false + }, + { + "id": 2, + "x": 228.953125, + "y": -663.4853515625, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 3, + "x": 227.083984375, + "y": -668.10791015625, + "action": "", + "move_mode": "walk", + "type": "target" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月商人-长顺.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月商人-长顺.json new file mode 100644 index 00000000..c827d0e0 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月商人-长顺.json @@ -0,0 +1,49 @@ +{ + "info": { + "name": "璃月商人-长顺", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月商人-长顺", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 366.767578125, + "y": -502.52490234375, + "action_params": "" + }, + { + "id": 2, + "x": 381.28515625, + "y": -530.86767578125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 357.927734375, + "y": -557.794921875, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 330.447265625, + "y": -593.73388671875, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月客栈老板娘-菲尔戈黛特.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月客栈老板娘-菲尔戈黛特.json new file mode 100644 index 00000000..46246626 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月客栈老板娘-菲尔戈黛特.json @@ -0,0 +1,67 @@ +{ + "info": { + "name": "璃月客栈老板娘-菲尔戈黛特", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月客栈老板娘-菲尔戈黛特", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 328.9609375, + "y": 873.6025390625, + "action_params": "" + }, + { + "id": 2, + "x": 324.9306640625, + "y": 883.046875, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 334.4033203125, + "y": 890.71484375, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 341.8505859375, + "y": 892.60009765625, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 346.298828125, + "y": 908.25146484375, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": 346.427734375, + "y": 908.9697265625, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月小吃摊摊主-连芳.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月小吃摊摊主-连芳.json new file mode 100644 index 00000000..a299f0d8 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月小吃摊摊主-连芳.json @@ -0,0 +1,58 @@ +{ + "info": { + "name": "璃月小吃摊摊主-连芳", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月小吃摊摊主-连芳", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 2358.4736328125, + "y": 2414.63720703125, + "action_params": "" + }, + { + "id": 2, + "x": 2352.466796875, + "y": 2400.968017578125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 2350.28125, + "y": 2396.127685546875, + "type": "path", + "move_mode": "jump", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 2334.8076171875, + "y": 2341.242919921875, + "type": "path", + "move_mode": "fly", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 2339.111328125, + "y": 2330.905517578125, + "type": "path", + "move_mode": "fly", + "action": "stop_flying", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月植物类商人-阿桂.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月植物类商人-阿桂.json new file mode 100644 index 00000000..ba99755b --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月植物类商人-阿桂.json @@ -0,0 +1,76 @@ +{ + "info": { + "name": "璃月植物类商人-阿桂", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月植物类商人-阿桂", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 368.216796875, + "y": -504.99658203125, + "action_params": "" + }, + { + "id": 2, + "x": 388.9453125, + "y": -523.78759765625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 413.8876953125, + "y": -497.44580078125, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 420.2041015625, + "y": -487.51708984375, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 440.4072265625, + "y": -481.13623046875, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": 433.6552734375, + "y": -428.83984375, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 7, + "x": 433.5498046875, + "y": -428.064453125, + "type": "target", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月水果和鱼肉-博来.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月水果和鱼肉-博来.json new file mode 100644 index 00000000..85dfa8d4 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月水果和鱼肉-博来.json @@ -0,0 +1,58 @@ +{ + "info": { + "name": "璃月水果和鱼肉-博来", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月水果和鱼肉-博来", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 366.7890625, + "y": -502.5419921875, + "action_params": "" + }, + { + "id": 2, + "x": 329.533203125, + "y": -491.5419921875, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 324.8525390625, + "y": -504.84326171875, + "type": "path", + "move_mode": "fly", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 321.4296875, + "y": -509.57177734375, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 321.3173828125, + "y": -510.60205078125, + "type": "orientation", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月荣发商铺店主-东升.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月荣发商铺店主-东升.json new file mode 100644 index 00000000..e8e9abfd --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月荣发商铺店主-东升.json @@ -0,0 +1,28 @@ +{ + "info": { + "name": "璃月荣发商铺店主东升", + "type": "collect", + "author": "吉吉喵", + "version": "1.0", + "description": "杂货", + "bgi_version": "0.42.0" + }, + "positions": [ + { + "id": 1, + "action": "force_tp", + "move_mode": "walk", + "type": "teleport", + "x": 267.92, + "y": -665.01 + }, + { + "id": 2, + "x": 256.9208984375, + "y": -682.560546875, + "type": "path", + "move_mode": "walk", + "action": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月轻策庄磨坊主-小白.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月轻策庄磨坊主-小白.json new file mode 100644 index 00000000..50446af8 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月轻策庄磨坊主-小白.json @@ -0,0 +1,58 @@ +{ + "info": { + "name": "璃月轻策庄磨坊主-小白", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月轻策庄磨坊主-小白", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 547.703125, + "y": 1766.833984375, + "action_params": "" + }, + { + "id": 2, + "x": 564.7998046875, + "y": 1744.025390625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 566.111328125, + "y": 1738.85400390625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 552.8505859375, + "y": 1731.16015625, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 551.423828125, + "y": 1725.5224609375, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月遗珑埠百货商人-丰泰.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月遗珑埠百货商人-丰泰.json new file mode 100644 index 00000000..b7c22256 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月遗珑埠百货商人-丰泰.json @@ -0,0 +1,67 @@ +{ + "info": { + "name": "璃月遗珑埠百货商人-丰泰", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月遗珑埠百货商人-丰泰", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 2358.4912109375, + "y": 2414.618896484375, + "action_params": "" + }, + { + "id": 2, + "x": 2379.6513671875, + "y": 2422.33056640625, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 2403.7724609375, + "y": 2453.442138671875, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 2408.3642578125, + "y": 2468.807861328125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 2414.80078125, + "y": 2470.36572265625, + "type": "path", + "move_mode": "jump", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": 2418.51953125, + "y": 2471.7783203125, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月鱼贩1-老孙.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月鱼贩1-老孙.json new file mode 100644 index 00000000..d92e4c63 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月鱼贩1-老孙.json @@ -0,0 +1,95 @@ +{ + "info": { + "name": "璃月鱼贩-老孙", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月鱼贩-老孙", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "x": 267.9404296875, + "y": -665.15234375, + "type": "teleport", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 2, + "x": 259.0986328125, + "y": -639.119140625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "", + "locked": false + }, + { + "id": 3, + "x": 255.0986328125, + "y": -620.119140625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": 229.8642578125, + "y": -618.705078125, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": 221.7880859375, + "y": -616.0830078125, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": 182.36328125, + "y": -600.35009765625, + "type": "path", + "move_mode": "fly", + "action": "stop_flying", + "action_params": "300" + }, + { + "id": 7, + "x": 170.697265625, + "y": -603.03125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 8, + "x": 165.27734375, + "y": -600.17724609375, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 9, + "x": 162.8447265625, + "y": -602.1376953125, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/璃月鱼贩2-老高.json b/repo/js/提瓦特百货商店/assets/Pathing/璃月鱼贩2-老高.json new file mode 100644 index 00000000..76faa655 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/璃月鱼贩2-老高.json @@ -0,0 +1,40 @@ +{ + "info": { + "name": "璃月鱼贩-老高", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "璃月鱼贩-老高", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "dash", + "type": "path", + "x": 166.1064453125, + "y": -599.52294921875, + "action_params": "" + }, + { + "id": 2, + "x": 157.345703125, + "y": -587.49267578125, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 158.6015625, + "y": -586.2490234375, + "type": "target", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/稻妻征集店名的店主-山城健太.json b/repo/js/提瓦特百货商店/assets/Pathing/稻妻征集店名的店主-山城健太.json new file mode 100644 index 00000000..c998314c --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/稻妻征集店名的店主-山城健太.json @@ -0,0 +1,49 @@ +{ + "info": { + "name": "稻妻征集店名的店主-山城健太", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "稻妻征集店名的店主-山城健太", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "x": -3812.70703125, + "y": -2546.560546875, + "type": "teleport", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 2, + "x": -3813.88671875, + "y": -2554.1826171875, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": -3809.3623046875, + "y": -2579.0400390625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": -3786.658203125, + "y": -2578.439453125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/稻妻海祇岛百货商人-清子.json b/repo/js/提瓦特百货商店/assets/Pathing/稻妻海祇岛百货商人-清子.json new file mode 100644 index 00000000..3c125e91 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/稻妻海祇岛百货商人-清子.json @@ -0,0 +1,31 @@ +{ + "info": { + "name": "稻妻海祇岛百货商人-清子", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "稻妻海祇岛百货商人-清子", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": -755.5869140625, + "y": -4001.095703125, + "action_params": "" + }, + { + "id": 2, + "x": -847.1787109375, + "y": -3967.7099609375, + "type": "path", + "move_mode": "fly", + "action": "stop_flying", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/稻妻百货商人-葵.json b/repo/js/提瓦特百货商店/assets/Pathing/稻妻百货商人-葵.json new file mode 100644 index 00000000..8a034497 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/稻妻百货商人-葵.json @@ -0,0 +1,31 @@ +{ + "info": { + "name": "稻妻百货商人-葵", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "稻妻百货商人-葵", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": -4402.509765625, + "y": -3053.021484375, + "action_params": "" + }, + { + "id": 2, + "x": -4402.333984375, + "y": -3070.1435546875, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/稻妻餐馆-志村勘兵卫.json b/repo/js/提瓦特百货商店/assets/Pathing/稻妻餐馆-志村勘兵卫.json new file mode 100644 index 00000000..4da5b45c --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/稻妻餐馆-志村勘兵卫.json @@ -0,0 +1,49 @@ +{ + "info": { + "name": "稻妻餐馆-志村勘兵卫", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "稻妻餐馆-志村勘兵卫", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "x": -4402.447265625, + "y": -3053.1044921875, + "type": "teleport", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 2, + "x": -4408.123046875, + "y": -3065.052734375, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": -4422.1953125, + "y": -3084.4609375, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": -4425.306640625, + "y": -3082.072265625, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/蒙德杂货商人-布兰琪.json b/repo/js/提瓦特百货商店/assets/Pathing/蒙德杂货商人-布兰琪.json new file mode 100644 index 00000000..0398cf11 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/蒙德杂货商人-布兰琪.json @@ -0,0 +1,37 @@ +{ + "info": { + "name": "蒙德百货销售员布兰琪", + "type": "collect", + "author": "吉吉喵", + "version": "1.0", + "description": "杂货", + "bgi_version": "0.42.3", + "map_name": "Teyvat" + }, + "positions": [ + { + "id": 1, + "x": -867.693359375, + "y": 2281.393310546875, + "action": "", + "move_mode": "walk", + "type": "teleport" + }, + { + "id": 2, + "x": -886.5966796875, + "y": 2259.00244140625, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 3, + "x": -894.9638671875, + "y": 2264.875244140625, + "action": "", + "move_mode": "walk", + "type": "target" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/蒙德植物商人-芙萝拉.json b/repo/js/提瓦特百货商店/assets/Pathing/蒙德植物商人-芙萝拉.json new file mode 100644 index 00000000..706074c7 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/蒙德植物商人-芙萝拉.json @@ -0,0 +1,67 @@ +{ + "info": { + "name": "蒙德植物商人-芙罗拉", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.1", + "description": "蒙德植物商人-芙罗拉", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": -867.7080078125, + "y": 2281.365234375, + "action_params": "" + }, + { + "id": 2, + "x": -873.609375, + "y": 2274.7041015625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": -880.400390625, + "y": 2266.86767578125, + "type": "path", + "move_mode": "jump", + "action": "stop_flying", + "action_params": "" + }, + { + "id": 4, + "x": -897.6943359375, + "y": 2251.416748046875, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": -923.6123046875, + "y": 2239.172119140625, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": -927.443359375, + "y": 2245.3642578125, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/蒙德肉类商人-杜拉夫.json b/repo/js/提瓦特百货商店/assets/Pathing/蒙德肉类商人-杜拉夫.json new file mode 100644 index 00000000..33b0323a --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/蒙德肉类商人-杜拉夫.json @@ -0,0 +1,67 @@ +{ + "info": { + "name": "蒙德肉类商人-杜拉夫", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "蒙德肉类商人杜拉夫", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": -869.001953125, + "y": 1991.86572265625, + "action_params": "" + }, + { + "id": 2, + "x": -906.419921875, + "y": 1977.14990234375, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": -912.865234375, + "y": 1960.15673828125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 4, + "x": -917.2607421875, + "y": 1956.9619140625, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 5, + "x": -914.3896484375, + "y": 1957.896484375, + "type": "target", + "move_mode": "walk", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": -914.3955078125, + "y": 1957.89453125, + "type": "orientation", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/蒙德餐馆-莎拉.json b/repo/js/提瓦特百货商店/assets/Pathing/蒙德餐馆-莎拉.json new file mode 100644 index 00000000..352cd23e --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/蒙德餐馆-莎拉.json @@ -0,0 +1,67 @@ +{ + "info": { + "name": "蒙德餐馆-莎拉", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.1", + "description": "蒙德餐馆-莎拉", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "x": -867.67578125, + "y": 2281.332763671875, + "action": "", + "move_mode": "run", + "action_params": "", + "type": "teleport" + }, + { + "id": 2, + "x": -869.7607421875, + "y": 2271.817626953125, + "action": "", + "move_mode": "run", + "action_params": "", + "type": "path" + }, + { + "id": 3, + "x": -872.23828125, + "y": 2265.237548828125, + "action": "", + "move_mode": "jump", + "action_params": "", + "type": "path" + }, + { + "id": 4, + "x": -875.515625, + "y": 2251.932373046875, + "action": "", + "move_mode": "run", + "action_params": "", + "type": "path" + }, + { + "id": 5, + "x": -888.9970703125, + "y": 2242.136962890625, + "type": "path", + "move_mode": "run", + "action": "", + "action_params": "" + }, + { + "id": 6, + "x": -888.3896484375, + "y": 2240.937255859375, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/须弥城咖啡馆代理店长-恩忒卡.json b/repo/js/提瓦特百货商店/assets/Pathing/须弥城咖啡馆代理店长-恩忒卡.json new file mode 100644 index 00000000..7f1c4145 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/须弥城咖啡馆代理店长-恩忒卡.json @@ -0,0 +1,70 @@ +{ + "info": { + "name": "须弥城普斯帕咖啡馆代理店长恩忒卡", + "type": "collect", + "author": "吉吉喵", + "version": "", + "description": "咖啡", + "bgi_version": "0.42.3" + }, + "positions": [ + { + "id": 1, + "x": 2789.4375, + "y": -492.34375, + "action": "", + "move_mode": "walk", + "type": "teleport" + }, + { + "id": 2, + "x": 2789.125, + "y": -488.28125, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 3, + "x": 2772.20703125, + "y": -477.16259765625, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 4, + "x": 2770.71875, + "y": -465.90625, + "action": "", + "move_mode": "walk", + "action_params": "", + "type": "path" + }, + { + "id": 5, + "x": 2765.1025390625, + "y": -459.37548828125, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 6, + "x": 2745.6875, + "y": -462.09375, + "action": "", + "move_mode": "walk", + "type": "path" + }, + { + "id": 7, + "x": 2743.4736328125, + "y": -470.27734375, + "action": "combat_script", + "move_mode": "walk", + "action_params": "wait(0.5),keypress(F),wait(6),keydown(W),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),wait(0.5),keypress(SPACE),keyup(W)", + "type": "path" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/须弥城鱼贩-珀姆.json b/repo/js/提瓦特百货商店/assets/Pathing/须弥城鱼贩-珀姆.json new file mode 100644 index 00000000..2031ec3a --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/须弥城鱼贩-珀姆.json @@ -0,0 +1 @@ +{"info":{"name":"","type":""},"positions":[{"x":2788.5654296875,"y":-506.36279296875,"type":"teleport","move_mode":"walk"},{"x":2792.4580078125,"y":-519.3681640625,"type":"path","move_mode":"walk"},{"x":2799.9716796875,"y":-520.26806640625,"type":"path","move_mode":"walk"},{"x":2810.134765625,"y":-511.20947265625,"type":"path","move_mode":"walk"}]} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/须弥奥摩斯港鱼贩-布特罗斯.json b/repo/js/提瓦特百货商店/assets/Pathing/须弥奥摩斯港鱼贩-布特罗斯.json new file mode 100644 index 00000000..7093fa8a --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/须弥奥摩斯港鱼贩-布特罗斯.json @@ -0,0 +1,28 @@ +{ + "info": { + "name": "须弥奥摩斯港鱼贩布特罗斯", + "type": "collect", + "author": "吉吉喵", + "version": "", + "description": "鱼肉+螃蟹", + "bgi_version": "0.42.3" + }, + "positions": [ + { + "id": 1, + "x": 2679.8427734375, + "y": -1935.0341796875, + "action": "", + "move_mode": "walk", + "type": "teleport" + }, + { + "id": 2, + "x": 2658.712890625, + "y": -1930.0478515625, + "action": "", + "move_mode": "walk", + "type": "target" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/须弥阿如村商人-阿扎莱.json b/repo/js/提瓦特百货商店/assets/Pathing/须弥阿如村商人-阿扎莱.json new file mode 100644 index 00000000..4bfbb2d1 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/须弥阿如村商人-阿扎莱.json @@ -0,0 +1 @@ +{"info":{"name":"","type":""},"positions":[{"x":4095.98828125,"y":-2025.9638671875,"type":"teleport","move_mode":"walk"},{"x":4099.64013671875,"y":-2010.21337890625,"type":"path","move_mode":"walk"},{"x":4095.404296875,"y":-1997.890625,"type":"path","move_mode":"walk"},{"x":4099.6630859375,"y":-1978.88427734375,"type":"path","move_mode":"walk"},{"x":4091.326171875,"y":-1980.173828125,"type":"path","move_mode":"walk"}]} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Pathing/须弥鱼贩-珀姆.json b/repo/js/提瓦特百货商店/assets/Pathing/须弥鱼贩-珀姆.json new file mode 100644 index 00000000..8c800041 --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/Pathing/须弥鱼贩-珀姆.json @@ -0,0 +1,40 @@ +{ + "info": { + "name": "须弥鱼贩-珀姆", + "type": "collect", + "author": "小鹰划船不用桨", + "version": "1.0", + "description": "须弥鱼贩-珀姆", + "map_name": "Teyvat", + "bgi_version": "0.45.0" + }, + "positions": [ + { + "id": 1, + "action": "", + "move_mode": "walk", + "type": "teleport", + "x": 2786.9755859375, + "y": -503.099609375, + "action_params": "" + }, + { + "id": 2, + "x": 2807.921875, + "y": -515.51220703125, + "type": "path", + "move_mode": "dash", + "action": "", + "action_params": "" + }, + { + "id": 3, + "x": 2811.0615234375, + "y": -509.51171875, + "type": "path", + "move_mode": "walk", + "action": "", + "action_params": "" + } + ] +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/assets/Picture/兽肉.png b/repo/js/提瓦特百货商店/assets/Picture/兽肉.png new file mode 100644 index 00000000..350e3b7c Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/兽肉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/冰雾花花朵.png b/repo/js/提瓦特百货商店/assets/Picture/冰雾花花朵.png new file mode 100644 index 00000000..b157adea Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/冰雾花花朵.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/卷心菜.png b/repo/js/提瓦特百货商店/assets/Picture/卷心菜.png new file mode 100644 index 00000000..75140c48 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/卷心菜.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/发酵果实汁.png b/repo/js/提瓦特百货商店/assets/Picture/发酵果实汁.png new file mode 100644 index 00000000..3c27cefb Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/发酵果实汁.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/咖啡豆.png b/repo/js/提瓦特百货商店/assets/Picture/咖啡豆.png new file mode 100644 index 00000000..0571fb15 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/咖啡豆.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/嘟嘟莲.png b/repo/js/提瓦特百货商店/assets/Picture/嘟嘟莲.png new file mode 100644 index 00000000..f98fed3e Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/嘟嘟莲.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/土豆.png b/repo/js/提瓦特百货商店/assets/Picture/土豆.png new file mode 100644 index 00000000..c67043cc Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/土豆.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/培根.png b/repo/js/提瓦特百货商店/assets/Picture/培根.png new file mode 100644 index 00000000..10c95138 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/培根.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/塞西莉亚花.png b/repo/js/提瓦特百货商店/assets/Picture/塞西莉亚花.png new file mode 100644 index 00000000..705705c7 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/塞西莉亚花.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/夜泊石.png b/repo/js/提瓦特百货商店/assets/Picture/夜泊石.png new file mode 100644 index 00000000..faaa1e93 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/夜泊石.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/奶油.png b/repo/js/提瓦特百货商店/assets/Picture/奶油.png new file mode 100644 index 00000000..0c06e99d Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/奶油.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/奶酪.png b/repo/js/提瓦特百货商店/assets/Picture/奶酪.png new file mode 100644 index 00000000..c425f9b9 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/奶酪.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/小灯草.png b/repo/js/提瓦特百货商店/assets/Picture/小灯草.png new file mode 100644 index 00000000..149b4332 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/小灯草.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/小麦.png b/repo/js/提瓦特百货商店/assets/Picture/小麦.png new file mode 100644 index 00000000..df351092 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/小麦.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/山珍热卤面.png b/repo/js/提瓦特百货商店/assets/Picture/山珍热卤面.png new file mode 100644 index 00000000..673241b7 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/山珍热卤面.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/提瓦特煎蛋.png b/repo/js/提瓦特百货商店/assets/Picture/提瓦特煎蛋.png new file mode 100644 index 00000000..4a2e7cfa Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/提瓦特煎蛋.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/日落果.png b/repo/js/提瓦特百货商店/assets/Picture/日落果.png new file mode 100644 index 00000000..a678ca7c Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/日落果.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/星螺.png b/repo/js/提瓦特百货商店/assets/Picture/星螺.png new file mode 100644 index 00000000..57804281 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/星螺.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/杏仁.png b/repo/js/提瓦特百货商店/assets/Picture/杏仁.png new file mode 100644 index 00000000..2c6a8421 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/杏仁.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/杏仁豆腐.png b/repo/js/提瓦特百货商店/assets/Picture/杏仁豆腐.png new file mode 100644 index 00000000..db94d4ce Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/杏仁豆腐.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/松茸.png b/repo/js/提瓦特百货商店/assets/Picture/松茸.png new file mode 100644 index 00000000..0c0a04fb Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/松茸.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/松茸酿肉卷.png b/repo/js/提瓦特百货商店/assets/Picture/松茸酿肉卷.png new file mode 100644 index 00000000..019f50bf Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/松茸酿肉卷.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/果酱.png b/repo/js/提瓦特百货商店/assets/Picture/果酱.png new file mode 100644 index 00000000..6c32b841 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/果酱.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/枫达.png b/repo/js/提瓦特百货商店/assets/Picture/枫达.png new file mode 100644 index 00000000..13cb976a Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/枫达.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/沉玉仙茗.png b/repo/js/提瓦特百货商店/assets/Picture/沉玉仙茗.png new file mode 100644 index 00000000..43190384 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/沉玉仙茗.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/沉玉茶露.png b/repo/js/提瓦特百货商店/assets/Picture/沉玉茶露.png new file mode 100644 index 00000000..14c20b20 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/沉玉茶露.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/洋葱.png b/repo/js/提瓦特百货商店/assets/Picture/洋葱.png new file mode 100644 index 00000000..95edfb28 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/洋葱.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/海草.png b/repo/js/提瓦特百货商店/assets/Picture/海草.png new file mode 100644 index 00000000..974a8c44 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/海草.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/清心.png b/repo/js/提瓦特百货商店/assets/Picture/清心.png new file mode 100644 index 00000000..50eaa606 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/清心.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/清水玉.png b/repo/js/提瓦特百货商店/assets/Picture/清水玉.png new file mode 100644 index 00000000..01b2a7a5 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/清水玉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/渔人吐司.png b/repo/js/提瓦特百货商店/assets/Picture/渔人吐司.png new file mode 100644 index 00000000..4fd5bb08 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/渔人吐司.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/火腿.png b/repo/js/提瓦特百货商店/assets/Picture/火腿.png new file mode 100644 index 00000000..dc205cc6 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/火腿.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/烈焰花花朵.png b/repo/js/提瓦特百货商店/assets/Picture/烈焰花花朵.png new file mode 100644 index 00000000..a5523d54 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/烈焰花花朵.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/熏禽肉.png b/repo/js/提瓦特百货商店/assets/Picture/熏禽肉.png new file mode 100644 index 00000000..253549f7 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/熏禽肉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/牛奶.png b/repo/js/提瓦特百货商店/assets/Picture/牛奶.png new file mode 100644 index 00000000..b8fb8869 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/牛奶.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/玉纹茶叶蛋.png b/repo/js/提瓦特百货商店/assets/Picture/玉纹茶叶蛋.png new file mode 100644 index 00000000..9a757b9f Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/玉纹茶叶蛋.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/珊瑚真珠.png b/repo/js/提瓦特百货商店/assets/Picture/珊瑚真珠.png new file mode 100644 index 00000000..0c8217a0 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/珊瑚真珠.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/琉璃百合.png b/repo/js/提瓦特百货商店/assets/Picture/琉璃百合.png new file mode 100644 index 00000000..4ec5171d Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/琉璃百合.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/琉璃袋.png b/repo/js/提瓦特百货商店/assets/Picture/琉璃袋.png new file mode 100644 index 00000000..64b1b1d2 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/琉璃袋.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/甜甜花.png b/repo/js/提瓦特百货商店/assets/Picture/甜甜花.png new file mode 100644 index 00000000..00135a2b Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/甜甜花.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/电气水晶.png b/repo/js/提瓦特百货商店/assets/Picture/电气水晶.png new file mode 100644 index 00000000..befc4620 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/电气水晶.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/番茄.png b/repo/js/提瓦特百货商店/assets/Picture/番茄.png new file mode 100644 index 00000000..90b9b452 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/番茄.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/白萝卜.png b/repo/js/提瓦特百货商店/assets/Picture/白萝卜.png new file mode 100644 index 00000000..71e17d66 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/白萝卜.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/盐.png b/repo/js/提瓦特百货商店/assets/Picture/盐.png new file mode 100644 index 00000000..556835b3 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/盐.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/石珀.png b/repo/js/提瓦特百货商店/assets/Picture/石珀.png new file mode 100644 index 00000000..db6ec932 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/石珀.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/禽肉.png b/repo/js/提瓦特百货商店/assets/Picture/禽肉.png new file mode 100644 index 00000000..22e5d22b Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/禽肉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/秃秃豆.png b/repo/js/提瓦特百货商店/assets/Picture/秃秃豆.png new file mode 100644 index 00000000..c0992c63 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/秃秃豆.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/稻米.png b/repo/js/提瓦特百货商店/assets/Picture/稻米.png new file mode 100644 index 00000000..d57170bd Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/稻米.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/糖.png b/repo/js/提瓦特百货商店/assets/Picture/糖.png new file mode 100644 index 00000000..0e723a0f Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/糖.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/绝云椒椒.png b/repo/js/提瓦特百货商店/assets/Picture/绝云椒椒.png new file mode 100644 index 00000000..cbd03b55 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/绝云椒椒.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/胡椒.png b/repo/js/提瓦特百货商店/assets/Picture/胡椒.png new file mode 100644 index 00000000..3d138bf7 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/胡椒.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/苹果.png b/repo/js/提瓦特百货商店/assets/Picture/苹果.png new file mode 100644 index 00000000..3c6310f9 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/苹果.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/茶好月圆.png b/repo/js/提瓦特百货商店/assets/Picture/茶好月圆.png new file mode 100644 index 00000000..7716c346 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/茶好月圆.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/茶熏乳鸽.png b/repo/js/提瓦特百货商店/assets/Picture/茶熏乳鸽.png new file mode 100644 index 00000000..b584536d Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/茶熏乳鸽.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/莲蓬.png b/repo/js/提瓦特百货商店/assets/Picture/莲蓬.png new file mode 100644 index 00000000..fa020f76 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/莲蓬.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/萤瓜.png b/repo/js/提瓦特百货商店/assets/Picture/萤瓜.png new file mode 100644 index 00000000..80ddf9ac Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/萤瓜.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/虾仁.png b/repo/js/提瓦特百货商店/assets/Picture/虾仁.png new file mode 100644 index 00000000..606a3826 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/虾仁.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/螃蟹.png b/repo/js/提瓦特百货商店/assets/Picture/螃蟹.png new file mode 100644 index 00000000..740da1ae Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/螃蟹.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/蟹黄.png b/repo/js/提瓦特百货商店/assets/Picture/蟹黄.png new file mode 100644 index 00000000..a5a31da4 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/蟹黄.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/豆腐.png b/repo/js/提瓦特百货商店/assets/Picture/豆腐.png new file mode 100644 index 00000000..fe0a569d Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/豆腐.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/轻策农家菜.png b/repo/js/提瓦特百货商店/assets/Picture/轻策农家菜.png new file mode 100644 index 00000000..af433b2f Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/轻策农家菜.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/野菇鸡肉串.png b/repo/js/提瓦特百货商店/assets/Picture/野菇鸡肉串.png new file mode 100644 index 00000000..b431e8fb Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/野菇鸡肉串.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/霓裳花.png b/repo/js/提瓦特百货商店/assets/Picture/霓裳花.png new file mode 100644 index 00000000..18dc9e58 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/霓裳花.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/面粉.png b/repo/js/提瓦特百货商店/assets/Picture/面粉.png new file mode 100644 index 00000000..6d6d301b Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/面粉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/风车菊.png b/repo/js/提瓦特百货商店/assets/Picture/风车菊.png new file mode 100644 index 00000000..c52ecd36 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/风车菊.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/香嫩椒椒鸡.png b/repo/js/提瓦特百货商店/assets/Picture/香嫩椒椒鸡.png new file mode 100644 index 00000000..cf27c130 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/香嫩椒椒鸡.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/香肠.png b/repo/js/提瓦特百货商店/assets/Picture/香肠.png new file mode 100644 index 00000000..825dd21a Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/香肠.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/香辛料.png b/repo/js/提瓦特百货商店/assets/Picture/香辛料.png new file mode 100644 index 00000000..85deb68b Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/香辛料.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/马尾.png b/repo/js/提瓦特百货商店/assets/Picture/马尾.png new file mode 100644 index 00000000..c7a42760 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/马尾.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/鱼肉.png b/repo/js/提瓦特百货商店/assets/Picture/鱼肉.png new file mode 100644 index 00000000..50acab49 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/鱼肉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/鳗肉.png b/repo/js/提瓦特百货商店/assets/Picture/鳗肉.png new file mode 100644 index 00000000..02315d37 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/鳗肉.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/鸟蛋.png b/repo/js/提瓦特百货商店/assets/Picture/鸟蛋.png new file mode 100644 index 00000000..e9af15d2 Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/鸟蛋.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/鸣草.png b/repo/js/提瓦特百货商店/assets/Picture/鸣草.png new file mode 100644 index 00000000..d33ef56c Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/鸣草.png differ diff --git a/repo/js/提瓦特百货商店/assets/Picture/黄油.png b/repo/js/提瓦特百货商店/assets/Picture/黄油.png new file mode 100644 index 00000000..96d55dce Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/Picture/黄油.png differ diff --git a/repo/js/提瓦特百货商店/assets/已售罄.png b/repo/js/提瓦特百货商店/assets/已售罄.png new file mode 100644 index 00000000..22f39e0b Binary files /dev/null and b/repo/js/提瓦特百货商店/assets/已售罄.png differ diff --git a/repo/js/提瓦特百货商店/assets/滚轮下翻.json b/repo/js/提瓦特百货商店/assets/滚轮下翻.json new file mode 100644 index 00000000..cd0e99ac --- /dev/null +++ b/repo/js/提瓦特百货商店/assets/滚轮下翻.json @@ -0,0 +1,3 @@ +{"macroEvents":[{"type":6,"mouseX":0,"mouseY":-120,"time":0}, +{"type":6,"mouseX":0,"mouseY":0,"time":100}], +"info":{"name":"","description":"","x":0,"y":0,"width":1920,"height":1080,"recordDpi":1}} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/main.js b/repo/js/提瓦特百货商店/main.js new file mode 100644 index 00000000..91b8e915 --- /dev/null +++ b/repo/js/提瓦特百货商店/main.js @@ -0,0 +1,841 @@ +// 定义所有食材及其对应的路径文件和 NPC +// 定义路径常量 +const paths = { + monde: { + grocery: `assets/Pathing/蒙德杂货商人-布兰琪.json`, + restaurant: `assets/Pathing/蒙德餐馆-莎拉.json`, + plantShop: `assets/Pathing/蒙德植物商人-芙萝拉.json`, + meatShop: `assets/Pathing/蒙德肉类商人-杜拉夫.json` + }, + liyue: { + grocery: `assets/Pathing/璃月荣发商铺-东升.json`, + wanmin: `assets/Pathing/璃月万民堂老板-卯师傅.json`, + plantShop: `assets/Pathing/璃月植物类商人-阿桂.json`, + fruitShop: `assets/Pathing/璃月水果和鱼肉-博来.json`, + generalShop: `assets/Pathing/璃月商人-长顺.json`, + fishShop1: `assets/Pathing/璃月鱼贩1-老孙.json`, + fishShop2: `assets/Pathing/璃月鱼贩2-老高.json`, + restaurant: `assets/Pathing/璃月客栈老板娘-菲尔戈黛特.json`, + mill: `assets/Pathing/璃月轻策庄磨坊主-小白.json`, + yilong: `assets/Pathing/璃月遗珑埠百货商人-丰泰.json`, + snackStall: `assets/Pathing/璃月小吃摊摊主-连芳.json` + }, + inazuma: { + grocery: `assets/Pathing/稻妻九十九物店主-葵.json`, + generalShop: `assets/Pathing/稻妻百货商人-葵.json`, + restaurant: `assets/Pathing/稻妻餐馆-志村勘兵卫.json`, + fishShop: `assets/Pathing/稻妻征集店名的店主-山城健太.json`, + haijishop: `assets/Pathing/稻妻海祇岛百货商人-清子.json` + }, + fontaine: { + grocery: `assets/Pathing/枫丹达莫维百货店主-布希柯.json`, + cafe: `assets/Pathing/枫丹咖啡厅露泽店主-阿鲁埃.json` + }, + sumeru: { + cafe: `assets/Pathing/须弥城咖啡馆代理店长-恩忒卡.json`, + fishShop: `assets/Pathing/须弥鱼贩-珀姆.json`, + portFish: `assets/Pathing/须弥奥摩斯港鱼贩-布特罗斯.json`, + villageMerchant: `assets/Pathing/须弥阿如村商人-阿扎莱.json` + } +}; + +// 定义 ingredient 对应路径 +const ingredientPaths = { + "枫达": [paths.fontaine.grocery, paths.fontaine.cafe], + "盐": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop], + "洋葱": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop], + "牛奶": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop, paths.inazuma.haijishop], + "番茄": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop, paths.inazuma.haijishop], + "卷心菜": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop], + "土豆": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.liyue.generalShop, paths.inazuma.generalShop, paths.inazuma.haijishop], + "小麦": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop, paths.inazuma.haijishop], + "胡椒": [paths.monde.grocery, paths.liyue.grocery, paths.inazuma.grocery, paths.fontaine.grocery, paths.inazuma.generalShop], + "稻米": [paths.liyue.grocery, paths.inazuma.grocery, paths.liyue.yilong, paths.inazuma.generalShop], + "虾仁": [paths.liyue.grocery, paths.inazuma.grocery, paths.sumeru.fishShop, paths.sumeru.portFish, paths.liyue.fishShop1, paths.liyue.fishShop2, paths.inazuma.generalShop], + "豆腐": [paths.liyue.grocery, paths.inazuma.grocery, paths.liyue.mill, paths.liyue.yilong, paths.inazuma.generalShop, paths.inazuma.haijishop], + "杏仁": [paths.liyue.grocery, paths.fontaine.grocery, paths.liyue.mill], + "鱼肉": [paths.liyue.wanmin, paths.inazuma.restaurant, paths.sumeru.fishShop, paths.sumeru.portFish, paths.sumeru.villageMerchant, paths.liyue.fruitShop, paths.liyue.fishShop1, paths.liyue.fishShop2], + "螃蟹": [paths.liyue.wanmin, paths.inazuma.restaurant, paths.sumeru.fishShop, paths.sumeru.portFish, paths.liyue.fishShop1, paths.liyue.fishShop2], + "海草": [paths.sumeru.fishShop, paths.sumeru.portFish], + "秃秃豆": [paths.fontaine.grocery, paths.sumeru.villageMerchant], + "咖啡豆": [paths.sumeru.cafe, paths.fontaine.cafe], + "香辛料": [paths.sumeru.villageMerchant], + "发酵果实汁": [paths.fontaine.grocery], + "提瓦特煎蛋": [paths.monde.restaurant], + "野菇鸡肉串": [paths.monde.restaurant, paths.liyue.restaurant, paths.inazuma.restaurant], + "渔人吐司": [paths.monde.restaurant, paths.inazuma.restaurant], + "面粉": [paths.monde.restaurant, paths.inazuma.restaurant], + "奶油": [paths.monde.restaurant], + "熏禽肉": [paths.monde.restaurant], + "黄油": [paths.monde.restaurant, paths.liyue.restaurant], + "火腿": [paths.monde.restaurant], + "糖": [paths.monde.restaurant, paths.liyue.generalShop, paths.inazuma.restaurant], + "蟹黄": [paths.monde.restaurant, paths.liyue.yilong], + "果酱": [paths.monde.restaurant], + "奶酪": [paths.monde.restaurant, paths.liyue.generalShop], + "培根": [paths.monde.restaurant, paths.inazuma.restaurant], + "香肠": [paths.monde.restaurant, paths.liyue.restaurant, paths.inazuma.restaurant], + "甜甜花": [paths.monde.plantShop], + "风车菊": [paths.monde.plantShop], + "塞西莉亚花": [paths.monde.plantShop], + "小灯草": [paths.monde.plantShop], + "嘟嘟莲": [paths.monde.plantShop], + "禽肉": [paths.monde.meatShop], + "鸟蛋": [paths.monde.meatShop], + "兽肉": [paths.monde.meatShop], + "冰雾花花朵": [paths.liyue.plantShop], + "烈焰花花朵": [paths.liyue.plantShop], + "琉璃袋": [paths.liyue.plantShop, paths.liyue.yilong], + "莲蓬": [paths.liyue.plantShop], + "马尾": [paths.liyue.plantShop], + "清心": [paths.liyue.plantShop], + "苹果": [paths.liyue.fruitShop], + "日落果": [paths.liyue.fruitShop], + "星螺": [paths.liyue.fruitShop], + "电气水晶": [paths.liyue.generalShop], + "石珀": [paths.liyue.generalShop, paths.liyue.yilong], + "杏仁豆腐": [paths.liyue.restaurant], + "松茸酿肉卷": [paths.liyue.restaurant], + "香嫩椒椒鸡": [paths.liyue.restaurant], + "山珍热卤面": [paths.liyue.restaurant], + "松茸": [paths.liyue.restaurant], + "霓裳花": [paths.liyue.plantShop, paths.liyue.mill, paths.liyue.yilong], + "琉璃百合": [paths.liyue.mill], + "轻策农家菜": [paths.liyue.mill], + "沉玉仙茗": [paths.liyue.yilong, paths.liyue.snackStall], + "清水玉": [paths.liyue.yilong], + "夜泊石": [paths.liyue.yilong], + "绝云椒椒": [paths.liyue.yilong], + "玉纹茶叶蛋": [paths.liyue.snackStall], + "沉玉茶露": [paths.liyue.snackStall], + "茶熏乳鸽": [paths.liyue.snackStall], + "茶好月圆": [paths.liyue.snackStall], + "鸣草": [paths.inazuma.generalShop], + "堇瓜": [paths.inazuma.restaurant], + "白萝卜": [paths.inazuma.restaurant], + "珊瑚真珠": [paths.inazuma.fishShop], + "鳗肉": [paths.inazuma.fishShop] +}; + + +// 定义所有可能的食材,注意料理名字长度可能超过识图范围 +const ingredients = Object.keys(ingredientPaths); + +// 定义食材名称和图片文件名的映射表 +const ingredientImageMap = Object.fromEntries( + ingredients.map(name => [name, `${name}.png`]) +); + +// 定义替换映射表 +const replacementMap = { + "监": "盐", + "卵": "卯" +}; +// 定义所有NPC名,注意名字长度可能超过识图范围 +// 🎭 NPC 映射 +// ��️ 提取路径对应的NPC姓名(从路径中"-"后的名字提取) +const npcNames = {}; +for (const region in paths) { + const regionPaths = paths[region]; + for (const key in regionPaths) { + const path = regionPaths[key]; + const match = path.match(/-([^\/]+)\.json$/); // 提取 -后姓名 + if (match) { + const name = match[1]; + npcNames[path] = [name]; // 用数组包装(支持后续扩展多个别名) + } + } +} + +// 筛选出用户选择的食材及其对应的路径文件和 NPC +let selectedIngredients = []; // 在函数外部声明一次 +let selectedPaths = new Map(); + +for (let ingredient of ingredients) { + if (settings[ingredient]) { + selectedIngredients.push(ingredient); + ingredientPaths[ingredient].forEach(path => { + if (!selectedPaths.has(path)) { + selectedPaths.set(path, []); + } + selectedPaths.get(path).push(ingredient); + }); + } +} + +if (selectedIngredients.length === 0) { + log.error("未选择任何食材,退出任务"); + throw new Error("未选择任何食材,任务终止"); // 抛出异常以终止任务 +} +// 汇总即将购买的食材信息 +let purchaseSummary = selectedIngredients.join(", "); +log.info(`即将购买: ${purchaseSummary}`); + +//设定时间 +async function settime(time) { + try { + const centerX = 1441; + const centerY = 501; + const radius = 100; + let angle; + angle = (90 + time * 15) % 360; + angle = angle >= 0 ? angle : 360 + angle; + const angle1 = (angle + 90) % 360; + const angle2 = (angle + 180) % 360; + const angle3 = (angle + 270) % 360; + const radians = angle * (Math.PI / 180); + const radians1 = angle1 * (Math.PI / 180); + const radians2 = angle2 * (Math.PI / 180); + const radians3 = angle3 * (Math.PI / 180); + const x = centerX + radius * Math.cos(radians); + const y = centerY + radius * Math.sin(radians); + const x1 = centerX + radius * Math.cos(radians1); + const y1 = centerY + radius * Math.sin(radians1); + const x2 = centerX + radius * Math.cos(radians2); + const y2 = centerY + radius * Math.sin(radians2); + const x3 = centerX + radius * Math.cos(radians3); + const y3 = centerY + radius * Math.sin(radians3); + + await sleep(2000); + await moveMouseSmoothly(centerX, centerY, x1, y1); + await sleep(2000); + await moveMouseSmoothly(centerX, centerY, x2, y2); + await sleep(2000); + await moveMouseSmoothly(centerX, centerY, x3, y3); + await sleep(2000); + await moveMouseSmoothly(centerX, centerY, x, y); + } catch (err) { + log.warn(`设置时间操作失败: ${err}`); + } +} + +//拖动鼠标 +async function moveMouseSmoothly(x1, y1, x2, y2) { + try { + const deltaX = x2 - x1; + const deltaY = y2 - y1; + const steps = Math.max(Math.abs(deltaX), Math.abs(deltaY)); + const stepX = deltaX / steps; + const stepY = deltaY / steps; + await moveMouseTo(x1, y1); + await leftButtonDown(); + for (let i = 1; i <= steps; i++) { + const newX = x1 + stepX * i; + const newY = y1 + stepY * i; + const validX = Math.round(newX); + const validY = Math.round(newY); + await moveMouseTo(validX, validY); + await sleep(10); + } + await leftButtonUp(); + } catch (err) { + log.warn(`鼠标移动失败: ${err}`); + } +} + +// 设置游戏时间的主函数 +async function setGameTime(targetTime) { + try { + log.info(`设置时间到 ${targetTime} 点`); + + // 打开菜单 + await keyPress("Escape"); + await sleep(1000); + + // 点击时间设置按钮 + await click(50, 700); + await sleep(2000); + + // 设置具体时间 + await settime(targetTime); + await sleep(3000); + + // 确认设置 + await click(1500, 1000); + await sleep(20000); + + // 关闭菜单 + await keyPress("Escape"); + await sleep(2000); + await keyPress("Escape"); + await sleep(2000); + + log.info("时间设置完成"); + } catch (err) { + log.warn(`设置游戏时间失败: ${err}`); + } +} + +// 定义一个函数用于模拟按键操作 +async function simulateKeyOperations(key, duration) { + try { + keyDown(key); + await sleep(duration); + keyUp(key); + await sleep(500); // 释放按键后等待 500 毫秒 + } catch (err) { + log.warn(`模拟按键操作失败: ${err}`); + } +} + +// 定义一个函数用于购买食材 +async function purchaseIngredient(ingredient) { + try { + log.info(`购买食材: ${ingredient}`); + // 在购买前进行识别 + let ComfirmRoResult1 = await recognizeImage("assets/Comfirm.png", 1585, 1005, 30, 30, 2000); + let soldOutResult = await recognizeImage("assets/已售罄.png", 1320, 920, 31, 31, 2000); + + if (soldOutResult) { + log.warn(`食材: ${ingredient}已售罄`); + return; + } + + if (ComfirmRoResult1) { + // 模拟购买操作的后续点击 + await click(1600, 1020); + await sleep(1000); // 购买 + } else { + log.warn(`食材: ${ingredient}背包已满`); + return; // 退出操作 + } + + // 在点击选择100个之前进行识别 + let ComfirmRoResult2 = await recognizeImage("assets/Comfirm.png", 995, 766, 30, 30, 2000); + if (ComfirmRoResult2) { + log.info("选择100个的"); + await click(1181, 600); + await sleep(200); // 选择100个 + } else { + log.warn("尝试重新点击购买"); + await click(1600, 1020); + await sleep(1000); // 购买 + return; // 退出操作 + } + + await click(1320, 780); + await sleep(1000); // 最终确认 + await click(1320, 780); + await sleep(1000); // 点击空白 + } catch (err) { + log.warn(`购买食材 ${ingredient} 失败: ${err}`); + } +} + + +// 定义一个通用的图像识别函数 +function recognizeImage(templatePath, xMin, yMin, width, height, timeout = 2000) { + let startTime = Date.now(); + while (Date.now() - startTime < timeout) { + try { + let template = file.ReadImageMatSync(templatePath); + let recognitionObject = RecognitionObject.TemplateMatch(template, xMin, yMin, width, height); + let result = captureGameRegion().find(recognitionObject); + if (result.isExist()) { + return { success: true, x: result.x, y: result.y, width: result.width, height: result.height }; + } + } catch (err) { + log.warn(`识别图像时发生异常: ${err}`); + return null; + } + } + log.warn("图像识别超时"); + return null; +} + +// 定义一个函数用于执行OCR识别 +function performOcr(targetText, xRange, yRange, tolerance, timeout = 2000) { + let startTime = Date.now(); + while (Date.now() - startTime < timeout) { + try { + // 调整区域范围以包含容错区间 + let adjustedXMin = xRange.min - tolerance; + let adjustedXMax = xRange.max + tolerance; + let adjustedYMin = yRange.min - tolerance; + let adjustedYMax = yRange.max + tolerance; + + // 在捕获的区域内进行OCR识别 + let ra = captureGameRegion(); + let resList = ra.findMulti(RecognitionObject.ocr( + adjustedXMin, adjustedYMin, + adjustedXMax - adjustedXMin, adjustedYMax - adjustedYMin + )); + + // 遍历识别结果,检查是否找到目标文本 + for (let i = 0; i < resList.count; i++) { + let res = resList[i]; + let correctedText = res.text; + for (let [wrongChar, correctChar] of Object.entries(replacementMap)) { + correctedText = correctedText.replace(new RegExp(wrongChar, 'g'), correctChar); + } + + if (correctedText.includes(targetText)) { + return { success: true, x: res.x, y: res.y, width: res.width, height: res.height }; + } + } + } catch (err) { + log.info(`OCR识别超时: ${err}`); + return { success: false }; + } + } + log.warn("OCR识别超时"); + return { success: false }; +} + +// 定义一个函数用于识别食材 +async function recognizeIngredient(ingredient) { + try { + let recognized = false; + const clickOffset = 30; // 点击坐标偏移 + + // 尝试 OCR 识别 + let ocrResult = await performOcr(ingredient, { min: 210, max: 390 }, { min: 105, max: 920 }, 10); + if (ocrResult.success) { + log.info(`通过 OCR 识别找到食材: ${ingredient}`); + await click(ocrResult.x, ocrResult.y + clickOffset); + await sleep(1000); + recognized = true; + } else { + // OCR 识别失败,尝试图像识别 + let imagePath = `assets/Picture/${ingredientImageMap[ingredient]}`; + if (!imagePath) { + log.warn(`未找到食材 '${ingredient}' 的图片文件`); + return recognized; + } + let imageResult = recognizeImage(imagePath, 120, 90, 95, 865, 1000); + if (imageResult) { + log.info(`通过图像识别找到食材: ${ingredient}`); + let x = Math.round(imageResult.x); + let y = Math.round(imageResult.y); + await click(x, y); + await sleep(1000); + recognized = true; + } else { + log.warn(`未能识别到食材: ${ingredient}`); + } + } + return recognized; + } catch (err) { + log.warn(`识别食材 ${ingredient} 失败: ${err}`); + return false; + } +} + +// 定义一个函数用于识别并点击用户选择的食材 +async function clickSelectedIngredients(selectedIngredients, filePath, npcNames) { + log.info(`加载路径文件: ${filePath}`); + await pathingScript.runFile(filePath); + await sleep(1000); + + // 识别并交互 NPC + const npcxRange = { min: 1190, max: 1320 }; // npc X轴区间 + const FxRange = { min: 1050, max: 1150 }; // F X轴坐标 + const FyRange = { min: 400, max: 800 }; // F Y轴坐标 + let fDialogueRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/F_Dialogue.png"), FxRange.min, FyRange.min, FxRange.max - FxRange.min, FyRange.max - FyRange.min); + const tolerance = 12; // 容错区间 + const npctolerance = 5; // 容错区间 + + // 检查 F 图标和右边水平对齐的文字 + async function checkNpcAndFAlignment(npcName, fDialogueRo) { + try { + log.info("进入 checkNpcAndFAlignment"); + + // 检查F图标和NPC是否对齐的函数 + async function checkAlignment() { + let ra = captureGameRegion(); + let fRes = ra.find(fDialogueRo); + if (!fRes.isExist()) { + log.info("未找到F图标"); + return false; + } + + let centerYF = fRes.y + fRes.height / 2; + let ocrResult = await performOcr(npcName, npcxRange, { min: fRes.y, max: fRes.y + fRes.height }, tolerance); + if (!ocrResult.success) { + log.info("未找到NPC名称"); + return false; + } + + let centerYnpcName = ocrResult.y + ocrResult.height / 2; + let isAligned = Math.abs(centerYnpcName - centerYF) <= npctolerance; + log.info(`NPC和F图标是否对齐: ${isAligned}`); + return isAligned; + } + + // 执行滚轮下滑和检查的函数 + async function tryScrollAndCheck() { + for (let i = 0; i < 3; i++) { + log.info(`执行第${i + 1}次滚轮下滑`); + await keyMouseScript.runFile(`assets/滚轮下翻.json`); + await sleep(1000); + + if (await checkAlignment()) { + log.info(`在第${i + 1}次滚轮下滑后找到对齐的NPC`); + return true; + } + } + return false; + } + + // 主要逻辑 + // 1. 先检查当前状态 + if (await checkAlignment()) { + log.info("初始状态已对齐"); + return true; + } + + // 2. 尝试3次滚轮下滑 + log.info("开始尝试滚轮下滑"); + if (await tryScrollAndCheck()) { + return true; + } + + // 3. 调整到8点 + log.info("滚轮下滑失败,调整到8点"); + await setGameTime(8); + await sleep(2000); + + // 4. 8点时检查并尝试滚轮下滑 + if (await checkAlignment()) { + log.info("8点时初始状态已对齐"); + return true; + } + if (await tryScrollAndCheck()) { + return true; + } + + // 5. 调整到18点 + log.info("8点尝试失败,调整到18点"); + await setGameTime(18); + await sleep(2000); + + // 6. 18点时检查并尝试滚轮下滑 + if (await checkAlignment()) { + log.info("18点时初始状态已对齐"); + return true; + } + if (await tryScrollAndCheck()) { + return true; + } + + // 7. 如果都失败了,重新加载路径 + log.info("所有尝试都失败,重新加载路径"); + await pathingScript.runFile(filePath); + await sleep(500); + + // 8. 最后再检查一次 + return await checkAlignment(); + } catch (err) { + log.warn(`检查NPC和F对齐失败: ${err}`); + return false; + } + } + + // 执行点击操作 + async function performClickOperations(filePath) { + // 根据NPC执行不同的点击操作 + if (filePath === paths.monde.meatShop) { + log.info("执行杜拉夫的特殊点击操作"); + for (let i = 0; i < 3; i++) { + await click(1300, 580); + await sleep(i < 2 ? 500 : 1000); + } + await click(1320, 780); + await sleep(1000); + + // 检查是否出现购买按钮或已售罄图标 + let buyButtonResult = await recognizeImage("assets/Comfirm.png", 1585, 1005, 31, 31, 2000); + let soldOutResult = await recognizeImage("assets/已售罄.png", 1320, 916, 50, 50, 2000); + + if (buyButtonResult) { + log.info("成功触发购买界面"); + } else if (soldOutResult) { + log.info("检测到已售罄状态"); + } else { + log.warn("杜拉夫操作后未检测到购买按钮或已售罄图标"); + } + + return buyButtonResult || soldOutResult; + } + + // 其他NPC的标准点击操作 + const maxAttempts = 10; + let attempts = 0; + let success = false; + + while (attempts < maxAttempts && !success) { + attempts++; + + // 其他NPC的标准点击操作 + await keyPress("F"); + await sleep(50); + await click(1300, 500); + await sleep(50); + + // 检查是否出现购买按钮或已售罄图标 + let buyButtonResult = await recognizeImage("assets/Comfirm.png", 1585, 1005, 31, 31, 2000); + let soldOutResult = await recognizeImage("assets/已售罄.png", 1320, 916, 50, 50, 2000); + + if (buyButtonResult || soldOutResult) { + if (buyButtonResult) { + log.info("成功触发购买界面"); + } else { + log.info("检测到已售罄状态"); + } + success = true; + break; + } + } + + if (!success) { + log.error(`未能进入商店界面,重试次数已达 ${maxAttempts} 次,返回主界面并继续下一条路径`); + await genshin.returnMainUi(); + return; + } + + return success; + } + + // 执行完整的购买流程 + async function executePurchaseFlow() { + for (const npcName of npcNames) { + log.info(`尝试识别 NPC: ${npcName}`); + let isAligned = await checkNpcAndFAlignment(npcName, fDialogueRo); + let scrollAttempts = 0; + const maxScrollAttempts = 5; + + while (!isAligned && scrollAttempts < maxScrollAttempts) { + await keyMouseScript.runFile(`assets/滚轮下翻.json`); + await sleep(1000); + scrollAttempts++; + if (scrollAttempts >= maxScrollAttempts) { + log.error(`滚轮操作次数已达上限 ${maxScrollAttempts} 次,退出循环`); + break; + } + + let ra = captureGameRegion(); + let fRes = ra.find(fDialogueRo); + if (!fRes.isExist()) { + log.warn("未找到 F 图标"); + continue; + } + + let centerYF = fRes.y + fRes.height / 2; + let ocrResult = await performOcr(npcName, npcxRange, { min: fRes.y, max: fRes.y + fRes.height }, tolerance); + if (!ocrResult.success) { + log.warn(`OCR 识别未找到 NPC: ${npcName}`); + continue; + } + + let centerYnpcName = ocrResult.y + ocrResult.height / 2; + if (Math.abs(centerYnpcName - centerYF) <= npctolerance) { + isAligned = true; + log.info(`NPC '${npcName}' 和 F 图标水平对齐,NPC: ${centerYnpcName}, F 图标: ${centerYF}`); + } else { + log.info(`NPC '${npcName}' 和 F 图标未水平对齐,NPC: ${centerYnpcName}, F 图标: ${centerYF}`); + } + } + + if (isAligned) { + keyPress("F"); + await sleep(2500); + + await performClickOperations(filePath); + let ComfirmRoResult = null; + let C_maxAttempts = 2; + let C_attempts = 0; + + while (!ComfirmRoResult && C_attempts < C_maxAttempts) { + ComfirmRoResult = await recognizeImage("assets/Comfirm.png", 1585, 1005, 31, 31, 2000); + if (ComfirmRoResult) { + log.info("识别到购买按钮,执行食材选择"); + break; + } else { + log.warn("未识别到购买按钮,尝试重新识别"); + } + await sleep(500); + await performClickOperations(filePath); + C_attempts++; + } + + if (!ComfirmRoResult) { + log.warn("未在规定时间内完成对话"); + return; + } + + let purchasedIngredients = new Set(); + let allIngredientsFound = false; + let scrollAttemptsForIngredients = 0; + const maxScrollAttemptsForIngredients = 3; + + while (!allIngredientsFound && scrollAttemptsForIngredients < maxScrollAttemptsForIngredients) { + allIngredientsFound = true; + + for (const ingredient of selectedIngredients) { + if (purchasedIngredients.has(ingredient)) { + log.info(`跳过已购买的食材: ${ingredient}`); + continue; + } + + let recognized = await recognizeIngredient(ingredient); + if (recognized) { + log.info(`识别到 '${ingredient}',执行购买操作`); + await purchaseIngredient(ingredient); + purchasedIngredients.add(ingredient); + } else { + allIngredientsFound = false; + } + } + + if (!allIngredientsFound) { + log.info(`在当前页面未找到所有食材,尝试翻页`); + await PageScroll(1); + await sleep(1000); + scrollAttemptsForIngredients++; + } + } + + if (!allIngredientsFound) { + log.error(`在所有页面中未找到所有食材,跳过该路径`); + } + + log.info("点击退出按钮..."); + await click(1845, 45); + await sleep(2000); + + if (allIngredientsFound) { + log.info("该处所需食材已完成购买!"); + } else { + log.error("未能购买所有食材,部分食材可能未找到或未成功购买。"); + } + + return; + } else { + log.error(`未能找到正确的 NPC '${npcName}' 或未成功交互,跳过该 NPC`); + } + } + log.error("未能找到正确的 NPC 或未成功交互,跳过该路径"); + } + + // 对于老高的商店,执行两遍完整流程 + if (filePath === paths.liyue.fishShop2) { + log.info("执行双重购买流程"); + // 第一遍 + await executePurchaseFlow(); + await sleep(1000); + // 第二遍 + await executePurchaseFlow(); + } else { + // 其他商店正常执行一遍 + await executePurchaseFlow(); + } +} + +// 自动执行划页操作 +async function PageScroll(scrollCount) { + try { + const clickX = 1200; // 假设点击的起始坐标 + const clickY = 900; + const totalDistance = 500; // 假设每次滑动的总距离 + const stepDistance = 15; // 每步移动的距离 + + for (let i = 0; i < scrollCount; ++i) { + log.info(`开始第 ${i + 1} 次滑动`); + + // 如果点击坐标为 (0, 0),则跳过点击 + if (clickX !== 0 || clickY !== 0) { + moveMouseTo(clickX, clickY); // 移动到指定坐标 + await sleep(100); + } + + // 按住鼠标左键 + leftButtonDown(); + + // 将鼠标移动到目标位置,模拟更自然的拖动操作 + const steps = totalDistance / stepDistance; // 分成若干步移动 + + for (let j = 0; j < steps; j++) { + moveMouseBy(0, -stepDistance); // 每次移动 stepDistance 像素 + await sleep(10); // 每次移动后延迟10毫秒 + } + + // 释放鼠标左键 + await sleep(700); + leftButtonUp(); + await sleep(100); + } + } catch (err) { + log.warn(`执行滑动操作失败: ${err}`); + } +} + +// 主函数 +async function AutoPath() { + try { + log.info("开始执行自动寻路任务"); + + // 创建一个Map来存储每个NPC需要购买的所有食材 + let npcIngredientMap = new Map(); + + // 遍历选中的食材,按NPC分组 + for (let [path, ingredients] of selectedPaths) { + if (!npcIngredientMap.has(path)) { + npcIngredientMap.set(path, new Set()); + } + ingredients.forEach(ingredient => { + npcIngredientMap.get(path).add(ingredient); + }); + } + + // 定义区域顺序 + const regionOrder = { + 'monde': 2, // 蒙德 + 'liyue': 3, // 璃月 + 'sumeru': 4, // 须弥 + 'fontaine': 5 // 枫丹 + }; + + // 将Map转换为数组并排序 + let sortedPaths = Array.from(npcIngredientMap.entries()).sort((a, b) => { + // 按照正常区域顺序排序 + const getRegion = (path) => { + for (const region in paths) { + if (Object.values(paths[region]).includes(path)) { + return region; + } + } + return ''; + }; + + const regionA = getRegion(a[0]); + const regionB = getRegion(b[0]); + + return (regionOrder[regionA] || 999) - (regionOrder[regionB] || 999); + }); + + // 按排序后的顺序访问NPC + for (let [path, ingredientSet] of sortedPaths) { + log.info(`访问NPC路径: ${path}`); + log.info(`需要购买的食材: ${Array.from(ingredientSet).join(", ")}`); + + let npcName = npcNames[path]; + // 将Set转换回数组 + await clickSelectedIngredients(Array.from(ingredientSet), path, npcName); + } + } catch (err) { + log.warn(`自动寻路任务失败: ${err}`); + } +} + +// 执行主函数 +(async function () { + try { + setGameMetrics(1920, 1080, 1); + await genshin.returnMainUi(); + + // 执行自动寻路 + await AutoPath(); + } catch (err) { + log.warn(`主函数执行失败: ${err}`); + } +})(); \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/manifest.json b/repo/js/提瓦特百货商店/manifest.json new file mode 100644 index 00000000..c258287e --- /dev/null +++ b/repo/js/提瓦特百货商店/manifest.json @@ -0,0 +1,15 @@ +{ + "manifest_version": 1, + "name": "提瓦特百货商店", + "version": "1.0", + "bgi_version": "0.45.1", + "description": "提瓦特百货商店,带你买遍提瓦特。目前项目正处于开发阶段缺测试开发人手,有意者可加1037185748。感谢芝麻糊、WQ的测试协力", + "authors": [ + { + "name": "小鹰划船不用桨", + "link": "https://github.com/Kotagan" + } + ], + "settings_ui": "settings.json", + "main": "main.js" +} \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/readme.md b/repo/js/提瓦特百货商店/readme.md new file mode 100644 index 00000000..3de229d5 --- /dev/null +++ b/repo/js/提瓦特百货商店/readme.md @@ -0,0 +1,10 @@ +# 提瓦特百货商店 + +本JS基于原OCR买菜的基础上进行重构和开发 +测试中,注意事项不完善请谅解,如有BUG,QQ:522922702,测试开发群1037185748,随时欢迎反馈(加的时候说明来意即可)。 + +感谢芝麻糊,WQ等的测试配合。 + +## 更新日志 + +v1.0:在OCR买菜的基础上增加了时间调节,优化了购买逻辑,完善了蒙德,璃月,稻妻的购买线路 \ No newline at end of file diff --git a/repo/js/提瓦特百货商店/settings.json b/repo/js/提瓦特百货商店/settings.json new file mode 100644 index 00000000..d12a8dba --- /dev/null +++ b/repo/js/提瓦特百货商店/settings.json @@ -0,0 +1,54 @@ +[ + {"name": "枫达", "type": "checkbox", "label": "-----------------\n枫达"}, + {"name": "盐", "type": "checkbox", "label": "-----------------\n盐"}, + {"name": "洋葱", "type": "checkbox", "label": "-----------------\n洋葱"}, + {"name": "牛奶", "type": "checkbox", "label": "-----------------\n牛奶"}, + {"name": "番茄", "type": "checkbox", "label": "-----------------\n番茄"}, + {"name": "卷心菜", "type": "checkbox", "label": "-----------------\n卷心菜"}, + {"name": "土豆", "type": "checkbox", "label": "-----------------\n土豆"}, + {"name": "小麦", "type": "checkbox", "label": "-----------------\n小麦"}, + {"name": "胡椒", "type": "checkbox", "label": "-----------------\n胡椒"}, + {"name": "稻米", "type": "checkbox", "label": "-----------------\n稻米"}, + {"name": "虾仁", "type": "checkbox", "label": "-----------------\n虾仁"}, + {"name": "豆腐", "type": "checkbox", "label": "-----------------\n豆腐"}, + {"name": "杏仁", "type": "checkbox", "label": "-----------------\n杏仁"}, + {"name": "鱼肉", "type": "checkbox", "label": "-----------------\n鱼肉"}, + {"name": "螃蟹", "type": "checkbox", "label": "-----------------\n螃蟹"}, + {"name": "秃秃豆", "type": "checkbox", "label": "-----------------\n秃秃豆"}, + {"name": "咖啡豆", "type": "checkbox", "label": "-----------------\n咖啡豆"}, + {"name": "香辛料", "type": "checkbox", "label": "-----------------\n香辛料"}, + {"name": "发酵果实汁", "type": "checkbox", "label": "-----------------\n发酵果实汁"}, + {"name": "提瓦特煎蛋", "type": "checkbox", "label": "-----------------\n提瓦特煎蛋"}, + {"name": "野菇鸡肉串", "type": "checkbox", "label": "-----------------\n野菇鸡肉串"}, + {"name": "渔人吐司", "type": "checkbox", "label": "-----------------\n渔人吐司"}, + {"name": "面粉", "type": "checkbox", "label": "-----------------\n面粉"}, + {"name": "奶油", "type": "checkbox", "label": "-----------------\n奶油"}, + {"name": "熏禽肉", "type": "checkbox", "label": "-----------------\n熏禽肉"}, + {"name": "黄油", "type": "checkbox", "label": "-----------------\n黄油"}, + {"name": "火腿", "type": "checkbox", "label": "-----------------\n火腿"}, + {"name": "糖", "type": "checkbox", "label": "-----------------\n糖"}, + {"name": "蟹黄", "type": "checkbox", "label": "-----------------\n蟹黄"}, + {"name": "果酱", "type": "checkbox", "label": "-----------------\n果酱"}, + {"name": "奶酪", "type": "checkbox", "label": "-----------------\n奶酪"}, + {"name": "培根", "type": "checkbox", "label": "-----------------\n培根"}, + {"name": "香肠", "type": "checkbox", "label": "-----------------\n香肠"}, + {"name": "甜甜花", "type": "checkbox", "label": "-----------------\n甜甜花"}, + {"name": "风车菊", "type": "checkbox", "label": "-----------------\n风车菊"}, + {"name": "塞西莉亚花", "type": "checkbox", "label": "-----------------\n塞西莉亚花"}, + {"name": "小灯草", "type": "checkbox", "label": "-----------------\n小灯草"}, + {"name": "嘟嘟莲", "type": "checkbox", "label": "-----------------\n嘟嘟莲"}, + {"name": "禽肉", "type": "checkbox", "label": "-----------------\n禽肉"}, + {"name": "鸟蛋", "type": "checkbox", "label": "-----------------\n鸟蛋"}, + {"name": "兽肉", "type": "checkbox", "label": "-----------------\n兽肉"}, + {"name": "冰雾花花朵", "type": "checkbox", "label": "-----------------\n冰雾花花朵"}, + {"name": "烈焰花花朵", "type": "checkbox", "label": "-----------------\n烈焰花花朵"}, + {"name": "琉璃袋", "type": "checkbox", "label": "-----------------\n琉璃袋"}, + {"name": "莲蓬", "type": "checkbox", "label": "-----------------\n莲蓬"}, + {"name": "马尾", "type": "checkbox", "label": "-----------------\n马尾"}, + {"name": "清心", "type": "checkbox", "label": "-----------------\n清心"}, + {"name": "苹果", "type": "checkbox", "label": "-----------------\n苹果"}, + {"name": "日落果", "type": "checkbox", "label": "-----------------\n日落果"}, + {"name": "星螺", "type": "checkbox", "label": "-----------------\n星螺"}, + {"name": "电气水晶", "type": "checkbox", "label": "-----------------\n电气水晶"}, + {"name": "石珀", "type": "checkbox", "label": "-----------------\n石珀"} +]