mirror of
https://github.com/BTMuli/TeyvatGuide.git
synced 2025-12-13 09:28:14 +08:00
fix(achievements):图片全用上了(
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
|
||||
import achievements from "./achievements.json";
|
||||
import achievementSeries from "./achievementSeries.json";
|
||||
import nameCard from "./nameCard.json";
|
||||
import nameCards from "./nameCards.json";
|
||||
import { Achievement, AchievementSeries } from "../../interface/Achievements";
|
||||
import { NameCard } from "../../interface/NameCard";
|
||||
import { Map } from "../../interface/Base";
|
||||
@@ -22,13 +22,13 @@ export const AppDataList = [
|
||||
data: achievementSeries as AchievementSeries[],
|
||||
},
|
||||
{
|
||||
name: "nameCard.json",
|
||||
data: nameCard as unknown as Map<NameCard>,
|
||||
name: "nameCards.json",
|
||||
data: nameCards as unknown as Map<NameCard>,
|
||||
},
|
||||
];
|
||||
|
||||
export const AppData = {
|
||||
achievements: achievements as Achievement[],
|
||||
achievementSeries: achievementSeries as AchievementSeries[],
|
||||
nameCard: nameCard as unknown as Map<NameCard>,
|
||||
nameCards: nameCards as unknown as Map<NameCard>,
|
||||
};
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
"id": 1,
|
||||
"order": 3,
|
||||
"name": "尘世巡游·第一辑",
|
||||
"card": "成就·游遍",
|
||||
"icon": "/source/achievementSeries/1.webp",
|
||||
"achievements": [80001, 80002, 80003, 80004, 80005, 80006],
|
||||
"total_count": 6,
|
||||
@@ -58,6 +59,7 @@
|
||||
"id": 2,
|
||||
"order": 6,
|
||||
"name": "冒险手艺",
|
||||
"card": "成就·殊技",
|
||||
"icon": "/source/achievementSeries/2.webp",
|
||||
"achievements": [80007, 80008, 80009, 80010, 80011, 80012, 80013],
|
||||
"total_count": 7,
|
||||
@@ -67,6 +69,7 @@
|
||||
"id": 3,
|
||||
"order": 7,
|
||||
"name": "英雄之旅",
|
||||
"card": "成就·侠行",
|
||||
"icon": "/source/achievementSeries/3.webp",
|
||||
"achievements": [
|
||||
80014, 80015, 80016, 80017, 80018, 80019, 80020, 80021, 80022, 80023, 80024, 80025, 80026,
|
||||
@@ -79,6 +82,7 @@
|
||||
"id": 4,
|
||||
"order": 8,
|
||||
"name": "蒙德·风与牧歌的城邦",
|
||||
"card": "蒙德·风吟",
|
||||
"icon": "/source/achievementSeries/4.webp",
|
||||
"achievements": [
|
||||
80030, 80031, 80032, 80033, 80034, 80035, 80036, 80037, 80038, 80039, 80040, 80041, 80042
|
||||
@@ -90,6 +94,7 @@
|
||||
"id": 5,
|
||||
"order": 9,
|
||||
"name": "璃月·岩与契约的海港",
|
||||
"card": "璃月·岩寂",
|
||||
"icon": "/source/achievementSeries/5.webp",
|
||||
"achievements": [
|
||||
80043, 80044, 80045, 80046, 80047, 80048, 80049, 80050, 80051, 80052, 80053, 80054, 80055
|
||||
@@ -101,6 +106,7 @@
|
||||
"id": 6,
|
||||
"order": 10,
|
||||
"name": "元素专家·第一辑",
|
||||
"card": "成就·虹色",
|
||||
"icon": "/source/achievementSeries/6.webp",
|
||||
"achievements": [
|
||||
82019, 82020, 82021, 82022, 82023, 82024, 82025, 82026, 82027, 82028, 82029, 82030, 82031,
|
||||
@@ -113,6 +119,7 @@
|
||||
"id": 7,
|
||||
"order": 12,
|
||||
"name": "神射手",
|
||||
"card": "成就·强弓",
|
||||
"icon": "/source/achievementSeries/7.webp",
|
||||
"achievements": [82001, 82002, 82003],
|
||||
"total_count": 3,
|
||||
@@ -122,6 +129,7 @@
|
||||
"id": 8,
|
||||
"order": 13,
|
||||
"name": "挑战者·第一辑",
|
||||
"card": "成就·挑战",
|
||||
"icon": "/source/achievementSeries/8.webp",
|
||||
"achievements": [82004, 82005, 82006, 82007],
|
||||
"total_count": 4,
|
||||
@@ -131,6 +139,7 @@
|
||||
"id": 9,
|
||||
"order": 20,
|
||||
"name": "秘境与深境螺旋·第一辑",
|
||||
"card": "成就·深秘",
|
||||
"icon": "/source/achievementSeries/9.webp",
|
||||
"achievements": [82044, 82045, 82046, 82047, 82048, 82049, 82050, 82051],
|
||||
"total_count": 8,
|
||||
@@ -140,6 +149,7 @@
|
||||
"id": 10,
|
||||
"order": 21,
|
||||
"name": "Olah!第一辑",
|
||||
"card": "成就·山民",
|
||||
"icon": "/source/achievementSeries/10.webp",
|
||||
"achievements": [84501, 84502],
|
||||
"total_count": 2,
|
||||
@@ -149,6 +159,7 @@
|
||||
"id": 11,
|
||||
"order": 22,
|
||||
"name": "至冬国不相信眼泪·第一辑",
|
||||
"card": "成就·雪乡",
|
||||
"icon": "/source/achievementSeries/11.webp",
|
||||
"achievements": [84503, 84504],
|
||||
"total_count": 2,
|
||||
@@ -158,6 +169,7 @@
|
||||
"id": 12,
|
||||
"order": 23,
|
||||
"name": "岩港往事·第一辑",
|
||||
"card": "成就·合扇",
|
||||
"icon": "/source/achievementSeries/12.webp",
|
||||
"achievements": [84505, 84506, 84507],
|
||||
"total_count": 3,
|
||||
@@ -167,6 +179,7 @@
|
||||
"id": 13,
|
||||
"order": 24,
|
||||
"name": "异世相逢·第一辑",
|
||||
"card": "成就·相逢",
|
||||
"icon": "/source/achievementSeries/13.webp",
|
||||
"achievements": [
|
||||
86001, 86002, 86003, 86004, 86005, 86006, 86007, 86008, 86009, 86010, 86011, 86012, 86013
|
||||
@@ -178,6 +191,7 @@
|
||||
"id": 14,
|
||||
"order": 14,
|
||||
"name": "挑战者·第二辑",
|
||||
"card": "成就·挑战·其二",
|
||||
"icon": "/source/achievementSeries/14.webp",
|
||||
"achievements": [82053, 82054, 82055, 82056, 82057, 82058, 82059, 82060, 82061, 82062],
|
||||
"total_count": 10,
|
||||
@@ -187,6 +201,7 @@
|
||||
"id": 15,
|
||||
"order": 15,
|
||||
"name": "挑战者·第三辑",
|
||||
"card": "成就·挑战·其三",
|
||||
"icon": "/source/achievementSeries/15.webp",
|
||||
"achievements": [82066, 82067, 82068, 82069, 82070, 82071, 82072, 82073],
|
||||
"total_count": 8,
|
||||
@@ -196,6 +211,7 @@
|
||||
"id": 16,
|
||||
"order": 27,
|
||||
"name": "雪山上的来客",
|
||||
"card": "成就·雪峰",
|
||||
"icon": "/source/achievementSeries/16.webp",
|
||||
"achievements": [
|
||||
80056, 80057, 80058, 80059, 80060, 80061, 80062, 80063, 80064, 80065, 80066, 80067, 80068
|
||||
@@ -221,6 +237,7 @@
|
||||
"id": 18,
|
||||
"order": 28,
|
||||
"name": "世外洞天·第一辑",
|
||||
"card": "成就·壶歌",
|
||||
"icon": "/source/achievementSeries/18.webp",
|
||||
"achievements": [
|
||||
81049, 81050, 81051, 81052, 81053, 81054, 81055, 81056, 81057, 81058, 81059, 81060, 81061,
|
||||
@@ -233,6 +250,7 @@
|
||||
"id": 19,
|
||||
"order": 29,
|
||||
"name": "世外洞天·第二辑",
|
||||
"card": "成就·旅居",
|
||||
"icon": "/source/achievementSeries/19.webp",
|
||||
"achievements": [81079, 81080, 81081, 81082, 81083, 81084, 81085],
|
||||
"total_count": 7,
|
||||
@@ -242,6 +260,7 @@
|
||||
"id": 20,
|
||||
"order": 16,
|
||||
"name": "挑战者·第四辑",
|
||||
"card": "成就·石龙",
|
||||
"icon": "/source/achievementSeries/20.webp",
|
||||
"achievements": [82091, 82092, 82093, 82094, 82095, 82096, 82097, 82098, 82109],
|
||||
"total_count": 9,
|
||||
@@ -251,6 +270,7 @@
|
||||
"id": 21,
|
||||
"order": 25,
|
||||
"name": "异世相逢·第二辑",
|
||||
"card": "成就·门扉",
|
||||
"icon": "/source/achievementSeries/21.webp",
|
||||
"achievements": [86021, 86015, 86016, 86017, 86018, 86019, 86020],
|
||||
"total_count": 7,
|
||||
@@ -260,6 +280,7 @@
|
||||
"id": 22,
|
||||
"order": 4,
|
||||
"name": "尘世巡游·第二辑",
|
||||
"card": "成就·遍历",
|
||||
"icon": "/source/achievementSeries/22.webp",
|
||||
"achievements": [80069, 80070, 80071, 80072, 80073],
|
||||
"total_count": 5,
|
||||
@@ -269,6 +290,7 @@
|
||||
"id": 23,
|
||||
"order": 30,
|
||||
"name": "世外洞天·第三辑",
|
||||
"card": "成就·繁花",
|
||||
"icon": "/source/achievementSeries/23.webp",
|
||||
"achievements": [81086, 81087, 81088, 81089, 81090, 81091, 81092, 81093, 81094, 81095],
|
||||
"total_count": 10,
|
||||
@@ -278,6 +300,7 @@
|
||||
"id": 24,
|
||||
"order": 31,
|
||||
"name": "稻妻·雷与永恒的群岛·其之一",
|
||||
"card": "稻妻·九条之纹",
|
||||
"icon": "/source/achievementSeries/24.webp",
|
||||
"achievements": [
|
||||
80074, 80075, 80076, 80077, 80078, 80079, 80080, 80081, 80082, 80083, 80084, 80085, 80086,
|
||||
@@ -290,6 +313,7 @@
|
||||
"id": 25,
|
||||
"order": 34,
|
||||
"name": "提瓦特钓鱼指南·第一辑",
|
||||
"card": "成就·敲针",
|
||||
"icon": "/source/achievementSeries/25.webp",
|
||||
"achievements": [
|
||||
81131, 81132, 81133, 81134, 81135, 81136, 81137, 81138, 81139, 81140, 81143, 81144
|
||||
@@ -301,6 +325,7 @@
|
||||
"id": 26,
|
||||
"order": 32,
|
||||
"name": "稻妻·雷与永恒的群岛·其之二",
|
||||
"card": "稻妻·珊瑚宫之纹",
|
||||
"icon": "/source/achievementSeries/26.webp",
|
||||
"achievements": [
|
||||
80096, 80097, 80098, 80099, 80100, 80101, 80102, 80105, 80106, 80107, 80110, 80111, 80112,
|
||||
@@ -313,6 +338,7 @@
|
||||
"id": 27,
|
||||
"order": 33,
|
||||
"name": "雾海纪行",
|
||||
"card": "稻妻·鹫羽",
|
||||
"icon": "/source/achievementSeries/27.webp",
|
||||
"achievements": [
|
||||
80113, 80114, 80115, 80116, 80119, 80120, 80121, 80122, 80123, 80124, 80125, 80126
|
||||
@@ -324,6 +350,7 @@
|
||||
"id": 28,
|
||||
"order": 35,
|
||||
"name": "白昼之光",
|
||||
"card": "稻妻·常世",
|
||||
"icon": "/source/achievementSeries/28.webp",
|
||||
"achievements": [
|
||||
80130, 80131, 80132, 80133, 80134, 80135, 80136, 80137, 80138, 80139, 80140, 80141
|
||||
@@ -335,6 +362,7 @@
|
||||
"id": 29,
|
||||
"order": 17,
|
||||
"name": "挑战者·第五辑",
|
||||
"card": "成就·雷音",
|
||||
"icon": "/source/achievementSeries/29.webp",
|
||||
"achievements": [82115, 82116, 82117, 82118, 82119, 82120, 82126, 82128],
|
||||
"total_count": 8,
|
||||
@@ -344,6 +372,7 @@
|
||||
"id": 30,
|
||||
"order": 36,
|
||||
"name": "岩窟流明",
|
||||
"card": "成就·层岩",
|
||||
"icon": "/source/achievementSeries/30.webp",
|
||||
"achievements": [
|
||||
80145, 80146, 80147, 80148, 80149, 80150, 80151, 80152, 80153, 80154, 80155, 80156, 80157,
|
||||
@@ -356,6 +385,7 @@
|
||||
"id": 31,
|
||||
"order": 37,
|
||||
"name": "须弥·玄识深藏的雨林",
|
||||
"card": "须弥·瑶林",
|
||||
"icon": "/source/achievementSeries/31.webp",
|
||||
"achievements": [
|
||||
80160, 80161, 80162, 80163, 80164, 80165, 80166, 80167, 80168, 80169, 80170, 80171, 80172,
|
||||
@@ -368,6 +398,7 @@
|
||||
"id": 32,
|
||||
"order": 5,
|
||||
"name": "尘世巡游·第三辑",
|
||||
"card": "成就·漫行",
|
||||
"icon": "/source/achievementSeries/32.webp",
|
||||
"achievements": [80175, 80176, 80177, 80178],
|
||||
"total_count": 4,
|
||||
@@ -377,6 +408,7 @@
|
||||
"id": 33,
|
||||
"order": 26,
|
||||
"name": "异世相逢·第三辑",
|
||||
"card": "成就·逢缘",
|
||||
"icon": "/source/achievementSeries/33.webp",
|
||||
"achievements": [86022, 86023, 86024, 86025, 86026, 86027, 86028, 86029],
|
||||
"total_count": 8,
|
||||
@@ -386,6 +418,7 @@
|
||||
"id": 34,
|
||||
"order": 18,
|
||||
"name": "挑战者·第六辑",
|
||||
"card": "成就·镜梦",
|
||||
"icon": "/source/achievementSeries/34.webp",
|
||||
"achievements": [82134, 82135, 82136, 82137, 82138, 82139, 82140, 82141],
|
||||
"total_count": 8,
|
||||
@@ -395,6 +428,7 @@
|
||||
"id": 35,
|
||||
"order": 38,
|
||||
"name": "须弥·饰金砂原·其之一",
|
||||
"card": "须弥·踏沙",
|
||||
"icon": "/source/achievementSeries/35.webp",
|
||||
"achievements": [
|
||||
80179, 80180, 80181, 80182, 80183, 80184, 80185, 80186, 80187, 80188, 80189, 80190, 80191
|
||||
@@ -406,6 +440,7 @@
|
||||
"id": 36,
|
||||
"order": 11,
|
||||
"name": "元素专家·第二辑",
|
||||
"card": "成就·七芒",
|
||||
"icon": "/source/achievementSeries/36.webp",
|
||||
"achievements": [82146, 82147, 82148, 82149, 82150, 82151, 82159],
|
||||
"total_count": 7,
|
||||
@@ -415,6 +450,7 @@
|
||||
"id": 37,
|
||||
"order": 40,
|
||||
"name": "七圣召唤",
|
||||
"card": "成就·七圣",
|
||||
"icon": "/source/achievementSeries/37.webp",
|
||||
"achievements": [
|
||||
80192, 80193, 80197, 80198, 80199, 80203, 80204, 80205, 80206, 80207, 80208, 80209, 80210,
|
||||
@@ -427,6 +463,7 @@
|
||||
"id": 38,
|
||||
"order": 39,
|
||||
"name": "须弥·饰金砂原·其之二",
|
||||
"card": "须弥·砂岚",
|
||||
"icon": "/source/achievementSeries/38.webp",
|
||||
"achievements": [
|
||||
80224, 80225, 80226, 80228, 80229, 80230, 80231, 80232, 80233, 80234, 80235, 80236, 80227
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
<v-col class="left-wrap">
|
||||
<v-card
|
||||
class="left-list"
|
||||
v-for="series in seriesList"
|
||||
@click="selectSeries(series.id)"
|
||||
v-for="(series, index) in seriesList"
|
||||
@click="selectSeries(index)"
|
||||
style="margin-bottom: 10px"
|
||||
>
|
||||
<v-list>
|
||||
@@ -41,9 +41,31 @@
|
||||
<v-col cols="9" class="right-wrap">
|
||||
<div class="right-list">
|
||||
<v-card
|
||||
v-for="achievement in selectedSeries === -1
|
||||
v-show="selectedIndex !== -1 && selectedSeries !== 0 && selectedSeries !== 17"
|
||||
@click="openImg()"
|
||||
>
|
||||
<v-list
|
||||
:style="{
|
||||
backgroundImage: 'url(' + getCardInfo.bg || null + ')',
|
||||
backgroundPosition: 'right',
|
||||
backgroundSize: 'auto 100%',
|
||||
backgroundRepeat: 'no-repeat',
|
||||
}"
|
||||
>
|
||||
<v-list-item>
|
||||
<template v-slot:prepend>
|
||||
<v-img width="80px" style="margin-right: 10px" :src="getCardInfo.icon" />
|
||||
</template>
|
||||
<v-list-item-title>{{ getCardInfo.name }}</v-list-item-title>
|
||||
<v-list-item-subtitle>{{ getCardInfo.description }}</v-list-item-subtitle>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-card>
|
||||
<v-divider></v-divider>
|
||||
<v-card
|
||||
v-for="achievement in selectedIndex === -1
|
||||
? achievementsList
|
||||
: selectedAchievement[selectedSeries]"
|
||||
: selectedAchievement[selectedIndex]"
|
||||
:key="achievement.id"
|
||||
style="margin-bottom: 10px"
|
||||
>
|
||||
@@ -76,7 +98,7 @@
|
||||
|
||||
<script lang="ts" setup>
|
||||
// Node
|
||||
import { dialog, fs } from "@tauri-apps/api";
|
||||
import { dialog, fs, window as TauriWindow } from "@tauri-apps/api";
|
||||
import { onMounted, ref } from "vue";
|
||||
// Store
|
||||
import useAppStore from "../store/modules/app";
|
||||
@@ -87,6 +109,7 @@ import {
|
||||
AchievementMap as TGAchievementMap,
|
||||
SeriesMap as TGSeriesMap,
|
||||
} from "../interface/Achievements";
|
||||
import { NameCard } from "../interface/NameCard";
|
||||
import { Map } from "../interface/Base";
|
||||
// Plugins
|
||||
import UIAF_Oper from "../plugins/UIAF";
|
||||
@@ -101,8 +124,11 @@ const achievementsStore = useAchievementsStore();
|
||||
const title = ref("");
|
||||
const seriesList = ref({} as Map<TGSeriesMap>);
|
||||
const achievementsList = ref({} as Map<TGAchievementMap>);
|
||||
const selectedIndex = ref(-1);
|
||||
const selectedSeries = ref(-1);
|
||||
const selectedAchievement = ref({} as Map<Array<TGAchievementMap>>);
|
||||
const CardsInfo = ref([] as NameCard[]);
|
||||
const getCardInfo = ref({} as NameCard);
|
||||
|
||||
onMounted(() => {
|
||||
loadData();
|
||||
@@ -116,11 +142,11 @@ async function loadData() {
|
||||
const mergeSeriesMap: TGMap<TGSeriesMap> = new TGMap<TGSeriesMap>(
|
||||
JSON.parse(await fs.readTextFile(appStore.mergePath.achievementSeries))
|
||||
);
|
||||
CardsInfo.value = JSON.parse(await fs.readTextFile(appStore.appPath.nameCards))["1"];
|
||||
// 按照 order 排序
|
||||
seriesList.value = mergeSeriesMap.sort((a, b) => a.order - b.order).getMap();
|
||||
achievementsList.value = mergeAchievementMap.getMap();
|
||||
selectedAchievement.value = transGroup(mergeSeriesMap, mergeAchievementMap);
|
||||
achievementsStore.flushData(mergeSeriesMap);
|
||||
title.value = await getTitle();
|
||||
}
|
||||
// 将所有成就分组
|
||||
@@ -135,8 +161,47 @@ function transGroup(seriesMap: TGMap<TGSeriesMap>, achievementsMap: TGMap<TGAchi
|
||||
return transList;
|
||||
}
|
||||
// 渲染选中的成就系列
|
||||
function selectSeries(series_id: number) {
|
||||
selectedSeries.value = series_id;
|
||||
function selectSeries(index: number) {
|
||||
selectedIndex.value = index;
|
||||
selectedSeries.value = seriesList.value[index].id;
|
||||
if (selectedSeries.value !== 0 && selectedSeries.value !== 17) {
|
||||
getCardInfo.value = CardsInfo.value.find(card => card.name === seriesList.value[index].card)!;
|
||||
} else {
|
||||
getCardInfo.value = {} as NameCard;
|
||||
}
|
||||
}
|
||||
// 打开图片
|
||||
function openImg() {
|
||||
// 获取窗口宽度
|
||||
const width = window.screen.width;
|
||||
// 获取窗口高度
|
||||
const height = window.screen.height;
|
||||
// 计算窗口位置
|
||||
const left = width / 2 - 480;
|
||||
const top = height / 2 - 360;
|
||||
if (TauriWindow.WebviewWindow.getByLabel("nameCard")) {
|
||||
new TauriWindow.WindowManager("nameCard").close().then(() => {
|
||||
new TauriWindow.WebviewWindow("nameCard", {
|
||||
height: 400,
|
||||
width: 840,
|
||||
x: left,
|
||||
y: top,
|
||||
resizable: false,
|
||||
url: getCardInfo.value.profile,
|
||||
title: getCardInfo.value.name,
|
||||
});
|
||||
});
|
||||
} else {
|
||||
new TauriWindow.WebviewWindow("nameCard", {
|
||||
height: 400,
|
||||
width: 840,
|
||||
x: left,
|
||||
y: top,
|
||||
resizable: false,
|
||||
url: getCardInfo.value.profile,
|
||||
title: getCardInfo.value.name,
|
||||
});
|
||||
}
|
||||
}
|
||||
// 获取标题
|
||||
async function getTitle() {
|
||||
@@ -218,6 +283,7 @@ async function importJson() {
|
||||
);
|
||||
// 刷新数据
|
||||
await loadData();
|
||||
await achievementsStore.flushData(mergeSeriesMap);
|
||||
}
|
||||
}
|
||||
// 导出
|
||||
|
||||
@@ -60,7 +60,8 @@ async function parseAchievement() {
|
||||
id: hutaoGoalItem.Id,
|
||||
order: hutaoGoalItem.Order,
|
||||
name: hutaoGoalItem.Name,
|
||||
card: hutaoGoalItem?.FinishReward?.ID,
|
||||
version: "",
|
||||
card: undefined,
|
||||
icon: `/source/achievementSeries/${hutaoGoalItem.Id}.webp`,
|
||||
};
|
||||
achievementSeries.push(achievementSeriesItem);
|
||||
@@ -155,6 +156,7 @@ async function mergeAchievement() {
|
||||
id: oriSeriesItem.id,
|
||||
order: oriSeriesItem.order,
|
||||
name: oriSeriesItem.name,
|
||||
card: oriSeriesItem.card,
|
||||
icon: oriSeriesItem.icon,
|
||||
achievements: [],
|
||||
total_count: 0,
|
||||
|
||||
@@ -36,6 +36,7 @@ const useAppStore = defineStore({
|
||||
appPath: {
|
||||
achievements: `${appDataDir}\\achievements.json`,
|
||||
achievementSeries: `${appDataDir}\\achievementSeries.json`,
|
||||
nameCards: `${appDataDir}\\nameCards.json`,
|
||||
},
|
||||
// 用户数据路径
|
||||
userPath: {
|
||||
@@ -60,18 +61,6 @@ const useAppStore = defineStore({
|
||||
this.loading = false;
|
||||
// 初始化侧边栏设置
|
||||
this.sidebar = true;
|
||||
// 初始化数据路径
|
||||
this.dataPath = {
|
||||
app: appDataDir,
|
||||
user: userDataDir,
|
||||
merge: mergeDataDir,
|
||||
dev: devDataDir,
|
||||
};
|
||||
// 初始化应用数据路径
|
||||
this.appPath = {
|
||||
achievements: `${appDataDir}\\achievements.json`,
|
||||
achievementSeries: `${appDataDir}\\achievementSeries.json`,
|
||||
};
|
||||
// 初始化用户数据路径
|
||||
this.userPath = {
|
||||
achievements: `${userDataDir}\\achievements.json`,
|
||||
|
||||
Reference in New Issue
Block a user