Compare commits

...

2 commits

Author SHA1 Message Date
f3ca64ba1f 前端添加模拟器相关选项
All checks were successful
ci/woodpecker/push/check_format Pipeline was successful
2024-12-05 16:01:19 +08:00
65bc51cb03 2024-12-05解包资源更新
All checks were successful
ci/woodpecker/push/check_format Pipeline was successful
2024-12-05 14:59:53 +08:00
51 changed files with 510 additions and 975 deletions

@ -1 +1 @@
Subproject commit 9f2ebfc908b66e87bf3af2adaa80a4966e0d54d2
Subproject commit a48ec0c92fafc1d1e52e8aa2448755a14cf94860

@ -1 +1 @@
Subproject commit 76a06bb57ebe505a6181f12e4eb78380d828c03e
Subproject commit c291ad583050f9c9c609167957ecfb451af5a488

@ -1 +1 @@
Subproject commit 35ccf13d86c71d41bd105543d263c0e36ceef68c
Subproject commit eebb5b159141b63664713a3627dc93b15d79f1d5

View file

@ -517,9 +517,10 @@ class Arknights数据处理器:
# j: char_285_medic2
# k: Lancet-2
if filename.startswith(j):
full[y : y + h, x : x + w] = loadimg(
os.path.join(data_path, filename), True
)
img = loadimg(os.path.join(data_path, filename), True)
if img.shape != (h, w):
img = cv2.resize(img, (w, h))
full[y : y + h, x : x + w] = img
cv2.rectangle(mask, mx, my, (255,), -1)
name_list.append(k)
i += 1

View file

