mirror of
https://github.com/earthjasonlin/zzz-signal-search-export.git
synced 2026-04-04 08:40:08 +08:00
Compare commits
4 Commits
5605b3f6fc
...
v1.1.18
| Author | SHA1 | Date | |
|---|---|---|---|
|
fd2d0d1c9a
|
|||
|
750c75ab50
|
|||
|
|
21b014afe6 | ||
|
0b72649ccf
|
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "zzz-signal-search-export",
|
"name": "zzz-signal-search-export",
|
||||||
"version": "1.1.16",
|
"version": "1.1.18",
|
||||||
"autoUpdateActive": true,
|
"autoUpdateActive": true,
|
||||||
"autoUpdateFrom": "1.1.0",
|
"autoUpdateFrom": "1.1.0",
|
||||||
"main": "./dist/electron/main/main.js",
|
"main": "./dist/electron/main/main.js",
|
||||||
|
|||||||
@@ -51,7 +51,7 @@
|
|||||||
"ui.setting.logTypeHint": "Choose which server generated logs to be used first when acquiring URL from game logs",
|
"ui.setting.logTypeHint": "Choose which server generated logs to be used first when acquiring URL from game logs",
|
||||||
"ui.setting.dataManagerHint": "Unnecessary data can be deleted",
|
"ui.setting.dataManagerHint": "Unnecessary data can be deleted",
|
||||||
"ui.setting.autoUpdate": "Auto update",
|
"ui.setting.autoUpdate": "Auto update",
|
||||||
"ui.setting.hideNovice": "Hide Starter Warp",
|
"ui.setting.hideStandard": "Hide Standard Banner",
|
||||||
"ui.setting.proxyMode": "Proxy mode",
|
"ui.setting.proxyMode": "Proxy mode",
|
||||||
"ui.setting.proxyModeHint": "When we fail to get the URL from system logs, use the system proxy",
|
"ui.setting.proxyModeHint": "When we fail to get the URL from system logs, use the system proxy",
|
||||||
"ui.setting.fetchFullHistory": "Get complete data",
|
"ui.setting.fetchFullHistory": "Get complete data",
|
||||||
|
|||||||
@@ -51,6 +51,7 @@
|
|||||||
"ui.setting.logTypeHint": "使用游戏日志获取URL时,优先选择哪种服务器生成的日志文件。",
|
"ui.setting.logTypeHint": "使用游戏日志获取URL时,优先选择哪种服务器生成的日志文件。",
|
||||||
"ui.setting.dataManagerHint": "可以删除不需要的数据。",
|
"ui.setting.dataManagerHint": "可以删除不需要的数据。",
|
||||||
"ui.setting.autoUpdate": "自动更新",
|
"ui.setting.autoUpdate": "自动更新",
|
||||||
|
"ui.setting.hideStandard": "隐藏常驻池",
|
||||||
"ui.setting.proxyMode": "代理模式",
|
"ui.setting.proxyMode": "代理模式",
|
||||||
"ui.setting.proxyModeHint": "通过设置系统代理来获取URL,无法从日志中获取到有效的URL时才会启动代理服务器。",
|
"ui.setting.proxyModeHint": "通过设置系统代理来获取URL,无法从日志中获取到有效的URL时才会启动代理服务器。",
|
||||||
"ui.setting.fetchFullHistory": "获取完整数据",
|
"ui.setting.fetchFullHistory": "获取完整数据",
|
||||||
|
|||||||
@@ -50,6 +50,7 @@
|
|||||||
"ui.setting.logTypeHint": "使用遊戲日誌獲取URL時,優先選擇哪種服務器生成的日誌文件。",
|
"ui.setting.logTypeHint": "使用遊戲日誌獲取URL時,優先選擇哪種服務器生成的日誌文件。",
|
||||||
"ui.setting.dataManagerHint": "可以刪除不需要的數據。",
|
"ui.setting.dataManagerHint": "可以刪除不需要的數據。",
|
||||||
"ui.setting.autoUpdate": "自動更新",
|
"ui.setting.autoUpdate": "自動更新",
|
||||||
|
"ui.setting.hideStandard": "隱藏常駐池",
|
||||||
"ui.setting.proxyMode": "代理模式",
|
"ui.setting.proxyMode": "代理模式",
|
||||||
"ui.setting.proxyModeHint": "通過設置系統代理來獲取URL,無法從日誌中獲取到有效的URL時才會啟動代理服務器。",
|
"ui.setting.proxyModeHint": "通過設置系統代理來獲取URL,無法從日誌中獲取到有效的URL時才會啟動代理服務器。",
|
||||||
"ui.setting.fetchFullHistory": "獲取完整數據",
|
"ui.setting.fetchFullHistory": "獲取完整數據",
|
||||||
|
|||||||
6617
src/idJson.json
6617
src/idJson.json
File diff suppressed because it is too large
Load Diff
@@ -9,7 +9,7 @@ const config = {
|
|||||||
proxyMode: false,
|
proxyMode: false,
|
||||||
autoUpdate: true,
|
autoUpdate: true,
|
||||||
fetchFullHistory: false,
|
fetchFullHistory: false,
|
||||||
hideNovice: false
|
hideStandard: false
|
||||||
}
|
}
|
||||||
|
|
||||||
const getLocalConfig = async () => {
|
const getLocalConfig = async () => {
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ const { mergeData } = require('./utils/mergeData')
|
|||||||
const gachaTypeRaw = require('../gachaType.json')
|
const gachaTypeRaw = require('../gachaType.json')
|
||||||
|
|
||||||
const dataMap = new Map()
|
const dataMap = new Map()
|
||||||
const order = ['2', '3', '1', '5']
|
|
||||||
let apiDomain = 'https://public-operation-nap.mihoyo.com'
|
let apiDomain = 'https://public-operation-nap.mihoyo.com'
|
||||||
|
|
||||||
const saveData = async (data, url) => {
|
const saveData = async (data, url) => {
|
||||||
|
|||||||
@@ -139,7 +139,7 @@
|
|||||||
class="gap-4 grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 2xl:grid-cols-4"
|
class="gap-4 grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 2xl:grid-cols-4"
|
||||||
>
|
>
|
||||||
<div class="mb-4" v-for="(item, i) of detail" :key="i">
|
<div class="mb-4" v-for="(item, i) of detail" :key="i">
|
||||||
<div :class="{ hidden: state.config.hideNovice && item[0] === '2' }">
|
<div :class="{ hidden: state.config.hideStandard && item[0] === '1' }">
|
||||||
<p class="text-center text-gray-600 my-2">
|
<p class="text-center text-gray-600 my-2">
|
||||||
{{ typeMap.get(item[0]) }}
|
{{ typeMap.get(item[0]) }}
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -29,6 +29,12 @@
|
|||||||
v-model="settingForm.autoUpdate">
|
v-model="settingForm.autoUpdate">
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item :label="text.hideStandard">
|
||||||
|
<el-switch
|
||||||
|
@change="saveSetting"
|
||||||
|
v-model="settingForm.hideStandard">
|
||||||
|
</el-switch>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item :label="text.fetchFullHistory">
|
<el-form-item :label="text.fetchFullHistory">
|
||||||
<el-switch
|
<el-switch
|
||||||
@change="saveSetting"
|
@change="saveSetting"
|
||||||
@@ -103,6 +109,7 @@ const settingForm = reactive({
|
|||||||
proxyMode: true,
|
proxyMode: true,
|
||||||
autoUpdate: true,
|
autoUpdate: true,
|
||||||
fetchFullHistory: false,
|
fetchFullHistory: false,
|
||||||
|
hideStandard: true
|
||||||
})
|
})
|
||||||
|
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
@@ -115,7 +122,7 @@ const text = computed(() => props.i18n.ui.setting)
|
|||||||
const about = computed(() => props.i18n.ui.about)
|
const about = computed(() => props.i18n.ui.about)
|
||||||
|
|
||||||
const saveSetting = async () => {
|
const saveSetting = async () => {
|
||||||
const keys = ['lang', 'logType', 'proxyMode', 'autoUpdate', 'fetchFullHistory']
|
const keys = ['lang', 'logType', 'proxyMode', 'autoUpdate', 'fetchFullHistory', 'hideStandard']
|
||||||
for (let key of keys) {
|
for (let key of keys) {
|
||||||
await ipcRenderer.invoke('SAVE_CONFIG', [key, settingForm[key]])
|
await ipcRenderer.invoke('SAVE_CONFIG', [key, settingForm[key]])
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,9 +8,13 @@ const itemCount = (map, name) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const order = ['2', '3', '5', '102', '103', '1']
|
||||||
|
|
||||||
const gachaDetail = (data) => {
|
const gachaDetail = (data) => {
|
||||||
const detailMap = new Map()
|
const detailMap = new Map()
|
||||||
for (let [key, value] of data) {
|
for (let key of order) {
|
||||||
|
if (!data.has(key)) continue
|
||||||
|
let value = data.get(key)
|
||||||
let detail = {
|
let detail = {
|
||||||
count2: 0, count3: 0, count4: 0,
|
count2: 0, count3: 0, count4: 0,
|
||||||
count2w: 0, count3w: 0, count4w: 0, count3c: 0, count4c: 0, count3b: 0, count4b: 0,
|
count2w: 0, count3w: 0, count4w: 0, count3c: 0, count4c: 0, count3b: 0, count4b: 0,
|
||||||
|
|||||||
@@ -10,11 +10,11 @@ cc = OpenCC("s2t")
|
|||||||
|
|
||||||
# 语言映射配置
|
# 语言映射配置
|
||||||
language_map = {
|
language_map = {
|
||||||
"zh-cn": "CHS",
|
"zh-cn": "zh",
|
||||||
"zh-tw": "CHS", # 简体转繁体
|
"zh-tw": "zh", # 简体转繁体
|
||||||
"en-us": "EN",
|
"en-us": "en",
|
||||||
"ja-jp": "JA",
|
"ja-jp": "ja",
|
||||||
"ko-kr": "KO",
|
"ko-kr": "ko",
|
||||||
}
|
}
|
||||||
|
|
||||||
# 类型映射配置
|
# 类型映射配置
|
||||||
@@ -53,7 +53,7 @@ def transform_data(data, item_type):
|
|||||||
transformed = {lang: {} for lang in language_map.keys()}
|
transformed = {lang: {} for lang in language_map.keys()}
|
||||||
for id_, item in data.items():
|
for id_, item in data.items():
|
||||||
for lang, key in language_map.items():
|
for lang, key in language_map.items():
|
||||||
name = item[key] if lang != "zh-tw" else cc.convert(item["CHS"])
|
name = item[key] if lang != "zh-tw" else cc.convert(item["zh"])
|
||||||
transformed[lang][id_] = {
|
transformed[lang][id_] = {
|
||||||
"name": name,
|
"name": name,
|
||||||
"item_type": type_map[item_type][lang],
|
"item_type": type_map[item_type][lang],
|
||||||
@@ -64,15 +64,15 @@ def transform_data(data, item_type):
|
|||||||
|
|
||||||
def main():
|
def main():
|
||||||
try:
|
try:
|
||||||
version_url = "https://api.hakush.in/zzz/new.json"
|
version_url = "https://static.nanoka.cc/manifest.json"
|
||||||
version_data = fetch_json(version_url)
|
version_data = fetch_json(version_url)
|
||||||
|
|
||||||
latest_version = ".".join(version_data["version"].split(".")[:2]) + ".0"
|
latest_version = version_data['zzz']['live']
|
||||||
print(f"Latest version: {latest_version}")
|
print(f"Latest version: {latest_version}")
|
||||||
|
|
||||||
weapon_url = f"https://api.hakush.in/zzz/{latest_version}/weapon.json"
|
weapon_url = f"https://static.nanoka.cc/zzz/{latest_version}/weapon.json"
|
||||||
character_url = f"https://api.hakush.in/zzz/{latest_version}/character.json"
|
character_url = f"https://static.nanoka.cc/zzz/{latest_version}/character.json"
|
||||||
bangboo_url = f"https://api.hakush.in/zzz/{latest_version}/bangboo.json"
|
bangboo_url = f"https://static.nanoka.cc/zzz/{latest_version}/bangboo.json"
|
||||||
|
|
||||||
weapon_data = fetch_json(weapon_url)
|
weapon_data = fetch_json(weapon_url)
|
||||||
print("Fetched", len(weapon_data), "weapons")
|
print("Fetched", len(weapon_data), "weapons")
|
||||||
|
|||||||
Reference in New Issue
Block a user