@ -504,6 +504,11 @@
"profession": "SPECIAL",
"name": "Crownslayer"
},
"引星棘刺": {
"key": "char_1039_thorn2",
"profession": "SPECIAL",
"name": "Thorns the Lodestar"
},
"归溟幽灵鲨": {
"key": "char_1023_ghost2",
"profession": "SPECIAL",
@ -1039,6 +1044,11 @@
"profession": "CASTER",
"name": "Iris"
},
"特克诺": {
"key": "char_4164_tecno",
"profession": "CASTER",
"name": "Tecno"
},
"特米米": {
"key": "char_411_tomimi",
"profession": "CASTER",
@ -1089,6 +1099,11 @@
"profession": "TANK",
"name": "Blemishine"
},
"瑰盐": {
"key": "char_4163_rosesa",
"profession": "MEDIC",
"name": "Rose Salt"
},
"白金": {
"key": "char_204_platnm",
"profession": "SNIPER",

View file

@ -240,7 +240,7 @@
"EXTERMINATION_AGENT": [
"EXTERMINATION_AGENT",
"EXTERMINATION_AGENT",
"PRTS剿灭代理卡",
"常态事务代理卡",
"NORMAL",
30200
],
@ -3457,6 +3457,20 @@
"MATERIAL",
700158
],
"p_char_4163_rosesa": [
"p_char_4163_rosesa",
"p_char_4163_rosesa",
"瑰盐的信物",
"MATERIAL",
700159
],
"p_char_4164_tecno": [
"p_char_4164_tecno",
"p_char_4164_tecno",
"特克诺的信物",
"MATERIAL",
700160
],
"p_char_103_angel": [
"p_char_103_angel",
"p_char_103_angel",
@ -4171,6 +4185,13 @@
"MATERIAL",
600102
],
"p_char_1039_thorn2": [
"p_char_1039_thorn2",
"p_char_1039_thorn2",
"引星棘刺的信物",
"MATERIAL",
600103
],
"class_p_char_123_fang": [
"class_p_char_123_fang",
"class_p_char_123_fang",

BIN
mower/static/MATERIAL.pkl (Stored with Git LFS)

Binary file not shown.

BIN
mower/static/NORMAL.pkl (Stored with Git LFS)

Binary file not shown.

BIN
mower/static/avatar.pkl (Stored with Git LFS)

Binary file not shown.

BIN
mower/static/avatar_skill/引星棘刺/1.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/avatar_skill/引星棘刺/2.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/avatar_skill/引星棘刺/3.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/avatar_skill/特克诺/1.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/avatar_skill/特克诺/2.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/avatar_skill/瑰盐/1.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/avatar_skill/瑰盐/2.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mower/static/levels.pkl (Stored with Git LFS)

Binary file not shown.

BIN
mower/static/operator_room.model (Stored with Git LFS)

Binary file not shown.

BIN
mower/static/portrait.pkl (Stored with Git LFS)

Binary file not shown.

View file

@ -30,7 +30,7 @@ timestamp: int = round(datetime.now().timestamp() * 1000)
"设置最后更改的时间戳"
def save_conf(update_timestamp: bool = True, push: bool = True):
def save_conf(update_timestamp: bool = True):
if update_timestamp:
global timestamp
timestamp = round(datetime.now().timestamp() * 1000)

View file

@ -1,4 +1,6 @@
import os
import shutil
from pathlib import Path
from mower import __system__
from mower.utils import config
@ -50,7 +52,7 @@ def get_leidian_install_path() -> str:
def get_adb_path(emulator_folder: str):
return emulator_folder + "\\adb.exe"
return emulator_folder + ("\\adb.exe" if __system__ == "windows" else "/adb")
def auto_get_path() -> str:
@ -58,6 +60,14 @@ def auto_get_path() -> str:
config.conf.emulator.emulator_folder = get_mumu12_install_path_from_registry()
elif config.conf.emulator.name == "雷电9":
config.conf.emulator.emulator_folder = get_leidian_install_path()
elif config.conf.emulator.name == "ReDroid":
config.conf.emulator.emulator_folder = str(Path(shutil.which("docker")).parent)
elif config.conf.emulator.name == "Waydroid":
config.conf.emulator.emulator_folder = str(
Path(shutil.which("waydroid")).parent
)
else:
return
config.conf.maa_adb_path = get_adb_path(config.conf.emulator.emulator_folder)
@ -65,13 +75,18 @@ def get_adb_serial() -> str:
if not isinstance(config.conf.emulator.index, (int, str)):
raise TypeError("请填写正确的多开编号")
host = "127.0.0.1"
index = int(config.conf.emulator.index)
try:
index = int(config.conf.emulator.index)
except ValueError:
return
if config.conf.emulator.name == "MuMu12":
port = str(16384 + index * 32)
elif config.conf.emulator.name == "雷电9":
port = str(5555 + index * 2)
elif config.conf.emulator.name == "夜神":
port = str(62025 + index) if index >= 0 else "62001"
else:
return
config.conf.adb = host + ":" + port

View file

@ -349,6 +349,27 @@ def export_json():
return send_file(config.plan_path)
@app.route("/auto-get-path")
def auto_get_path():
from mower.utils.device.emulator.auto_get_path import auto_get_path
auto_get_path()
config.save_conf()
return "OK"
@app.route("/get-adb-serial")
def get_adb_serial():
from mower.utils.device.emulator.auto_get_path import get_adb_serial
try:
get_adb_serial()
config.save_conf()
return "OK"
except Exception:
return "ERROR"
@app.route("/check-maa")
@get_require_token
def get_maa_adb_version():

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
import{s as tn,bY as dn,u as bn,B as le,H as o,as as p,au as z,ar as H,ax as Fe,ay as fe,j as P,aY as se,aC as Ae,b2 as gn,c as ln,A as He,aD as pn,av as W,at as Xe,b0 as rn,b as q,r as B,w as Se,D as en,aG as nn,bi as Zn,b8 as Yn,b4 as Jn,n as mn,bj as Qn,b1 as Be,az as Xn,F as eo,bZ as no,z as oo,bF as an,aI as Ke,aL as E,bg as to,a_ as lo,bT as io,L as ro,bh as ao,v as so,J as co,E as uo,aA as fo,M as ho}from"./_plugin-vue_export-helper.js";import{C as vo,aa as Re,ab as sn,f as xn,ac as bo,ad as go,v as $e,ae as po,af as mo,ag as cn,a1 as xo,z as wo,b as on,F as yo,B as Co,V as ko,h as Ro,i as un,ah as So,e as Fo,r as zo}from"./main.js";import{u as wn}from"./use-locale.js";import{_ as Ye}from"./Tag.js";import{N as Oo}from"./Input.js";import{V as To}from"./VirtualList.js";function fn(e){switch(typeof e){case"string":return e||void 0;case"number":return String(e);default:return}}function Je(e){const t=e.filter(r=>r!==void 0);if(t.length!==0)return t.length===1?t[0]:r=>{e.forEach(s=>{s&&s(r)})}}function yn(e,t){t&&(tn(()=>{const{value:r}=e;r&&dn.registerHandler(r,t)}),bn(()=>{const{value:r}=e;r&&dn.unregisterHandler(r)}))}const tt=le({name:"ArrowDown",render(){return o("svg",{viewBox:"0 0 28 28",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},o("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},o("g",{"fill-rule":"nonzero"},o("path",{d:"M23.7916,15.2664 C24.0788,14.9679 24.0696,14.4931 23.7711,14.206 C23.4726,13.9188 22.9978,13.928 22.7106,14.2265 L14.7511,22.5007 L14.7511,3.74792 C14.7511,3.33371 14.4153,2.99792 14.0011,2.99792 C13.5869,2.99792 13.2511,3.33371 13.2511,3.74793 L13.2511,22.4998 L5.29259,14.2265 C5.00543,13.928 4.53064,13.9188 4.23213,14.206 C3.93361,14.4931 3.9244,14.9679 4.21157,15.2664 L13.2809,24.6944 C13.6743,25.1034 14.3289,25.1034 14.7223,24.6944 L23.7916,15.2664 Z"}))))}}),Mo=le({name:"Checkmark",render(){return o("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},o("g",{fill:"none"},o("path",{d:"M14.046 3.486a.75.75 0 0 1-.032 1.06l-7.93 7.474a.85.85 0 0 1-1.188-.022l-2.68-2.72a.75.75 0 1 1 1.068-1.053l2.234 2.267l7.468-7.038a.75.75 0 0 1 1.06.032z",fill:"currentColor"})))}}),Po=le({name:"Empty",render(){return o("svg",{viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o("path",{d:"M26 7.5C26 11.0899 23.0899 14 19.5 14C15.9101 14 13 11.0899 13 7.5C13 3.91015 15.9101 1 19.5 1C23.0899 1 26 3.91015 26 7.5ZM16.8536 4.14645C16.6583 3.95118 16.3417 3.95118 16.1464 4.14645C15.9512 4.34171 15.9512 4.65829 16.1464 4.85355L18.7929 7.5L16.1464 10.1464C15.9512 10.3417 15.9512 10.6583 16.1464 10.8536C16.3417 11.0488 16.6583 11.0488 16.8536 10.8536L19.5 8.20711L22.1464 10.8536C22.3417 11.0488 22.6583 11.0488 22.8536 10.8536C23.0488 10.6583 23.0488 10.3417 22.8536 10.1464L20.2071 7.5L22.8536 4.85355C23.0488 4.65829 23.0488 4.34171 22.8536 4.14645C22.6583 3.95118 22.3417 3.95118 22.1464 4.14645L19.5 6.79289L16.8536 4.14645Z",fill:"currentColor"}),o("path",{d:"M25 22.75V12.5991C24.5572 13.0765 24.053 13.4961 23.5 13.8454V16H17.5L17.3982 16.0068C17.0322 16.0565 16.75 16.3703 16.75 16.75C16.75 18.2688 15.5188 19.5 14 19.5C12.4812 19.5 11.25 18.2688 11.25 16.75L11.2432 16.6482C11.1935 16.2822 10.8797 16 10.5 16H4.5V7.25C4.5 6.2835 5.2835 5.5 6.25 5.5H12.2696C12.4146 4.97463 12.6153 4.47237 12.865 4H6.25C4.45507 4 3 5.45507 3 7.25V22.75C3 24.5449 4.45507 26 6.25 26H21.75C23.5449 26 25 24.5449 25 22.75ZM4.5 22.75V17.5H9.81597L9.85751 17.7041C10.2905 19.5919 11.9808 21 14 21L14.215 20.9947C16.2095 20.8953 17.842 19.4209 18.184 17.5H23.5V22.75C23.5 23.7165 22.7165 24.5 21.75 24.5H6.25C5.2835 24.5 4.5 23.7165 4.5 22.75Z",fill:"currentColor"}))}}),_o=le({props:{onFocus:Function,onBlur:Function},setup(e){return()=>o("div",{style:"width: 0; height: 0",tabindex:0,onFocus:e.onFocus,onBlur:e.onBlur})}}),Io=p("empty",`
import{s as tn,bY as dn,u as bn,B as le,H as o,as as p,au as z,ar as H,ax as Fe,ay as fe,j as P,aY as se,aC as Ae,b2 as gn,c as ln,A as He,aD as pn,av as W,at as Xe,b0 as rn,b as q,r as B,w as Se,D as en,aG as nn,bi as Zn,b8 as Yn,b4 as Jn,n as mn,bj as Qn,b1 as Be,az as Xn,F as eo,bZ as no,z as oo,bF as an,aI as Ke,aL as E,bg as to,a_ as lo,bT as io,L as ro,bh as ao,v as so,J as co,E as uo,aA as fo,M as ho}from"./_plugin-vue_export-helper.js";import{z as vo,aa as Re,ab as sn,f as xn,ac as bo,ad as go,r as $e,ae as po,af as mo,ag as cn,a1 as xo,y as wo,b as on,E as yo,B as Co,V as ko,h as Ro,i as un,ah as So,e as Fo,q as zo}from"./main.js";import{u as wn}from"./use-locale.js";import{_ as Ye}from"./Tag.js";import{N as Oo}from"./Input.js";import{V as To}from"./VirtualList.js";function fn(e){switch(typeof e){case"string":return e||void 0;case"number":return String(e);default:return}}function Je(e){const t=e.filter(r=>r!==void 0);if(t.length!==0)return t.length===1?t[0]:r=>{e.forEach(s=>{s&&s(r)})}}function yn(e,t){t&&(tn(()=>{const{value:r}=e;r&&dn.registerHandler(r,t)}),bn(()=>{const{value:r}=e;r&&dn.unregisterHandler(r)}))}const tt=le({name:"ArrowDown",render(){return o("svg",{viewBox:"0 0 28 28",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},o("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},o("g",{"fill-rule":"nonzero"},o("path",{d:"M23.7916,15.2664 C24.0788,14.9679 24.0696,14.4931 23.7711,14.206 C23.4726,13.9188 22.9978,13.928 22.7106,14.2265 L14.7511,22.5007 L14.7511,3.74792 C14.7511,3.33371 14.4153,2.99792 14.0011,2.99792 C13.5869,2.99792 13.2511,3.33371 13.2511,3.74793 L13.2511,22.4998 L5.29259,14.2265 C5.00543,13.928 4.53064,13.9188 4.23213,14.206 C3.93361,14.4931 3.9244,14.9679 4.21157,15.2664 L13.2809,24.6944 C13.6743,25.1034 14.3289,25.1034 14.7223,24.6944 L23.7916,15.2664 Z"}))))}}),Mo=le({name:"Checkmark",render(){return o("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},o("g",{fill:"none"},o("path",{d:"M14.046 3.486a.75.75 0 0 1-.032 1.06l-7.93 7.474a.85.85 0 0 1-1.188-.022l-2.68-2.72a.75.75 0 1 1 1.068-1.053l2.234 2.267l7.468-7.038a.75.75 0 0 1 1.06.032z",fill:"currentColor"})))}}),Po=le({name:"Empty",render(){return o("svg",{viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o("path",{d:"M26 7.5C26 11.0899 23.0899 14 19.5 14C15.9101 14 13 11.0899 13 7.5C13 3.91015 15.9101 1 19.5 1C23.0899 1 26 3.91015 26 7.5ZM16.8536 4.14645C16.6583 3.95118 16.3417 3.95118 16.1464 4.14645C15.9512 4.34171 15.9512 4.65829 16.1464 4.85355L18.7929 7.5L16.1464 10.1464C15.9512 10.3417 15.9512 10.6583 16.1464 10.8536C16.3417 11.0488 16.6583 11.0488 16.8536 10.8536L19.5 8.20711L22.1464 10.8536C22.3417 11.0488 22.6583 11.0488 22.8536 10.8536C23.0488 10.6583 23.0488 10.3417 22.8536 10.1464L20.2071 7.5L22.8536 4.85355C23.0488 4.65829 23.0488 4.34171 22.8536 4.14645C22.6583 3.95118 22.3417 3.95118 22.1464 4.14645L19.5 6.79289L16.8536 4.14645Z",fill:"currentColor"}),o("path",{d:"M25 22.75V12.5991C24.5572 13.0765 24.053 13.4961 23.5 13.8454V16H17.5L17.3982 16.0068C17.0322 16.0565 16.75 16.3703 16.75 16.75C16.75 18.2688 15.5188 19.5 14 19.5C12.4812 19.5 11.25 18.2688 11.25 16.75L11.2432 16.6482C11.1935 16.2822 10.8797 16 10.5 16H4.5V7.25C4.5 6.2835 5.2835 5.5 6.25 5.5H12.2696C12.4146 4.97463 12.6153 4.47237 12.865 4H6.25C4.45507 4 3 5.45507 3 7.25V22.75C3 24.5449 4.45507 26 6.25 26H21.75C23.5449 26 25 24.5449 25 22.75ZM4.5 22.75V17.5H9.81597L9.85751 17.7041C10.2905 19.5919 11.9808 21 14 21L14.215 20.9947C16.2095 20.8953 17.842 19.4209 18.184 17.5H23.5V22.75C23.5 23.7165 22.7165 24.5 21.75 24.5H6.25C5.2835 24.5 4.5 23.7165 4.5 22.75Z",fill:"currentColor"}))}}),_o=le({props:{onFocus:Function,onBlur:Function},setup(e){return()=>o("div",{style:"width: 0; height: 0",tabindex:0,onFocus:e.onFocus,onBlur:e.onBlur})}}),Io=p("empty",`
display: flex;
flex-direction: column;
align-items: center;

View file

@ -1 +1 @@
.sss-container[data-v-2dffb781]{display:flex;width:100%;gap:8px}.wrapper[data-v-2dffb781]{white-space:pre-wrap;-webkit-user-select:text;user-select:text}.title[data-v-2dffb781]{font-size:18px;font-weight:500;margin-bottom:6px}p[data-v-d479d5bf]{margin:0 0 10px}.misc-container[data-v-d479d5bf]{display:flex;align-items:center;gap:12px}.header[data-v-d479d5bf]{margin:12px 0}.tasktable[data-v-6e42e723]{margin-top:4px;width:100%;overflow:scroll}.tasktable table[data-v-6e42e723]{border-collapse:collapse;width:100%}.btn-clear[data-v-6e42e723]{margin:4px}@media screen and (max-width: 1399px){.tasktable[data-v-6e42e723]{max-height:300px}.tasktable td[data-v-6e42e723]{width:10.2857142857%}.tasktable td[data-v-6e42e723]:first-child{width:10%}.tasktable td[data-v-6e42e723]:nth-child(2){width:18%}.tasktable thead[data-v-6e42e723]{position:sticky;top:0;background-color:#7ea5b4;z-index:1}}@media screen and (min-width: 1400px){.tasktable td[data-v-6e42e723]{width:10.2857142857%}.tasktable td[data-v-6e42e723]:first-child{width:10%}.tasktable td[data-v-6e42e723]:nth-child(2){width:18%}.tasktable thead[data-v-6e42e723]{background-color:#7ea5b4}}.class1[data-v-6e42e723]{background-color:var(--06f96d6a);text-align:center;vertical-align:middle}.class2[data-v-6e42e723]{background-color:var(--292d8683);text-align:center;vertical-align:middle}.custom-tag[data-v-6e42e723]{width:100%;height:100%;justify-content:space-between}.today[data-v-6e42e723]{font-weight:400;font-size:12px}.activity[data-v-6e42e723]{align-items:center;gap:4px!important}.card-title[data-v-6e42e723]{transition:.3s}.disabled[data-v-6e42e723]{color:var(--6d545694)}.form-item[data-v-6e42e723]{margin:0 0 4px}p[data-v-748f667d]{margin:2px 0}h4[data-v-748f667d]{margin:12px 0 8px}table[data-v-748f667d]{width:100%}td[data-v-748f667d]:nth-child(1){width:80px}.ignore-blacklist[data-v-748f667d]{margin-bottom:10px;display:flex;gap:12px}.h4[data-v-748f667d]{font-size:16px;font-weight:500}.maa-shop[data-v-748f667d]{margin:8px 0}.item[data-v-748f667d]{font-weight:500;font-size:16px}p[data-v-707c6f48]{margin:0 0 8px}h4[data-v-707c6f48]{margin:12px 0 10px}.big-table[data-v-707c6f48]{margin-top:10px;max-width:320px}.big-table th[data-v-707c6f48]{text-align:center}.big-table tr[data-v-707c6f48]{width:70px}.big-table td[data-v-707c6f48]{height:24px}.big-table td[data-v-707c6f48]:nth-child(1){width:70px;text-align:center}.big-table td[data-v-707c6f48]:nth-child(2){width:420px}.final[data-v-707c6f48]{margin:16px 0 0}.item[data-v-e95953da]{font-weight:500;font-size:16px}.n-divider[data-v-e95953da]:not(.n-divider--vertical){margin:6px 0}.subtitle[data-v-31c5d919]{margin:12px 0 6px}.misc-container{margin-top:12px;display:flex;align-items:center;gap:12px}.email-title[data-v-7cbc22ce]{width:100%}.expand[data-v-7cbc22ce]{flex-grow:1}.email-table[data-v-7cbc22ce]{width:100%;margin-bottom:12px}.email-test[data-v-7cbc22ce]{display:flex;align-items:center;gap:16px}.email-mode[data-v-7cbc22ce]{margin-left:20px}.email-label[data-v-7cbc22ce]{width:68px}p[data-v-7cbc22ce]{margin:0 0 10px}.mt-16[data-v-7cbc22ce]{margin-top:16px}.threshold[data-v-08621e4c]{display:flex;align-items:center;gap:14px;width:100%}.mower-basic[data-v-08621e4c]{width:100%}.mower-basic td[data-v-08621e4c]:nth-child(1){width:120px}.mower-basic td[data-v-08621e4c]:nth-child(3){padding-left:6px;width:40px}.riic-conf[data-v-08621e4c]{width:100%}.riic-conf td[data-v-08621e4c]:nth-child(1){width:130px}.riic-conf td[data-v-08621e4c]:nth-child(3){padding-left:12px;width:120px}.coord td[data-v-08621e4c]{width:120px}.coord td[data-v-08621e4c]:nth-child(1),.coord td[data-v-08621e4c]:nth-child(3){width:30px}.coord td[data-v-08621e4c]:nth-child(2){padding-right:30px}.coord-label[data-v-08621e4c]{width:40px;padding-left:8px}p[data-v-08621e4c]{margin:0 0 8px}h4[data-v-08621e4c]{margin:12px 0 10px}.time-table[data-v-08621e4c]{width:100%;margin-bottom:12px}.time-table td[data-v-08621e4c]:nth-child(1){width:40px}.scale[data-v-08621e4c]{width:60px;text-align:right}.scale-apply[data-v-08621e4c]{margin-left:24px}.waiting-table th[data-v-08621e4c],.waiting-table td[data-v-08621e4c]{padding:4px;min-width:70px;width:100px}.waiting-table th[data-v-08621e4c]:first-child,.waiting-table td[data-v-08621e4c]:first-child{width:auto;padding:4px 8px}@media (max-width: 1399px){.grid-two{margin:0 0 -10px;width:100%;max-width:600px}.grid-left{display:grid;row-gap:10px;grid-template-columns:100%}.grid-right{display:grid;row-gap:10px;grid-template-columns:100%;margin-top:10px}}@media (min-width: 1400px){.grid-two{display:grid;grid-template-columns:minmax(0px,1fr) minmax(0px,1fr);align-items:flex-start;gap:5px}.grid-left,.grid-right{display:grid;gap:5px;grid-template-columns:100%;max-width:600px}}.n-divider:not(.n-divider--vertical){margin:14px 0 8px}
.sss-container[data-v-2dffb781]{display:flex;width:100%;gap:8px}.wrapper[data-v-2dffb781]{white-space:pre-wrap;-webkit-user-select:text;user-select:text}.title[data-v-2dffb781]{font-size:18px;font-weight:500;margin-bottom:6px}p[data-v-d479d5bf]{margin:0 0 10px}.misc-container[data-v-d479d5bf]{display:flex;align-items:center;gap:12px}.header[data-v-d479d5bf]{margin:12px 0}.tasktable[data-v-6e42e723]{margin-top:4px;width:100%;overflow:scroll}.tasktable table[data-v-6e42e723]{border-collapse:collapse;width:100%}.btn-clear[data-v-6e42e723]{margin:4px}@media screen and (max-width: 1399px){.tasktable[data-v-6e42e723]{max-height:300px}.tasktable td[data-v-6e42e723]{width:10.2857142857%}.tasktable td[data-v-6e42e723]:first-child{width:10%}.tasktable td[data-v-6e42e723]:nth-child(2){width:18%}.tasktable thead[data-v-6e42e723]{position:sticky;top:0;background-color:#7ea5b4;z-index:1}}@media screen and (min-width: 1400px){.tasktable td[data-v-6e42e723]{width:10.2857142857%}.tasktable td[data-v-6e42e723]:first-child{width:10%}.tasktable td[data-v-6e42e723]:nth-child(2){width:18%}.tasktable thead[data-v-6e42e723]{background-color:#7ea5b4}}.class1[data-v-6e42e723]{background-color:var(--06f96d6a);text-align:center;vertical-align:middle}.class2[data-v-6e42e723]{background-color:var(--292d8683);text-align:center;vertical-align:middle}.custom-tag[data-v-6e42e723]{width:100%;height:100%;justify-content:space-between}.today[data-v-6e42e723]{font-weight:400;font-size:12px}.activity[data-v-6e42e723]{align-items:center;gap:4px!important}.card-title[data-v-6e42e723]{transition:.3s}.disabled[data-v-6e42e723]{color:var(--6d545694)}.form-item[data-v-6e42e723]{margin:0 0 4px}p[data-v-748f667d]{margin:2px 0}h4[data-v-748f667d]{margin:12px 0 8px}table[data-v-748f667d]{width:100%}td[data-v-748f667d]:nth-child(1){width:80px}.ignore-blacklist[data-v-748f667d]{margin-bottom:10px;display:flex;gap:12px}.h4[data-v-748f667d]{font-size:16px;font-weight:500}.maa-shop[data-v-748f667d]{margin:8px 0}.item[data-v-748f667d]{font-weight:500;font-size:16px}p[data-v-707c6f48]{margin:0 0 8px}h4[data-v-707c6f48]{margin:12px 0 10px}.big-table[data-v-707c6f48]{margin-top:10px;max-width:320px}.big-table th[data-v-707c6f48]{text-align:center}.big-table tr[data-v-707c6f48]{width:70px}.big-table td[data-v-707c6f48]{height:24px}.big-table td[data-v-707c6f48]:nth-child(1){width:70px;text-align:center}.big-table td[data-v-707c6f48]:nth-child(2){width:420px}.final[data-v-707c6f48]{margin:16px 0 0}.item[data-v-e95953da]{font-weight:500;font-size:16px}.n-divider[data-v-e95953da]:not(.n-divider--vertical){margin:6px 0}.subtitle[data-v-31c5d919]{margin:12px 0 6px}.misc-container{margin-top:12px;display:flex;align-items:center;gap:12px}.email-title[data-v-7cbc22ce]{width:100%}.expand[data-v-7cbc22ce]{flex-grow:1}.email-table[data-v-7cbc22ce]{width:100%;margin-bottom:12px}.email-test[data-v-7cbc22ce]{display:flex;align-items:center;gap:16px}.email-mode[data-v-7cbc22ce]{margin-left:20px}.email-label[data-v-7cbc22ce]{width:68px}p[data-v-7cbc22ce]{margin:0 0 10px}.mt-16[data-v-7cbc22ce]{margin-top:16px}.threshold[data-v-43df5096]{display:flex;align-items:center;gap:14px;width:100%}.mower-basic[data-v-43df5096]{width:100%}.mower-basic td[data-v-43df5096]:nth-child(1){width:120px}.mower-basic td[data-v-43df5096]:nth-child(3){padding-left:6px;width:40px}.riic-conf[data-v-43df5096]{width:100%}.riic-conf td[data-v-43df5096]:nth-child(1){width:130px}.riic-conf td[data-v-43df5096]:nth-child(3){padding-left:12px;width:120px}.coord td[data-v-43df5096]{width:120px}.coord td[data-v-43df5096]:nth-child(1),.coord td[data-v-43df5096]:nth-child(3){width:30px}.coord td[data-v-43df5096]:nth-child(2){padding-right:30px}.coord-label[data-v-43df5096]{width:40px;padding-left:8px}p[data-v-43df5096]{margin:0 0 8px}h4[data-v-43df5096]{margin:12px 0 10px}.time-table[data-v-43df5096]{width:100%;margin-bottom:12px}.time-table td[data-v-43df5096]:nth-child(1){width:40px}.scale[data-v-43df5096]{width:60px;text-align:right}.scale-apply[data-v-43df5096]{margin-left:24px}.waiting-table th[data-v-43df5096],.waiting-table td[data-v-43df5096]{padding:4px;min-width:70px;width:100px}.waiting-table th[data-v-43df5096]:first-child,.waiting-table td[data-v-43df5096]:first-child{width:auto;padding:4px 8px}@media (max-width: 1399px){.grid-two{margin:0 0 -10px;width:100%;max-width:600px}.grid-left{display:grid;row-gap:10px;grid-template-columns:100%}.grid-right{display:grid;row-gap:10px;grid-template-columns:100%;margin-top:10px}}@media (min-width: 1400px){.grid-two{display:grid;grid-template-columns:minmax(0px,1fr) minmax(0px,1fr);align-items:flex-start;gap:5px}.grid-left,.grid-right{display:grid;gap:5px;grid-template-columns:100%;max-width:600px}}.n-divider:not(.n-divider--vertical){margin:14px 0 8px}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
import{aq as F,ar as P,w as V}from"./main.js";import{as as h,au as f,ar as b,ay as D,B as H,ax as N,b0 as L,j as q,aC as M,H as a,F as E,r as $,s as W,bC as S,bw as l,bv as c,bt as m,k as g,bE as y,bo as R,by as A,bD as T,b3 as G,bu as B}from"./_plugin-vue_export-helper.js";import{a as J}from"./headers.js";import{b as K,_ as Q}from"./Grid.js";import{_ as U}from"./Divider.js";import{_ as X}from"./Avatar.js";import"./get-slot.js";import"./utils.js";import"./Tag.js";const Y=h("thing",`
import{aq as F,ar as P,v as V}from"./main.js";import{as as h,au as f,ar as b,ay as D,B as H,ax as N,b0 as L,j as q,aC as M,H as a,F as E,r as $,s as W,bC as S,bw as l,bv as c,bt as m,k as g,bE as y,bo as R,by as A,bD as T,b3 as G,bu as B}from"./_plugin-vue_export-helper.js";import{a as J}from"./headers.js";import{b as K,_ as Q}from"./Grid.js";import{_ as U}from"./Divider.js";import{_ as X}from"./Avatar.js";import"./get-slot.js";import"./utils.js";import"./Tag.js";const Y=h("thing",`
display: flex;
transition: color .3s var(--n-bezier);
font-size: var(--n-font-size);

View file

@ -1,4 +1,4 @@
import{as as w,ar as d,av as c,ay as l,B as z,ax as $,j as f,aY as n,aC as T,H}from"./_plugin-vue_export-helper.js";import{E as B}from"./main.js";const R=w("h",`
import{as as w,ar as d,av as c,ay as l,B as z,ax as $,j as f,aY as n,aC as T,H}from"./_plugin-vue_export-helper.js";import{D as B}from"./main.js";const R=w("h",`
font-size: var(--n-font-size);
font-weight: var(--n-font-weight);
margin: var(--n-margin);

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
var _r=Object.defineProperty;var Fr=(t,n,e)=>n in t?_r(t,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[n]=e;var h=(t,n,e)=>Fr(t,typeof n!="symbol"?n+"":n,e);import{B as le,H as u,ai as Rr,bH as Vr,z as En,c as bt,j as F,r as te,b3 as De,b8 as at,ar as V,as as K,av as se,au as Ye,at as An,ay as fe,ax as Je,bF as $n,w as lt,b as Be,aI as Xt,n as ut,D as zn,aC as dt,J as Yr,b2 as ke,aD as Hr,E as Sr,aL as Z,M as Br,ap as Un,an as Ln,aO as qn,aV as Wn,bN as Er,b0 as vt,b4 as ft,bM as dn,bR as Nt,t as _t,L as Ar,N as $r,aY as ct,bS as zr,bj as fn,C as Ur,A as Pe,aj as Lr,aG as mn,v as hn,bL as gn,a_ as qr,bT as Wr}from"./_plugin-vue_export-helper.js";import{n as k,p as Te,P as et,Q as jr,f as Qr,b as qt,R as Gr,o as Xr,B as Zr,V as Kr,h as Jr,i as ea,r as pn,v as ta,T as na,A as Wt,U as ra,X as aa,Y as oa}from"./main.js";import{e as jn,u as Zt}from"./use-locale.js";import{F as ia,A as sa}from"./Select.js";import{_ as Ze}from"./Input.js";import{_ as la}from"./Scrollbar.js";import{g as ua}from"./get-slot.js";import{m as ca}from"./index.js";import{_ as Qn}from"./Avatar.js";import{_ as da}from"./Tag.js";const fa=le({name:"ArrowUp",render(){return u("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20"},u("g",{fill:"none"},u("path",{d:"M3.13 9.163a.5.5 0 1 0 .74.674L9.5 3.67V17.5a.5.5 0 0 0 1 0V3.672l5.63 6.165a.5.5 0 0 0 .738-.674l-6.315-6.916a.746.746 0 0 0-.632-.24a.746.746 0 0 0-.476.24L3.131 9.163z",fill:"currentColor"})))}}),Gn=le({name:"Remove",render(){return u("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u("line",{x1:"400",y1:"256",x2:"112",y2:"256",style:`
var _r=Object.defineProperty;var Fr=(t,n,e)=>n in t?_r(t,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[n]=e;var h=(t,n,e)=>Fr(t,typeof n!="symbol"?n+"":n,e);import{B as le,H as u,ai as Rr,bH as Vr,z as En,c as bt,j as F,r as te,b3 as De,b8 as at,ar as V,as as K,av as se,au as Ye,at as An,ay as fe,ax as Je,bF as $n,w as lt,b as Be,aI as Xt,n as ut,D as zn,aC as dt,J as Yr,b2 as ke,aD as Hr,E as Sr,aL as Z,M as Br,ap as Un,an as Ln,aO as qn,aV as Wn,bN as Er,b0 as vt,b4 as ft,bM as dn,bR as Nt,t as _t,L as Ar,N as $r,aY as ct,bS as zr,bj as fn,C as Ur,A as Pe,aj as Lr,aG as mn,v as hn,bL as gn,a_ as qr,bT as Wr}from"./_plugin-vue_export-helper.js";import{m as k,o as Te,P as et,Q as jr,f as Qr,b as qt,R as Gr,n as Xr,B as Zr,V as Kr,h as Jr,i as ea,q as pn,r as ta,T as na,A as Wt,U as ra,X as aa,Y as oa}from"./main.js";import{e as jn,u as Zt}from"./use-locale.js";import{F as ia,A as sa}from"./Select.js";import{_ as Ze}from"./Input.js";import{_ as la}from"./Scrollbar.js";import{g as ua}from"./get-slot.js";import{m as ca}from"./index.js";import{_ as Qn}from"./Avatar.js";import{_ as da}from"./Tag.js";const fa=le({name:"ArrowUp",render(){return u("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20"},u("g",{fill:"none"},u("path",{d:"M3.13 9.163a.5.5 0 1 0 .74.674L9.5 3.67V17.5a.5.5 0 0 0 1 0V3.672l5.63 6.165a.5.5 0 0 0 .738-.674l-6.315-6.916a.746.746 0 0 0-.632-.24a.746.746 0 0 0-.476.24L3.131 9.163z",fill:"currentColor"})))}}),Gn=le({name:"Remove",render(){return u("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},u("line",{x1:"400",y1:"256",x2:"112",y2:"256",style:`
fill: none;
stroke: currentColor;
stroke-linecap: round;

View file

@ -1,4 +1,4 @@
var Ml=Object.defineProperty;var Ol=(i,t,e)=>t in i?Ml(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var O=(i,t,e)=>Ol(i,typeof t!="symbol"?t+"":t,e);import{B as ko,bn as So,H as zn,c3 as Tl,r as Dl,s as Cl,bc as Il,w as El,t as Vn,n as Al,bR as Mo}from"./_plugin-vue_export-helper.js";import{ar as Rl,w as Pl}from"./main.js";/*!
var Ml=Object.defineProperty;var Ol=(i,t,e)=>t in i?Ml(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var O=(i,t,e)=>Ol(i,typeof t!="symbol"?t+"":t,e);import{B as ko,bn as So,H as zn,c3 as Tl,r as Dl,s as Cl,bc as Il,w as El,t as Vn,n as Al,bR as Mo}from"./_plugin-vue_export-helper.js";import{ar as Rl,v as Pl}from"./main.js";/*!
* @kurkle/color v0.3.2
* https://github.com/kurkle/color#readme
* (c) 2023 Jukka Kurkela

View file

@ -1,4 +1,4 @@
import{_ as s_}from"./HelpText.js";import{B as l_,bn as Ys,c as ho,f as u_,j as We,q as f_,w as co,az as og,s as sg,u as h_,H as c_,i as v_,bo as de,n as d_,br as p_,r as oi,bC as g_,by as Jt,k as y_,bw as en,bv as si,bu as xa,bx as wa,F as m_,D as $h,bt as rn}from"./_plugin-vue_export-helper.js";import{ar as __,w as qh,a as S_,s as b_}from"./main.js";import{_ as x_}from"./Alert.js";import{b as w_,_ as T_}from"./Grid.js";import"./get-slot.js";/*! *****************************************************************************
import{_ as s_}from"./HelpText.js";import{B as l_,bn as Ys,c as ho,f as u_,j as We,q as f_,w as co,az as og,s as sg,u as h_,H as c_,i as v_,bo as de,n as d_,br as p_,r as oi,bC as g_,by as Jt,k as y_,bw as en,bv as si,bu as xa,bx as wa,F as m_,D as $h,bt as rn}from"./_plugin-vue_export-helper.js";import{ar as __,v as qh,a as S_,s as b_}from"./main.js";import{_ as x_}from"./Alert.js";import{b as w_,_ as T_}from"./Grid.js";import"./get-slot.js";/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any

BIN
ui/public/avatar/引星棘刺.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/avatar/特克诺.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/avatar/瑰盐.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/building_skill/bskill_man_spd&trade1.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/building_skill/bskill_tra_limit&trade2.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/building_skill/bskill_ws_Crystalline.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/building_skill/bskill_ws_evolve_cost4.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/depot/常态事务代理卡.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/depot/引星棘刺的信物.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/depot/特克诺的信物.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/depot/瑰盐的信物.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
ui/public/depot/盐鳞咸鳞汁.webp (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -70,9 +70,9 @@ async function select_maa_adb_path() {
const screencap_options = computed(() => {
const result = [
{ label: 'ADB+Gzip(无损压缩,兼容性好,速度慢)', value: 'adb' },
{ label: 'DroidCast(有损压缩,速度较快)', value: 'droidcast' },
{ label: 'scrcpy(视频流,特殊)', value: 'scrcpy' },
{ label: 'ADB+Gzip(主动截图,无损压缩,兼容性好,速度慢)', value: 'adb' },
{ label: 'DroidCast(主动截图,有损压缩,速度较快)', value: 'droidcast' },
{ label: 'scrcpy(被动截图,有损压缩,视频流,特殊)', value: 'scrcpy' },
{ label: '自定义(以下命令需要向STDOUT打印截图文件)', value: 'diy' }
]
if (conf.value.emulator.name == 'MuMu12') {
@ -81,6 +81,22 @@ const screencap_options = computed(() => {
return result
})
const touch_options = computed(() => {
const result = [{ label: 'scrcpy', value: 'scrcpy' }]
if (conf.value.emulator.name == 'MuMu12') {
result.push({ label: 'MuMu模拟器12触控API', value: 'mumuipc' })
}
return result
})
const app_control_options = computed(() => {
const result = [{ label: 'adb', value: 'adb' }]
if (conf.value.emulator.name == 'MuMu12') {
result.push({ label: 'MuMu模拟器12应用管理器', value: 'mumumanager' })
}
return result
})
const tested = ref(false)
const image = ref('')
const elapsed = ref(0)
@ -128,6 +144,28 @@ const screenshot_type = computed(() => {
return 'error'
}
})
const auto_fill_enable = computed(() => {
return ['夜神', 'MuMu12', '雷电9', 'ReDroid', 'Waydroid'].includes(conf.value.emulator.name)
})
const auto_fill_animation = ref(false)
async function auto_fill() {
auto_fill_animation.value = true
const [r1, r2] = await Promise.all([
axios.get(`${import.meta.env.VITE_HTTP_URL}/auto-get-path`),
axios.get(`${import.meta.env.VITE_HTTP_URL}/get-adb-serial`)
])
auto_fill_animation.value = false
if (r2.data != 'OK') {
message.error('请填写正确的多开编号!')
} else {
message.success('自动填写成功!')
}
}
const message = useMessage()
</script>
<template>
@ -144,6 +182,25 @@ const screenshot_type = computed(() => {
<n-form-item label="模拟器">
<n-select v-model:value="conf.emulator.name" :options="emulator_types" />
</n-form-item>
<n-form-item v-if="conf.emulator.name">
<template #label>
<span>多开编号</span>
<help-text>
<div>MuMu模拟器12的多开器中第一个实例锁形图标的序号为0</div>
<div>夜神模拟器单开请填写-1</div>
<div>其它模拟器请填写多开器中的序号</div>
</help-text>
</template>
<n-input v-model:value="conf.emulator.index" />
<n-button
class="dialog-btn"
v-if="auto_fill_enable"
@click="auto_fill"
:loading="auto_fill_animation"
>
自动填写设置
</n-button>
</n-form-item>
<n-form-item v-if="conf.emulator.name">
<template #label>
<span>模拟器文件夹</span>
@ -159,15 +216,6 @@ const screenshot_type = computed(() => {
/>
<n-button @click="select_emulator_folder" class="dialog-btn">...</n-button>
</n-form-item>
<n-form-item v-if="conf.emulator.name">
<template #label>
<span>多开编号</span>
<help-text>
<div>除夜神单开选择-1以外其他的按照改模拟器多开器中的序号</div>
</help-text>
</template>
<n-input v-model:value="conf.emulator.index" />
</n-form-item>
<n-form-item label="模拟器启动时间" v-if="conf.emulator.name">
<n-input-number v-model:value="conf.emulator.wait_time">
<template #suffix></template>
@ -236,6 +284,12 @@ const screenshot_type = computed(() => {
>
在MuMu模拟器12上使用DroidCast截图方式需关闭后台保活或换用ADB+Gzip截图方式
</n-alert>
<n-form-item label="触控方案">
<n-select v-model:value="conf.control_strategy" :options="touch_options" />
</n-form-item>
<n-form-item label="应用控制方案">
<n-select v-model:value="conf.app_control_strategy" :options="app_control_options" />
</n-form-item>
<n-form-item label="旋转截图" v-if="conf.screencap_strategy == 'droidcast'">
<n-radio-group v-model:value="conf.droidcast.rotate">
<n-flex>
@ -291,16 +345,10 @@ const screenshot_type = computed(() => {
<n-form-item label="任务结束">
<n-select v-model:value="conf.strategy_when_idle" :options="stop_options" />
</n-form-item>
<n-form-item
:show-label="false"
v-if="conf.emulator.name == 'MuMu12' && conf.strategy_when_idle == 'close_emulator'"
>
<n-checkbox v-model:checked="conf.fix_mumu12_adb_disconnect">
关闭MuMu模拟器12时结束adb进程
<help-text>
<div>运行命令<code>taskkill /f /t /im adb.exe</code></div>
<div>使用MuMu模拟器12时若遇到adb断连问题可尝试开启此选项</div>
</help-text>
<n-form-item :show-label="false">
<n-checkbox v-model:checked="conf.kill_server_when_idle">
<span>任务结束时关闭ADB Server</span>
<help-text>建议开启多开不受影响</help-text>
</n-checkbox>
</n-form-item>
</n-form>

View file

@ -1,4 +1,109 @@
[
{
"key": 354,
"name": "瑰盐",
"span": 2,
"child_skill": [
{
"skill_key": 0,
"skill_level": 0,
"phase_level": "精0 1级",
"skillname": "钱不我待",
"buffer": false,
"buffer_des": [],
"des": "进驻贸易站时,当前贸易站每级<@cc.vup>+1</>个订单上限",
"roomType": "贸易站",
"buffCategory": "OUTPUT",
"skillIcon": "bskill_tra_limit&trade2",
"buffColor": "#0075a9",
"textColor": "#ffffff"
},
{
"skill_key": 1,
"skill_level": 0,
"phase_level": "精2 1级",
"skillname": "订单分发·β",
"buffer": false,
"buffer_des": [],
"des": "进驻贸易站时,订单获取效率<@cc.vup>+30%</>",
"roomType": "贸易站",
"buffCategory": "OUTPUT",
"skillIcon": "bskill_tra_spd2",
"buffColor": "#0075a9",
"textColor": "#ffffff"
}
]
},
{
"key": 353,
"name": "特克诺",
"span": 2,
"child_skill": [
{
"skill_key": 0,
"skill_level": 0,
"phase_level": "精0 1级",
"skillname": "熟极而流",
"buffer": false,
"buffer_des": [],
"des": "进驻加工站加工<@cc.kw>晶体类材料</>时,全部心情消耗<@cc.vup>-1</>",
"roomType": "加工站",
"buffCategory": "FUNCTION",
"skillIcon": "bskill_ws_evolve_cost4",
"buffColor": "#e3eb00",
"textColor": "#333333"
},
{
"skill_key": 1,
"skill_level": 0,
"phase_level": "精2 1级",
"skillname": "DIY·晶体",
"buffer": false,
"buffer_des": [],
"des": "进驻加工站加工<@cc.kw>晶体</>类材料时,副产品的产出概率提升<@cc.vup>80%</>",
"roomType": "加工站",
"buffCategory": "FUNCTION",
"skillIcon": "bskill_ws_Crystalline",
"buffColor": "#e3eb00",
"textColor": "#333333"
}
]
},
{
"key": 352,
"name": "引星棘刺",
"span": 2,
"child_skill": [
{
"skill_key": 0,
"skill_level": 0,
"phase_level": "精0 1级",
"skillname": "金属工艺·α",
"buffer": false,
"buffer_des": [],
"des": "进驻制造站时,<@cc.kw>贵金属</>类配方的生产力<@cc.vup>+30%</>",
"roomType": "制造站",
"buffCategory": "OUTPUT",
"skillIcon": "bskill_man_gold1",
"buffColor": "#ffd800",
"textColor": "#333333"
},
{
"skill_key": 1,
"skill_level": 0,
"phase_level": "精2 1级",
"skillname": "原质塑金副产物",
"buffer": false,
"buffer_des": [],
"des": "进驻制造站时,每个<@cc.kw>贸易站</>为当前制造站<@cc.kw>贵金属</>类配方的生产力<@cc.vup>+3%</>",
"roomType": "制造站",
"buffCategory": "OUTPUT",
"skillIcon": "bskill_man_spd&trade1",
"buffColor": "#ffd800",
"textColor": "#333333"
}
]
},
{
"key": 351,
"name": "云迹",

File diff suppressed because it is too large Load diff