Compare commits
189 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1025e11a70 | ||
|
|
75fb5c241a | ||
|
|
7be0f1cb37 | ||
|
|
fb1e567c47 | ||
|
|
a12cd063ef | ||
|
|
3cbb460693 | ||
|
|
50444eb737 | ||
|
|
d64cab8b4e | ||
|
|
2cac0c95bd | ||
|
|
19dcd54be0 | ||
|
|
3a10e6d7ed | ||
|
|
f961e607b0 | ||
|
|
0033565c58 | ||
|
|
76687ab4f7 | ||
|
|
55761e81b5 | ||
|
|
5511062d26 | ||
|
|
6c4a3c7830 | ||
|
|
e6c5e98ef9 | ||
|
|
e2fccec49f | ||
|
|
3873e0ad21 | ||
|
|
63f7ca2409 | ||
|
|
598ce68a40 | ||
|
|
923aae692f | ||
|
|
8073d79856 | ||
|
|
6e22eddcf5 | ||
|
|
1bf467c0e1 | ||
|
|
3fee50f8d4 | ||
|
|
f5c5900e43 | ||
|
|
0baa7adafd | ||
|
|
6b0556da28 | ||
|
|
bd3c0050b3 | ||
|
|
b4e0c65150 | ||
|
|
5d967ac110 | ||
|
|
fcc98ab2c1 | ||
|
|
a0a73ccd1a | ||
|
|
d761810bbe | ||
|
|
c2f862c65e | ||
|
|
140af8393f | ||
|
|
c74341ccd2 | ||
|
|
0d2d0125b8 | ||
|
|
baaa2e5e1f | ||
|
|
f9e171d412 | ||
|
|
df177079fc | ||
|
|
5990689264 | ||
|
|
b875898efa | ||
|
|
9ffd0468ed | ||
|
|
9cc2bb9402 | ||
|
|
696fa0ffca | ||
|
|
456503b2e3 | ||
|
|
515ec72fec | ||
|
|
bd44e25f71 | ||
|
|
41549aad96 | ||
|
|
a58d440173 | ||
|
|
87495518d1 | ||
|
|
7819746e35 | ||
|
|
bfd42e6caa | ||
|
|
de153497e5 | ||
|
|
d025131034 | ||
|
|
7593c45dc2 | ||
|
|
70c56c3501 | ||
|
|
a937552c1e | ||
|
|
00277f521e | ||
|
|
7ab9898f97 | ||
|
|
ca6bbccd89 | ||
|
|
062e34e585 | ||
|
|
d1fa7348c8 | ||
|
|
5d1a961c47 | ||
|
|
7394d32578 | ||
|
|
d960d21177 | ||
|
|
28ab533060 | ||
|
|
5cb45475f2 | ||
|
|
36e99ba5d2 | ||
|
|
4b407ea56e | ||
|
|
09c1bd81fa | ||
|
|
f0abb2ce55 | ||
|
|
709f210cea | ||
|
|
eab72c1503 | ||
|
|
07bc93ab39 | ||
|
|
cb98a236c6 | ||
|
|
1b523a3eea | ||
|
|
b1dc27da32 | ||
|
|
26989d455a | ||
|
|
a614865663 | ||
|
|
f083886a98 | ||
|
|
12c71a176f | ||
|
|
2795870953 | ||
|
|
05c6bde2f4 | ||
|
|
cb68d22028 | ||
|
|
83bf263801 | ||
|
|
c85c4128c6 | ||
|
|
1c951e8b56 | ||
|
|
00a223022d | ||
|
|
a7fbd7c996 | ||
|
|
7845e8619a | ||
|
|
1c04ba1d44 | ||
|
|
cabd6f269a | ||
|
|
840f147bf2 | ||
|
|
04e080904c | ||
|
|
445cbf820e | ||
|
|
3adee32a1e | ||
|
|
c5dafcfa73 | ||
|
|
def1700d05 | ||
|
|
8f9cc43db8 | ||
|
|
ed2a99c0e2 | ||
|
|
ed4d5b2875 | ||
|
|
be0e1ed987 | ||
|
|
e1c8c20be2 | ||
|
|
6582950a42 | ||
|
|
7c262daf5e | ||
|
|
afdf1f5bee | ||
|
|
911a21e54d | ||
|
|
3f39cc830a | ||
|
|
b281a30634 | ||
|
|
4cb9eedf59 | ||
|
|
513d845660 | ||
|
|
970c3fcd48 | ||
|
|
830e590d91 | ||
|
|
b83ff4674d | ||
|
|
622aca5a55 | ||
|
|
6f484fbb60 | ||
|
|
b2bf41c312 | ||
|
|
2207649a3c | ||
|
|
75dcf2a7eb | ||
|
|
a05f31f4a5 | ||
|
|
e59164e729 | ||
|
|
6a2c5473e8 | ||
|
|
594a880494 | ||
|
|
be12e83be7 | ||
|
|
922ab7fa5d | ||
|
|
07b2a0e7a8 | ||
|
|
7b85c72134 | ||
|
|
8a5aa97b36 | ||
|
|
1f1c25c0bd | ||
|
|
2bf0b2db95 | ||
|
|
3f5b7a370e | ||
|
|
40ae3ffca5 | ||
|
|
69c630cd4f | ||
|
|
644f1b970f | ||
|
|
40b0a1e531 | ||
|
|
7433ae8271 | ||
|
|
e0008a367a | ||
|
|
4cd7153d79 | ||
|
|
42f31c9322 | ||
|
|
20a2329e10 | ||
|
|
c8963efc98 | ||
|
|
97314d131b | ||
|
|
322b7f611f | ||
|
|
99a6f38c5c | ||
|
|
dc51257e6b | ||
|
|
c7c1b2a0a2 | ||
|
|
0a6c1485e3 | ||
|
|
8551a7951a | ||
|
|
64e0b89ee5 | ||
|
|
c1fcc022a9 | ||
|
|
7fa5a279de | ||
|
|
691108333a | ||
|
|
2591e86e2e | ||
|
|
8e8c01c40c | ||
|
|
99451c955a | ||
|
|
118445b765 | ||
|
|
0c923060b8 | ||
|
|
05df2c0589 | ||
|
|
ff293d0006 | ||
|
|
6b67953cfe | ||
|
|
9f9a1de09f | ||
|
|
7567bba147 | ||
|
|
7982649bbc | ||
|
|
778e056970 | ||
|
|
26186f4498 | ||
|
|
093971a1a1 | ||
|
|
c7c3f36199 | ||
|
|
e4b8f22ae6 | ||
|
|
ecd6a8e7d3 | ||
|
|
f9bb9d654e | ||
|
|
8206283140 | ||
|
|
072a31c31a | ||
|
|
0b2ca7e3f1 | ||
|
|
82cca0963b | ||
|
|
93fd197ddb | ||
|
|
b54c7dc110 | ||
|
|
49aa34457b | ||
|
|
4bb5a248a4 | ||
|
|
d1e778bcb7 | ||
|
|
babd9a3b09 | ||
|
|
e1b8089386 | ||
|
|
829b755c3a | ||
|
|
0efef62e06 | ||
|
|
dca4fc41d1 | ||
|
|
2d2178266c |
5
.eslintignore
Normal file
@@ -0,0 +1,5 @@
|
||||
# Build
|
||||
dist
|
||||
src-tauri/target
|
||||
# Submodules
|
||||
TGAssistant
|
||||
@@ -5,86 +5,35 @@ env:
|
||||
extends:
|
||||
- plugin:vue/vue3-recommended
|
||||
- standard-with-typescript
|
||||
overrides: []
|
||||
- prettier
|
||||
- plugin:prettier/recommended
|
||||
parser: vue-eslint-parser
|
||||
parserOptions:
|
||||
parser: "@typescript-eslint/parser"
|
||||
ecmaVersion: latest
|
||||
sourceType: module
|
||||
extraFileExtensions:
|
||||
- .vue
|
||||
parser: "@typescript-eslint/parser"
|
||||
project:
|
||||
- ./tsconfig.json
|
||||
- ./tsconfig.node.json
|
||||
- tsconfig.json
|
||||
- tsconfig.node.json
|
||||
globals:
|
||||
TGApp: readonly
|
||||
plugins:
|
||||
- vue
|
||||
- prettier
|
||||
rules:
|
||||
# some rules that not normal disabled
|
||||
semi: off
|
||||
quotes: off
|
||||
# rules of standard
|
||||
no-tabs:
|
||||
# normal
|
||||
array-callback-return: warn
|
||||
# TypeScript
|
||||
"@typescript-eslint/strict-boolean-expressions": off
|
||||
"@typescript-eslint/consistent-type-assertions":
|
||||
- warn
|
||||
- allowIndentationTabs: false # 禁止使用 tab 缩进
|
||||
comma-dangle:
|
||||
- assertionStyle: angle-bracket # 使用尖括号
|
||||
"@typescript-eslint/naming-convention":
|
||||
- warn
|
||||
- always-multiline # 多行时,尾随逗号必须存在
|
||||
camelcase:
|
||||
- warn
|
||||
- properties: always # 对象属性名必须使用驼峰命名
|
||||
array-callback-return:
|
||||
- error
|
||||
- allowImplicit: true
|
||||
# rules of vue
|
||||
vue/max-attributes-per-line:
|
||||
- off
|
||||
# vue/max-len: # 限制代码长度不得超过这个长度
|
||||
# - warn
|
||||
# - code: 80
|
||||
vue/html-indent:
|
||||
- warn
|
||||
- 2 # Vue 标签缩进
|
||||
- baseIndent: 1 # 最外面的template缩进
|
||||
vue/component-name-in-template-casing:
|
||||
- warn # 组件应使用PascalCase命名
|
||||
- "PascalCase"
|
||||
vue/multi-word-component-names:
|
||||
- off # 组件名应该是由多个单词组成
|
||||
# rules of typescript
|
||||
"@typescript-eslint/strict-boolean-expressions":
|
||||
- off
|
||||
"@typescript-eslint/indent":
|
||||
- warn
|
||||
- 2 # js/ts缩进
|
||||
"@typescript-eslint/semi":
|
||||
- warn
|
||||
- always # 语句末尾必须加分号
|
||||
"@typescript-eslint/quotes":
|
||||
- warn
|
||||
- double # 引号使用双引号
|
||||
"@typescript-eslint/comma-dangle":
|
||||
- warn
|
||||
- always-multiline
|
||||
"@typescript-eslint/prefer-nullish-coalescing": off # on 会出现一些问题
|
||||
"@typescript-eslint/space-before-function-paren":
|
||||
- warn
|
||||
- always # 函数名和括号之间必须有空格
|
||||
"@typescript-eslint/ban-types":
|
||||
- warn
|
||||
- types:
|
||||
Object: # 禁止使用 Object
|
||||
message: "Use {} instead"
|
||||
fixWith: "{}"
|
||||
Boolean: # 禁止使用 Boolean
|
||||
message: "Use boolean instead"
|
||||
Number: # 禁止使用 Number
|
||||
message: "Use number instead"
|
||||
String: # 禁止使用 String
|
||||
message: "Use string instead"
|
||||
Symbol: # 禁止使用 Symbol
|
||||
message: "Use symbol instead"
|
||||
"@typescript-eslint/no-floating-promises":
|
||||
- warn
|
||||
- ignoreVoid: true # 忽略 void 类型
|
||||
- selector: variableLike
|
||||
format: ["camelCase", "UPPER_CASE", "PascalCase", "snake_case"]
|
||||
leadingUnderscore: "allow"
|
||||
trailingUnderscore: "allow"
|
||||
"@typescript-eslint/no-non-null-assertion": warn
|
||||
# Vue
|
||||
"vue/multi-word-component-names": off
|
||||
|
||||
6
.github/workflows/build.yml
vendored
@@ -20,6 +20,10 @@ jobs:
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
- name: setup pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8.6.7
|
||||
- name: Install Rust stable
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
- name: Restore Cargo dependencies
|
||||
@@ -34,7 +38,7 @@ jobs:
|
||||
key: ${{ runner.os }}-cargo-${{ hashFiles('src-tauri/Cargo.lock') }}
|
||||
restore-keys: ${{ runner.os }}-cargo-
|
||||
- name: Install frontend dependencies
|
||||
run: npm install
|
||||
run: pnpm install --frozen-lockfile
|
||||
- uses: tauri-apps/tauri-action@dev
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
27
.github/workflows/qodana_code_quality.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
name: Qodana
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
qodana:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: setup node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
- name: setup pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8.6.7
|
||||
- name: Install frontend dependencies
|
||||
run: pnpm install --frozen-lockfile
|
||||
- name: "Qodana Scan"
|
||||
uses: JetBrains/qodana-action@v2022.3.4
|
||||
env:
|
||||
QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }}
|
||||
3
.gitmodules
vendored
@@ -1,3 +0,0 @@
|
||||
[submodule "TGAssistant"]
|
||||
path = TGAssistant
|
||||
url = https://github.com/BTMuli/TGAssistant
|
||||
1
.husky/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
_
|
||||
4
.husky/pre-commit
Normal file
@@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
. "$(dirname "$0")/_/husky.sh"
|
||||
|
||||
npx lint-staged
|
||||
@@ -2,15 +2,10 @@
|
||||
.idea
|
||||
# Visual Studio Code Setting
|
||||
.vscode
|
||||
# Node Modules
|
||||
node_modules
|
||||
package-lock.json
|
||||
# Tauri build
|
||||
dist
|
||||
src-tauri/target
|
||||
# submodules
|
||||
TGAssistant
|
||||
# Docs
|
||||
README.md
|
||||
LICENSE
|
||||
docs
|
||||
# Pnpm
|
||||
pnpm-lock.yaml
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
"semi": true
|
||||
"singleQuote": false
|
||||
"printWidth": 120
|
||||
"useTabs": true
|
||||
"proseWrap": "preserve"
|
||||
"bracketSpacing": true
|
||||
"endOfLine": "crlf"
|
||||
semi: true
|
||||
singleQuote: false
|
||||
printWidth: 100
|
||||
useTabs: false
|
||||
tabWidth: 2
|
||||
bracketSpacing: true
|
||||
endOfLine: auto
|
||||
trailingComma: "all"
|
||||
|
||||
@@ -3,4 +3,9 @@ extends:
|
||||
- stylelint-order
|
||||
- stylelint-declaration-block-no-ignored-properties
|
||||
- stylelint-config-standard-vue
|
||||
rules: {}
|
||||
- stylelint-config-idiomatic-order
|
||||
plugins:
|
||||
- stylelint-prettier
|
||||
- stylelint-order
|
||||
rules:
|
||||
"prettier/prettier": true
|
||||
|
||||
78
CHANGELOG.md
@@ -2,16 +2,84 @@
|
||||
Author: 目棃
|
||||
Date: 2023-06-18
|
||||
Description: CHANGELOG
|
||||
Update: 2023-06-19
|
||||
Update: 2023-08-31
|
||||
---
|
||||
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于 `2023-06-18 15:03:42 `
|
||||
>
|
||||
> 更新于 `2023-06-19 14:30:30`
|
||||
>
|
||||
> 更新于 `2023-08-31 11:23:03`
|
||||
|
||||
# CHANGELOG
|
||||
|
||||
## [0.2.0](https://github.com/BTMuli/Tauri.Genshin/releases/0.2.0) (2023-06-18)
|
||||
## [0.2.3](https://github.com/BTMuli/Tauri.Genshin/releases/v0.2.3) (2023-08-31)
|
||||
|
||||
### Feat
|
||||
|
||||
- 组件:实现并替换 `snackbar` `confirm` 组件,新组件采用函数式调用
|
||||
- 功能:完成 UIGF 数据导入、导出、渲染 [#27](https://github.com/BTMuli/Tauri.Genshin/issues/27)
|
||||
|
||||
### Fix
|
||||
|
||||
- 资源:补充部分缺漏 contentId
|
||||
- 分享:调整生成分享图的默认背景颜色
|
||||
- 页面:`我的角色` 页面更新天赋数据后自动刷新页面
|
||||
|
||||
### Change
|
||||
|
||||
- 组件:首页卡池组件样式调整
|
||||
- 依赖:更新 cargo 依赖
|
||||
- 页面:调整 `原神战绩` 页面样式
|
||||
- 页面:调整 `深渊记录` 页面样式,采用横版布局
|
||||
- 功能:不再考虑 `实时便笺` 功能实现
|
||||
- 图标:侧边栏部分图标变更
|
||||
|
||||
FullCommits: [`v0.2.2...v0.2.3`](https://github.com/BTMuli/Tauri.Genshin/compare/v0.2.2...v0.2.3)
|
||||
|
||||
## [0.2.2](https://github.com/BTMuli/Tauri.Genshin/releases/v0.2.2) (2023-08-15)
|
||||
|
||||
### Feat
|
||||
|
||||
- 资源:更新游戏 4.0 版本相关资源 [#33](https://github.com/BTMuli/Tauri.Genshin/issues/33)
|
||||
|
||||
### Fix
|
||||
|
||||
- 深渊:修复渲染错误 [#32](https://github.com/BTMuli/Tauri.Genshin/issues/32)
|
||||
- 深渊:修复图片缺失 [#31](https://github.com/BTMuli/Tauri.Genshin/issues/31)
|
||||
|
||||
### Change
|
||||
|
||||
- 深渊:适应 HutaoAPI 更新 [`00277f52`](https://github.com/BTMuli/Tauri.Genshin/commit/00277f52)
|
||||
- 素材日历:变更数据来源
|
||||
|
||||
FullCommits: [`v0.2.1...v0.2.2`](https://github.com/BTMuli/Tauri.Genshin/compare/v0.2.1...v0.2.2)
|
||||
|
||||
## [0.2.1](https://github.com/BTMuli/Tauri.Genshin/releases/v0.2.1) (2023-07-14)
|
||||
|
||||
### Feat
|
||||
|
||||
- 深渊: 新增深渊数据库页面,角色深渊数据支持数据上传 [`#22`](https://github.com/BTMuli/Tauri.Genshin/issues/22)
|
||||
- 页面:角色详情新增角色衣装数据 [`26186f44`](https://github.com/BTMuli/Tauri.Genshin/commit/26186f44)
|
||||
- 页面:角色详情新增角色天赋数据
|
||||
- 功能:子页面:米游社帖子、游戏公告支持分享;首页素材日历支持分享
|
||||
- 资源:更新 3.8 版本资源 [`#30`](https://github.com/BTMuli/Tauri.Genshin/issues/30)
|
||||
- 功能:支持根据帖子 ID 跳转到帖子页面 [`04e08090`](https://github.com/BTMuli/Tauri.Genshin/commit/04e08090)
|
||||
|
||||
### Fix
|
||||
|
||||
- 样式:美化部分页面、组件样式
|
||||
- 组件:优化素材日历组件 [`0c923060`](https://github.com/BTMuli/Tauri.Genshin/commit/0c923060)
|
||||
- 样式:修复首页组件近期活动样式 [`20a2329e`](https://github.com/BTMuli/Tauri.Genshin/commit/20a2329e)
|
||||
- 样式:美化米游社咨讯页面样式,增加部分数据
|
||||
|
||||
### Change
|
||||
|
||||
- 依赖:各依赖更新至最新版本
|
||||
- 配置:优化 Eslint Prettier Stylelint Lint-Staged 等配置
|
||||
- 重构:重构 Mys 插件数据类型及 Hutao 插件数据类型
|
||||
|
||||
Full Commits: [`v0.2.0...v0.2.1`](https://github.com/BTMuli/Tauri.Genshin/compare/v0.2.0...v0.2.1)
|
||||
|
||||
## [0.2.0](https://github.com/BTMuli/Tauri.Genshin/releases/v0.2.0) (2023-06-19)
|
||||
|
||||
### Feat
|
||||
|
||||
@@ -36,4 +104,4 @@ Update: 2023-06-19
|
||||
- 资源:成就系列图标目录变更
|
||||
- 资源:字体文件变更 [`2ee48566`](https://github.com/BTMuli/Tauri.Genshin/commit/2ee48566)
|
||||
|
||||
FullCommits: [`v0.1.6...v0.2.0`](https://github.com/BTMuli/Tauri.Genshin/compare/v0.1.6...v0.2.0)
|
||||
Full Commits: [`v0.1.6...v0.2.0`](https://github.com/BTMuli/Tauri.Genshin/compare/v0.1.6...v0.2.0)
|
||||
|
||||
39
README.md
@@ -2,18 +2,18 @@
|
||||
Author: 目棃
|
||||
Date: 2023-03-05
|
||||
Description: 说明文档
|
||||
Update: 2023-06-19
|
||||
Update: 2023-08-31
|
||||
---
|
||||
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于 `2023-03-05 14:41:55`
|
||||
>
|
||||
> 更新于 `2023-06-19 14:30:03`
|
||||
>
|
||||
> 更新于 `2023-08-31 11:14:51`
|
||||
|
||||
  
|
||||
  
|
||||
|
||||
# Tauri.Genshin
|
||||
|
||||
Tauri 练手项目,子模块:[TGAssistant](https://github.com/BTMuli/TGAssistant)
|
||||
A Genshin Impact assistant app based on Tauri.
|
||||
|
||||
## Release
|
||||
|
||||
@@ -36,26 +36,21 @@ Tauri 练手项目,子模块:[TGAssistant](https://github.com/BTMuli/TGAssis
|
||||
- [x] 米游社咨讯获取&展示(支持多种游戏)
|
||||
- [x] 游戏内公告&活动获取&展示
|
||||
- [x] UIAF 成就数据导入、导出、备份、恢复
|
||||
- [x] UIGF 祈愿数据导入导出&展示
|
||||
- [x] 首页素材日历、近期活动、限时祈愿可选展示
|
||||
- [x] Wiki 页面草创(包含 GCG、角色、武器等)
|
||||
- [x] 浅色/深色主题切换
|
||||
- [x] 应用更新检测
|
||||
- [x] 用户 Cookie 获取、备份、恢复、刷新
|
||||
- [x] 原神战绩数据获取、渲染、分享
|
||||
- [x] 角色列表数据获取、渲染、分享
|
||||
- [x] 深渊挑战数据获取、渲染、分享、备份、恢复
|
||||
|
||||
### 计划中
|
||||
|
||||
- [ ] UIGF 祈愿数据导入导出&展示
|
||||
- [ ] 深渊数据上传
|
||||
- [ ] 实时便笺数据获取
|
||||
- [ ] 角色天赋数据获取
|
||||
- [x] 原神战绩数据获取
|
||||
- [x] 角色列表数据获取
|
||||
- [x] 角色天赋数据获取
|
||||
- [x] 深渊挑战数据获取
|
||||
- [x] 深渊数据上传,统计数据获取
|
||||
|
||||
### 长期计划
|
||||
|
||||
- [ ] Wiki 详情页
|
||||
- [ ] 游戏资源更新
|
||||
- [ ] 游戏资源更新:更新至 4.0 版本(0.2.2)
|
||||
|
||||
## 仓库概况
|
||||
|
||||
@@ -64,15 +59,17 @@ Tauri 练手项目,子模块:[TGAssistant](https://github.com/BTMuli/TGAssis
|
||||
## UI 参考
|
||||
|
||||
- [Snap.Hutao](https://github.com/DGP-Studio/Snap.Hutao)
|
||||
- [StarWard](https://github.com/Scighost/Starward)
|
||||
- [米游社](https://www.miyoushe.com/ys/)
|
||||
- [原神](https://yuanshen.com/)
|
||||
- [中国色](http://zhongguose.com/)
|
||||
|
||||
## 相关文档
|
||||
|
||||
+ Changelog: [CHANGELOG](CHANGELOG.md)
|
||||
+ 资源来源:[项目资源说明](docs/项目资源说明.md)
|
||||
+ UIAF:[UIAF v1.1](docs/UIAF.md)
|
||||
+ UIGF:[UIGF v2.3](docs/UIGF.md)
|
||||
- Changelog: [CHANGELOG](CHANGELOG.md)
|
||||
- 资源来源:[项目资源说明](docs/项目资源说明.md)
|
||||
- UIAF:[UIAF v1.1](docs/UIAF.md)
|
||||
- UIGF:[UIGF v2.3](docs/UIGF.md)
|
||||
|
||||
## Contributors
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ Update: 2023-06-18
|
||||
---
|
||||
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于 `2023-03-30 15:39:49`
|
||||
>
|
||||
>
|
||||
> 更新于 `2023-06-18 15:02:31`
|
||||
|
||||
# CHANGELOG v0.1.x
|
||||
@@ -113,7 +113,6 @@ FullCommits: [`v0.1.2 ~ v0.1.3`](https://github.com/BTMuli/Tauri.Genshin/compare
|
||||
- 咨讯:支持多种游戏咨讯查看
|
||||
- 米游社解析:添加 `mention` 类型解析
|
||||
|
||||
|
||||
### Fix
|
||||
|
||||
- 首页:近期活动、限时祈愿结束处理
|
||||
|
||||
75
docs/UIAF.md
@@ -6,7 +6,7 @@ Update: 2023-03-07
|
||||
---
|
||||
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于`2023-03-07 14:17:11`
|
||||
>
|
||||
>
|
||||
> 更新于 `2023-03-07 14:17:11`
|
||||
|
||||
> 本文档为 [`UIAF`](https://github.com/DGP-Studio/Snap.Genshin.Docs/blob/main/docs/development/UIAF.md) 的备份。
|
||||
@@ -14,18 +14,19 @@ Update: 2023-03-07
|
||||
# 统一可交换成就标准 v1.1
|
||||
|
||||
> Uniformed Interchangeable Achievement Format standard (UIAF)
|
||||
|
||||
## 前言
|
||||
|
||||
由于原神的第三方成就识别、导出、记录软件越来越多,在有了 UIGF 的经验后,
|
||||
我们
|
||||
|
||||
* [babalae/genshin achievement toy](https://github.com/babalae/genshin-achievement-toy)
|
||||
* [DGP Studio/Snap.Genshin](https://github.com/DGP-Studio/Snap.Genshin)
|
||||
* [HolographicHat/genshin achievement export](https://github.com/HolographicHat/genshin-achievement-export)
|
||||
* [YuehaiTeam/cocogoat](https://github.com/YuehaiTeam/cocogoat)
|
||||
- [babalae/genshin achievement toy](https://github.com/babalae/genshin-achievement-toy)
|
||||
- [DGP Studio/Snap.Genshin](https://github.com/DGP-Studio/Snap.Genshin)
|
||||
- [HolographicHat/genshin achievement export](https://github.com/HolographicHat/genshin-achievement-export)
|
||||
- [YuehaiTeam/cocogoat](https://github.com/YuehaiTeam/cocogoat)
|
||||
|
||||
(上述名称以字典顺序排序,不代表其他任何意义)
|
||||
在此一起,制定了此项标准,旨在加强各个原神相关的App间的数据可交换性。
|
||||
在此一起,制定了此项标准,旨在加强各个原神相关的 App 间的数据可交换性。
|
||||
|
||||
## 注意事项
|
||||
|
||||
@@ -61,10 +62,7 @@ Update: 2023-03-07
|
||||
"description": "导出UNIX时间戳"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"export_app",
|
||||
"uiaf_version"
|
||||
],
|
||||
"required": ["export_app", "uiaf_version"],
|
||||
"description": "包含导出方定义的基本信息"
|
||||
},
|
||||
"list": {
|
||||
@@ -83,12 +81,7 @@ Update: 2023-03-07
|
||||
"status": {
|
||||
"type": "number",
|
||||
"description": "完成状态",
|
||||
"enum": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
],
|
||||
"enum": [0, 1, 2, 3],
|
||||
"enumDesc": "ACHIEVEMENT_INVALID = 0; ACHIEVEMENT_UNFINISHED = 1; ACHIEVEMENT_FINISHED = 2;ACHIEVEMENT_POINT_TAKEN = 3;"
|
||||
},
|
||||
"timestamp": {
|
||||
@@ -96,21 +89,13 @@ Update: 2023-03-07
|
||||
"description": "完成的时间"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"current",
|
||||
"status",
|
||||
"timestamp"
|
||||
],
|
||||
"required": ["id", "current", "status", "timestamp"],
|
||||
"description": "表示一个成就"
|
||||
},
|
||||
"description": "包含完成或未完成的成就"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"info",
|
||||
"list"
|
||||
]
|
||||
"required": ["info", "list"]
|
||||
}
|
||||
```
|
||||
|
||||
@@ -118,46 +103,48 @@ Update: 2023-03-07
|
||||
|
||||
可以包含我们认可的以下字段
|
||||
|
||||
|字段名|值|说明|
|
||||
|-|-|-|
|
||||
|`export_timestamp`|导出UNIX时间戳||
|
||||
|`export_app_version`|导出此份记录的App版本号||
|
||||
|`uiaf_version`|所应用的 `UIAF` 的版本,包含此字段以防 `UIAF` 出现中断性变更时,App无法处理||
|
||||
| 字段名 | 值 | 说明 |
|
||||
| -------------------- | --------------------------------------------------------------------------- | ---- |
|
||||
| `export_timestamp` | 导出 UNIX 时间戳 | |
|
||||
| `export_app_version` | 导出此份记录的 App 版本号 | |
|
||||
| `uiaf_version` | 所应用的 `UIAF` 的版本,包含此字段以防 `UIAF` 出现中断性变更时,App 无法处理 | |
|
||||
|
||||
#### `uiaf_version`
|
||||
|
||||
合法值
|
||||
|
||||
|值|说明|向下兼容的最低版本|
|
||||
|-|-|-|
|
||||
|`v1.0`|首个正式版本|v1.0|
|
||||
|`v1.1`|在 `achievement` 中引入了 `status` 字段,指示成就的完成情况|v1.1|
|
||||
| 值 | 说明 | 向下兼容的最低版本 |
|
||||
| ------ | ----------------------------------------------------------- | ------------------ |
|
||||
| `v1.0` | 首个正式版本 | v1.0 |
|
||||
| `v1.1` | 在 `achievement` 中引入了 `status` 字段,指示成就的完成情况 | v1.1 |
|
||||
|
||||
#### `export_app`
|
||||
|
||||
未实现导出支持的以 `-` 代替
|
||||
|
||||
|导出 App|`export_app` 的值|
|
||||
|-|-|
|
||||
|Empty|Empty|
|
||||
| 导出 App | `export_app` 的值 |
|
||||
| -------- | ----------------- |
|
||||
| Empty | Empty |
|
||||
|
||||
### `achievement`
|
||||
|
||||
#### `id`
|
||||
|
||||
原神的成就在游戏内部带有Id,对于扫描类导出软件,在取得成就的外在表现形式(如:呈现文本)后,便可对应到内部的Id
|
||||
原神的成就在游戏内部带有 Id,对于扫描类导出软件,在取得成就的外在表现形式(如:呈现文本)后,便可对应到内部的 Id
|
||||
|
||||
> 导入/导出软件应自行负责Id与呈现文本间的转换
|
||||
> 导入/导出软件应自行负责 Id 与呈现文本间的转换
|
||||
> 成就的信息可以从 [Dimbreath/GenshinData](https://github.com/Dimbreath/GenshinData) 库中获取
|
||||
|
||||
#### `timestamp`
|
||||
|
||||
* 对于识别成功的值,直接将时间转换为对应的UNIX 时间戳(秒)
|
||||
- 对于识别成功的值,直接将时间转换为对应的 UNIX 时间戳(秒)
|
||||
|
||||
* 对于识别失败的值,直接将时间设置为 `9999-12-31 23:59:59`(253402271999(秒))
|
||||
- 对于识别失败的值,直接将时间设置为 `9999-12-31 23:59:59`(253402271999(秒))
|
||||
|
||||
#### `current`
|
||||
|
||||
* 对于识别成功的值,如 30/40 `current` 的值应设置为30
|
||||
- 对于识别成功的值,如 30/40 `current` 的值应设置为 30
|
||||
|
||||
> 因为始终可以从原神的数据中找到目标达成值
|
||||
* 对于识别失败的值,请将该字段的值设为 `0`
|
||||
|
||||
- 对于识别失败的值,请将该字段的值设为 `0`
|
||||
|
||||
187
docs/UIGF.md
@@ -6,7 +6,7 @@ Update: 2023-04-07
|
||||
---
|
||||
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于`2023-04-07 19:51:40`
|
||||
>
|
||||
>
|
||||
> 更新于 `2023-04-07 19:51:40`
|
||||
|
||||
> 本文档为 [`UIGF`](https://github.com/UIGF-org/UIGF-org.github.io/blob/main/docs/zh/standards/UIGF-pre-release.md) 的备份。
|
||||
@@ -17,24 +17,26 @@ Update: 2023-04-07
|
||||
|
||||
## 更新记录
|
||||
|
||||
|版本|说明|兼容|
|
||||
|-|-|-|
|
||||
|`v2.0`| 首个正式版本 | v2.0 |
|
||||
|`v2.1`| 简化了部分语言表述,与 v2.0在数据格式上完全一致 | v2.1 and lower |
|
||||
|`v2.2`| 新增 `info.export_timestamp` 填充 UNIX 时间戳 | v2.2 and lower |
|
||||
|`v2.3`| 扩充至非中文语境,使用 Json Schema 表述 | v2.3 and lower |
|
||||
| 版本 | 说明 | 兼容 |
|
||||
| ------ | ------------------------------------------------ | -------------- |
|
||||
| `v2.0` | 首个正式版本 | v2.0 |
|
||||
| `v2.1` | 简化了部分语言表述,与 v2.0 在数据格式上完全一致 | v2.1 and lower |
|
||||
| `v2.2` | 新增 `info.export_timestamp` 填充 UNIX 时间戳 | v2.2 and lower |
|
||||
| `v2.3` | 扩充至非中文语境,使用 Json Schema 表述 | v2.3 and lower |
|
||||
|
||||
## Id
|
||||
|
||||
原神的祈愿记录物品内包含了一项较为特殊的字段: `id` ,该值在 1.3版本后加入
|
||||
原神的祈愿记录物品内包含了一项较为特殊的字段: `id` ,该值在 1.3 版本后加入
|
||||
所以**先前查询出的物品**若无特殊兼容性修改则不会包含相应的 `id`
|
||||
App 导出 UIGF 时
|
||||
* 需要确保每个物品的 `id` 的有效性。
|
||||
* 从最后一个自带有效 `id` 的物品开始,向前(相对于时间)依次递减 `id` 的值,每次递减的值应保持为 `1`
|
||||
|
||||
- 需要确保每个物品的 `id` 的有效性。
|
||||
- 从最后一个自带有效 `id` 的物品开始,向前(相对于时间)依次递减 `id` 的值,每次递减的值应保持为 `1`
|
||||
|
||||
导入 UIGF 到 App 时
|
||||
* App不应假设所有的 `gacha_item` 都有有效的 `id` 值
|
||||
* App应具有处理 `id` 字段为 `null`或 `` 空字符串的能力
|
||||
|
||||
- App 不应假设所有的 `gacha_item` 都有有效的 `id` 值
|
||||
- App 应具有处理 `id` 字段为 `null`或 `` 空字符串的能力
|
||||
|
||||
## GachaType
|
||||
|
||||
@@ -44,19 +46,19 @@ App 导出 UIGF 时
|
||||
|
||||
### 映射关系
|
||||
|
||||
|`uigf_gacha_type`|`gacha_type`|
|
||||
|-|-|
|
||||
|`100`|`100`|
|
||||
|`200`|`200`|
|
||||
|`301`|`301` or `400`|
|
||||
|`302`|`302`|
|
||||
| `uigf_gacha_type` | `gacha_type` |
|
||||
| ----------------- | -------------- |
|
||||
| `100` | `100` |
|
||||
| `200` | `200` |
|
||||
| `301` | `301` or `400` |
|
||||
| `302` | `302` |
|
||||
|
||||
## Json 格式
|
||||
|
||||
> Uniformed Interchangeable GachaLog Format standard of Json (UIGF.J)
|
||||
Json 格式 由于 与从官方接口获取到的格式一致
|
||||
更便于各App的导入与导出,我们也在此做出规范
|
||||
该格式应仅用于各App间的数据互通
|
||||
> Json 格式 由于 与从官方接口获取到的格式一致
|
||||
> 更便于各 App 的导入与导出,我们也在此做出规范
|
||||
> 该格式应仅用于各 App 间的数据互通
|
||||
|
||||
### 导出的格式
|
||||
|
||||
@@ -107,11 +109,7 @@ Json 格式 由于 与从官方接口获取到的格式一致
|
||||
}
|
||||
},
|
||||
"title": "Infomation",
|
||||
"required": [
|
||||
"uid",
|
||||
"lang",
|
||||
"uigf_version"
|
||||
],
|
||||
"required": ["uid", "lang", "uigf_version"],
|
||||
"description": "包含导出方定义的基本信息"
|
||||
},
|
||||
"list": {
|
||||
@@ -166,13 +164,7 @@ Json 格式 由于 与从官方接口获取到的格式一致
|
||||
"description": "向接口查询时需要的 gacha_type"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"gacha_type",
|
||||
"name",
|
||||
"id",
|
||||
"uigf_gacha_type",
|
||||
"time"
|
||||
],
|
||||
"required": ["gacha_type", "name", "id", "uigf_gacha_type", "time"],
|
||||
"title": "Gacha Item",
|
||||
"description": "祈愿物品"
|
||||
},
|
||||
@@ -180,10 +172,7 @@ Json 格式 由于 与从官方接口获取到的格式一致
|
||||
"description": "物品列表"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"info",
|
||||
"list"
|
||||
],
|
||||
"required": ["info", "list"],
|
||||
"description": "UIGF 根对象"
|
||||
}
|
||||
```
|
||||
@@ -194,95 +183,95 @@ Json 格式 由于 与从官方接口获取到的格式一致
|
||||
|
||||
### 单元格的格式
|
||||
|
||||
* 在填充单元格内的数据时,应统一转换到 `String` 字符串类型后填入
|
||||
- 在填充单元格内的数据时,应统一转换到 `String` 字符串类型后填入
|
||||
|
||||
### 表名及内容
|
||||
|
||||
|表名|内容|类型|是否必要|
|
||||
|-|-|-|-|
|
||||
|统计分析|统计分析内容等|任意|否|
|
||||
|角色活动祈愿|`gacha_type` : `301 or 400` 的祈愿数据|祈愿表|否,但是应该导出|
|
||||
|武器活动祈愿|`gacha_type` : `302` 的祈愿数据|祈愿表|否,但是应该导出|
|
||||
|常驻祈愿|`gacha_type` : `200` 的祈愿数据|祈愿表|否,但是应该导出|
|
||||
|新手祈愿|`gacha_type` : `100` 的祈愿数据|祈愿表|否,但是应该导出|
|
||||
|原始数据|全部祈愿数据|数据表|**详见下方原始数据表结构说明**|
|
||||
| 表名 | 内容 | 类型 | 是否必要 |
|
||||
| ------------ | -------------------------------------- | ------ | ------------------------------ |
|
||||
| 统计分析 | 统计分析内容等 | 任意 | 否 |
|
||||
| 角色活动祈愿 | `gacha_type` : `301 or 400` 的祈愿数据 | 祈愿表 | 否,但是应该导出 |
|
||||
| 武器活动祈愿 | `gacha_type` : `302` 的祈愿数据 | 祈愿表 | 否,但是应该导出 |
|
||||
| 常驻祈愿 | `gacha_type` : `200` 的祈愿数据 | 祈愿表 | 否,但是应该导出 |
|
||||
| 新手祈愿 | `gacha_type` : `100` 的祈愿数据 | 祈愿表 | 否,但是应该导出 |
|
||||
| 原始数据 | 全部祈愿数据 | 数据表 | **详见下方原始数据表结构说明** |
|
||||
|
||||
* 表的顺序可以是任意的
|
||||
* 可以隐藏部分表,防止用户随意篡改数据
|
||||
* Sheet 的名称应与游戏内祈愿记录页面显示的名称保持一致
|
||||
- 表的顺序可以是任意的
|
||||
- 可以隐藏部分表,防止用户随意篡改数据
|
||||
- Sheet 的名称应与游戏内祈愿记录页面显示的名称保持一致
|
||||
|
||||
> App间应依据 `原始数据表` 的内容,来进行数据互通
|
||||
> App 间应依据 `原始数据表` 的内容,来进行数据互通
|
||||
|
||||
### 祈愿表结构
|
||||
|
||||
本节内容是为了规范兼容分析类App
|
||||
本节内容是为了规范兼容分析类 App
|
||||
|
||||
* 表头对应的内容填充**顺序需要严格按照下方说明**排布
|
||||
* **共享保底的卡池**按祈愿类型 (`gacha_type`) 区分
|
||||
* 此类 `Sheet` 存在的目的,是为了便于用户观看与祈愿分析工具的分析
|
||||
- 表头对应的内容填充**顺序需要严格按照下方说明**排布
|
||||
- **共享保底的卡池**按祈愿类型 (`gacha_type`) 区分
|
||||
- 此类 `Sheet` 存在的目的,是为了便于用户观看与祈愿分析工具的分析
|
||||
|
||||
|表头|内容|是否必要|
|
||||
|-|-|-|
|
||||
|时间|`yyyy-MM-dd HH:mm:ss` 格式的 `time` 时间|是|
|
||||
|名称|`name`物品名称|是|
|
||||
|物品类型|`item_type`|是|
|
||||
|星级|`rank_type`|是|
|
||||
|祈愿类型|`gacha_type` 的转义名称|是,尽管部分工具不会分析此项|
|
||||
|...|...|否|
|
||||
| 表头 | 内容 | 是否必要 |
|
||||
| -------- | ---------------------------------------- | ---------------------------- |
|
||||
| 时间 | `yyyy-MM-dd HH:mm:ss` 格式的 `time` 时间 | 是 |
|
||||
| 名称 | `name`物品名称 | 是 |
|
||||
| 物品类型 | `item_type` | 是 |
|
||||
| 星级 | `rank_type` | 是 |
|
||||
| 祈愿类型 | `gacha_type` 的转义名称 | 是,尽管部分工具不会分析此项 |
|
||||
| ... | ... | 否 |
|
||||
|
||||
> 如果你认为有必要的话,可以额外增加其他表头,但请确保表头的前几列为上表规范的内容
|
||||
> 表内的数据通常按祈愿Id升序或降序排列,分析App不应假设表内的顺序为特定的升序与降序
|
||||
> 表内的数据通常按祈愿 Id 升序或降序排列,分析 App 不应假设表内的顺序为特定的升序与降序
|
||||
|
||||
#### `gacha_type` 转义名称
|
||||
|
||||
|gacha_type|名称|
|
||||
|-|-|
|
||||
|100|新手祈愿|
|
||||
|200|常驻祈愿|
|
||||
|301|角色活动祈愿|
|
||||
|400|角色活动祈愿-2|
|
||||
|302|武器活动祈愿|
|
||||
| gacha_type | 名称 |
|
||||
| ---------- | -------------- |
|
||||
| 100 | 新手祈愿 |
|
||||
| 200 | 常驻祈愿 |
|
||||
| 301 | 角色活动祈愿 |
|
||||
| 400 | 角色活动祈愿-2 |
|
||||
| 302 | 武器活动祈愿 |
|
||||
|
||||
#### 示例
|
||||
|
||||
|时间|名称|类别|星级|祈愿类型|...|
|
||||
|-|-|-|-|-|-|
|
||||
|2021-02-17 18:45:09|以理服人|武器|3|角色活动祈愿-2|...|
|
||||
|...|...|...|...|...|...|
|
||||
| 时间 | 名称 | 类别 | 星级 | 祈愿类型 | ... |
|
||||
| ------------------- | -------- | ---- | ---- | -------------- | --- |
|
||||
| 2021-02-17 18:45:09 | 以理服人 | 武器 | 3 | 角色活动祈愿-2 | ... |
|
||||
| ... | ... | ... | ... | ... | ... |
|
||||
|
||||
### 原始数据表结构
|
||||
|
||||
导出时
|
||||
|
||||
* App 在导出时应尽可能询问用户是否应包含原始数据表
|
||||
* 一旦在工作簿内包含了名为 `原始数据` 的表,即表示支持本格式
|
||||
* 该表内的内容应严格按照本格式所述填充
|
||||
* **表头的顺序需严格按照下表设置**。
|
||||
* 现有的字段采用**字典顺序**递增排序,后续新增的字段依添加的顺序排在后侧。
|
||||
* 若无特殊需求,我们建议导出所有json 数据内包含的字段
|
||||
- App 在导出时应尽可能询问用户是否应包含原始数据表
|
||||
- 一旦在工作簿内包含了名为 `原始数据` 的表,即表示支持本格式
|
||||
- 该表内的内容应严格按照本格式所述填充
|
||||
- **表头的顺序需严格按照下表设置**。
|
||||
- 现有的字段采用**字典顺序**递增排序,后续新增的字段依添加的顺序排在后侧。
|
||||
- 若无特殊需求,我们建议导出所有 json 数据内包含的字段
|
||||
|
||||
导入时
|
||||
|
||||
* 强烈建议您编写不依赖于列的顺序位置便可实现导入的程序,以达到最大化的兼容。
|
||||
* 如果省略了其中某些非必要字段的值,请保持表头存在,对应的列则空置。
|
||||
- 强烈建议您编写不依赖于列的顺序位置便可实现导入的程序,以达到最大化的兼容。
|
||||
- 如果省略了其中某些非必要字段的值,请保持表头存在,对应的列则空置。
|
||||
|
||||
|表头|是否必要|
|
||||
|-|-|
|
||||
|`count`|否,但是建议保留,不排除后续会有`count`不为1的情况|
|
||||
|`gacha_type`|是|
|
||||
|`id`|是,且大部分App按此字段排序数据|
|
||||
|`item_id`|否,目前官方已经弃用了此字段|
|
||||
|`item_type`|是|
|
||||
|`lang`|否,但建议保留,以便国际化|
|
||||
|`name`|是|
|
||||
|`rank_type`|否,但建议保留,以便分析|
|
||||
|`time`|否,但建议保留,以便分析|
|
||||
|`uid`|否,但建议将选择权交予用户,保留以便分析|
|
||||
|`uigf_gacha_type`|是|
|
||||
| 表头 | 是否必要 |
|
||||
| ----------------- | ---------------------------------------------------- |
|
||||
| `count` | 否,但是建议保留,不排除后续会有`count`不为 1 的情况 |
|
||||
| `gacha_type` | 是 |
|
||||
| `id` | 是,且大部分 App 按此字段排序数据 |
|
||||
| `item_id` | 否,目前官方已经弃用了此字段 |
|
||||
| `item_type` | 是 |
|
||||
| `lang` | 否,但建议保留,以便国际化 |
|
||||
| `name` | 是 |
|
||||
| `rank_type` | 否,但建议保留,以便分析 |
|
||||
| `time` | 否,但建议保留,以便分析 |
|
||||
| `uid` | 否,但建议将选择权交予用户,保留以便分析 |
|
||||
| `uigf_gacha_type` | 是 |
|
||||
|
||||
#### 示例
|
||||
|
||||
|count|gacha_type|id|item_id|item_type|lang|name|rank_type|time|uid|uigf_gacha_type|
|
||||
|-|-|-|-|-|-|-|-|-|-|-|
|
||||
|1|301|1613556360008291100||武器|zh-cn|以理服人|3|2021-02-17 18:45:09|123456789|301|
|
||||
|...|...|...|...|...|...|...|...|...|...|...|
|
||||
| count | gacha_type | id | item_id | item_type | lang | name | rank_type | time | uid | uigf_gacha_type |
|
||||
| ----- | ---------- | ------------------- | ------- | --------- | ----- | -------- | --------- | ------------------- | --------- | --------------- |
|
||||
| 1 | 301 | 1613556360008291100 | | 武器 | zh-cn | 以理服人 | 3 | 2021-02-17 18:45:09 | 123456789 | 301 |
|
||||
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
|
||||
|
||||
102
docs/项目资源说明.md
@@ -2,21 +2,25 @@
|
||||
Author: 目棃
|
||||
Date: 2023-03-10
|
||||
Description: 项目资源说明
|
||||
Update: 2023-05-19
|
||||
Update: 2023-08-31
|
||||
---
|
||||
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于`2023-03-10 22:05:44`
|
||||
>
|
||||
> 更新于 `2023-05-19 23:02:49`
|
||||
> 本文档 [`Front-matter`](https://github.com/BTMuli/Mucli#FrontMatter) 由 [MuCli](https://github.com/BTMuli/Mucli) 自动生成于 `2023-03-10 22:05:44`
|
||||
>
|
||||
> 更新于 `2023-08-31 11:28:01`
|
||||
|
||||
## 说明
|
||||
|
||||
本文档用于说明项目原始资源来源。
|
||||
|
||||
相关仓库:[TGAssistant](https://github.com/BTMuli/TGAssistant)。
|
||||
相关仓库:
|
||||
|
||||
- [TGAssistant](https://github.com/BTMuli/TGAssistant):项目下游仓库,用于处理项目数据。
|
||||
- [Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata):胡桃元数据仓库,项目大部分数据来源于此。
|
||||
- [Snap.Static](https://github.com/DGP-Studio/Snap.Static):胡桃静态资源仓库,项目部分图像资源来源于此。
|
||||
|
||||
> 如下 JSON 均经过处理,并未直接作为项目 JSON 数据使用。
|
||||
>
|
||||
>
|
||||
> 如下图像均经过 Sharp 处理转换为 webp 格式,并未直接作为项目图像资源使用。
|
||||
|
||||
## 侧边栏图标
|
||||
@@ -24,12 +28,13 @@ Update: 2023-05-19
|
||||
- 顶部收缩按钮:`mdi:chevron-right` `mdi:chevron-left`
|
||||
- 首页:[Fandom](https://genshin-impact.fandom.com/wiki/Genshin_Impact_Wiki)
|
||||
- 公告:个人绘制 SVG
|
||||
- 咨讯:[米游社](https://www.miyoushe.com)
|
||||
- 成就:个人绘制 SVG
|
||||
- 米游社:[米游社](https://www.miyoushe.com),其子目录同样来源于米游社
|
||||
- 图鉴:[原神「盛典与慧业」内容专题页](https://webstatic.mihoyo.com/ys/event/e20210601blue_post/vert.html?page_sn=b3a3f395f09e4f8d&bbs_presentation_style=fullscreen&utm_source=bbs&utm_medium=ys&utm_campaign=pgc)
|
||||
- GCG:个人绘制 SVG
|
||||
- 角色图鉴:[原神「盛典与慧业」内容专题页](https://webstatic.mihoyo.com/ys/event/e20210601blue_post/vert.html?page_sn=b3a3f395f09e4f8d&bbs_presentation_style=fullscreen&utm_source=bbs&utm_medium=ys&utm_campaign=pgc)
|
||||
- 武器图鉴:[原神「盛典与慧业」内容专题页](https://webstatic.mihoyo.com/ys/event/e20210601blue_post/vert.html?page_sn=b3a3f395f09e4f8d&bbs_presentation_style=fullscreen&utm_source=bbs&utm_medium=ys&utm_campaign=pgc)
|
||||
- 原神战绩:Hoyolab
|
||||
- 我的角色:Hoyolab
|
||||
- 深渊记录:Hoyolab
|
||||
- 祈愿记录:Hoyolab
|
||||
- 图鉴:Hoyolab,其子目录图标同样来源于 Hoyolab
|
||||
- 模式切换:`mdi-weather-night` `mdi-weather-sunny`
|
||||
- 设置:个人绘制 SVG
|
||||
|
||||
@@ -39,71 +44,15 @@ Update: 2023-05-19
|
||||
|
||||
## 成就相关
|
||||
|
||||
### JSON 数据
|
||||
|
||||
- [Achievement|Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata/blob/main/Output/CHS/Achievement.json)
|
||||
- [AchievementGoal|Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata/blob/main/Output/CHS/AchievementGoal.json)
|
||||
- [achievement|Paimon.Moe](https://github.com/MadeBaruna/paimon-moe/blob/main/src/data/achievement/zh.json)
|
||||
|
||||
### 图像资源
|
||||
|
||||
- [36691244|米游社](https://www.miyoushe.com/ys/article/36691244)
|
||||
- [成就系统|原神WIKI](https://wiki.biligame.com/ys/%E6%88%90%E5%B0%B1%E7%B3%BB%E7%BB%9F)
|
||||
- [HoneyHunterWorld](https://genshin.honeyhunterworld.com/?lang=EN)
|
||||
|
||||
### 格式说明
|
||||
|
||||
关于 JSON 数据格式,参见 [Achievements.d.ts](https://github.com/BTMuli/Tauri.Genshin/blob/master/src/types/Achievement.d.ts)。
|
||||
|
||||
关于图像资源格式,涉及到的图像类型及格式如下:
|
||||
|
||||
- 原石图标:`source/material/原石.webp`,256x256,32位深度
|
||||
- 成就系列图标:`source/achievementSeries/${series_id}.webp`,256x256,32位深度
|
||||
- 成就系列对应名片图标:见 [名片相关](#名片相关)
|
||||
参见 [TGAssistant](https://github.com/BTMuli/TGAssistant) 相关处理。
|
||||
|
||||
## 名片相关
|
||||
|
||||
### JSON 数据
|
||||
|
||||
为个人通过爬取 HoneyHunterWorld 生成的 JSON 数据,格式参见 [NameCard.d.ts](https://github.com/BTMuli/Tauri.Genshin/blob/master/src/types/NameCard.d.ts)。
|
||||
|
||||
参考:
|
||||
|
||||
- [HoneyHunterWorld](https://genshin.honeyhunterworld.com/?lang=CHS)
|
||||
- [原神WIKI|名片](https://wiki.biligame.com/ys/%E5%90%8D%E7%89%87)
|
||||
|
||||
### 图像资源
|
||||
|
||||
- [HoneyHunterWorld](https://genshin.honeyhunterworld.com/?lang=EN)
|
||||
|
||||
### 格式说明
|
||||
|
||||
- 名片图标:`source/nameCard/icon/${card.name}.webp`,250x165,32位深度
|
||||
- 名片bg:`source/nameCard/bg/${card.name}.webp`,880x140,32位深度
|
||||
- 名片profile:`source/nameCard/profile/${card.name}.webp`,840x400,32位深度
|
||||
|
||||
### 格式说明
|
||||
|
||||
- 卡牌图标:`source/gcg/card/${cardType}/${cardName}.webp`,420x720,32位深度
|
||||
参见 [TGAssistant](https://github.com/BTMuli/TGAssistant) 相关处理。
|
||||
|
||||
## 素材日历相关
|
||||
|
||||
### JSON 数据
|
||||
|
||||
为米游社观测枢 API 获取的 JSON 数据,格式参见 [Calendar.d.ts](https://github.com/BTMuli/Tauri.Genshin/blob/master/src/types/Calendar.d.ts)。
|
||||
|
||||
### 图像资源
|
||||
|
||||
- [HoneyHunterWorld](https://genshin.honeyhunterworld.com/?lang=EN)
|
||||
- [原神](https://ys.mihoyo.com/main/map)
|
||||
|
||||
### 格式说明
|
||||
|
||||
> 角色&武器资源见 [Wiki](#wiki)。
|
||||
|
||||
- 素材图标:`source/calendar/material/${sourceName}.webp`,128x128,32位深度
|
||||
- 星级图标:`icon/star/${star}.webp`,133x29,32位深度
|
||||
- 地区图标: `icon/nation/${nation}.webp`,256x256,32位深度
|
||||
参见 [TGAssistant](https://github.com/BTMuli/TGAssistant) 相关处理。
|
||||
|
||||
## Wiki
|
||||
|
||||
@@ -111,8 +60,8 @@ Update: 2023-05-19
|
||||
|
||||
> 转换格式略。
|
||||
|
||||
- 角色图鉴:[Avatar|Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata/blob/main/Output/CHS/Avatar.json)
|
||||
- 武器图鉴:[Weapon|Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata/blob/main/Output/CHS/Weapon.json)
|
||||
- 角色图鉴:[Avatar|Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata/blob/main/Genshin/CHS/Avatar.json)
|
||||
- 武器图鉴:[Weapon|Snap.Metadata](https://github.com/DGP-Studio/Snap.Metadata/blob/main/Genshin/CHS/Weapon.json)
|
||||
- 卡牌图鉴:
|
||||
- [卡牌图鉴|米游社观测枢](https://bbs.mihoyo.com/ys/obc/channel/map/231)
|
||||
- [GCG|Ambr.top](https://ambr.top/chs/gcg)
|
||||
@@ -131,9 +80,8 @@ Update: 2023-05-19
|
||||
>
|
||||
> iconType 为 `normal` 或 `special`,目前只有 `normal`。
|
||||
|
||||
- 角色图鉴:`WIKI/character/icon/${avatarId}.webp`,256x256,32位深度
|
||||
- 武器图鉴:`WIKI/weapon/icon/${weaponId}.webp`,256x256,32位深度
|
||||
- 角色图鉴:`WIKI/character/icon/${avatarId}.webp`,256x256,32 位深度
|
||||
- 武器图鉴:`WIKI/weapon/icon/${weaponId}.webp`,256x256,32 位深度
|
||||
- 卡牌图鉴:
|
||||
- 卡牌背景:`WIKI/GCG/${iconType}/${cardName}.webp`,420x720,32位深度
|
||||
- 卡牌图标:`WIKI/GCG/bg.${bgType}.webp`,420x720,32位深度
|
||||
|
||||
- 卡牌背景:`WIKI/GCG/${iconType}/${cardName}.webp`,420x720,32 位深度
|
||||
- 卡牌图标:`WIKI/GCG/bg.${bgType}.webp`,420x720,32 位深度
|
||||
|
||||
22
index.html
@@ -1,14 +1,14 @@
|
||||
<!DOCTYPE html>
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/icon.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Tauri.Genshin</title>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/icon.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Tauri.Genshin</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
18
latest.json
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"version": "0.1.6",
|
||||
"notes": "See the assets to download this version and install.",
|
||||
"pub_date": "2023-05-28T08:35:02.837Z",
|
||||
"platforms": {
|
||||
"windows-x86_64": {
|
||||
"signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVSWkdzekNNZjh1aHFFWURpcFZoU0Urb1NhRGRlazZQbkZLUUpUckJHQllYOGhQL01WNm1WSVh6SktkZURZVGd6SVJpYi81dG9aZTZ3ejB0YWJ3SjkvUW1xYTNwZTFxaHc0PQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNjg1MjYyODc4CWZpbGU6dGF1cmktZ2Vuc2hpbl8wLjEuNl94NjRfemgtQ04ubXNpLnppcAp6MVgwcVVXa3BwS0tjcHlkK05mYk9ManFTWmRhUTI5ajN2Qk9KYjJwRlR4OU9mbUszaWR0eFZDR2UyMEZDbHFNalhWcmtYYWh4M1FxTkowdzZjV1JBdz09Cg==",
|
||||
"url": "https://github.com/BTMuli/Tauri.Genshin/releases/download/v0.1.6/tauri-genshin_0.1.6_x64_zh-CN.msi.zip"
|
||||
}
|
||||
}
|
||||
"version": "0.2.2",
|
||||
"notes": "https://github.com/BTMuli/Tauri.Genshin/releases/tag/v0.2.2",
|
||||
"pub_date": "2023-08-15T10:14:58.074Z",
|
||||
"platforms": {
|
||||
"windows-x86_64": {
|
||||
"signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVSWkdzekNNZjh1aHR0bUFueFlVV0trZ1F6VzQvNk8vYjdpby95WWEyVXZ3U1pnazErVWRPVE5BcGNNOFRCdlVFb3FtRERZRkpITlhaSy9MYUNHakRzQlNVSXR6elJRL2c0PQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNjkyMDk0NDc5CWZpbGU6dGF1cmktZ2Vuc2hpbl8wLjIuMl94NjRfemgtQ04ubXNpLnppcApoUi9QVlduMkxKTDFERnBYc3U5WTg1eEFDWERWanA1QUhNZUpSb1ZsVG1jMHlMQ1RCMExZZ3dtclRuUktmak5HNkFFSmEwdytHYWRZZGZKcnRHTGFEdz09Cg==",
|
||||
"url": "https://github.com/BTMuli/Tauri.Genshin/releases/download/v0.2.2/tauri-genshin_0.2.2_x64_zh-CN.msi.zip"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
6229
package-lock.json
generated
175
package.json
@@ -1,83 +1,96 @@
|
||||
{
|
||||
"name": "tauri-genshin",
|
||||
"description": "A Tauri App Demo",
|
||||
"private": true,
|
||||
"version": "0.2.0",
|
||||
"author": "BTMuli <bt-muli@outlook.com>",
|
||||
"packageManager": "npm@9.6.6",
|
||||
"scripts": {
|
||||
"build": "tauri build",
|
||||
"debug": "tauri build --debug",
|
||||
"dev": "concurrently -k \"tauri dev --exit-on-panic\" \"vue-devtools\"",
|
||||
"lint": "concurrently \"npm:lint:*(!fix)\"",
|
||||
"lint:code": "eslint \"./src/**/*.{vue,ts,tsx,js,jsx}\"",
|
||||
"lint:code:fix": "npm run lint:code -- --fix",
|
||||
"lint:fix": "concurrently \"npm:lint:*:fix\"",
|
||||
"lint:style": "stylelint \"./src/**/*.{vue,css}\"",
|
||||
"lint:style:fix": "npm run lint:style -- --fix",
|
||||
"prettier": "prettier \"**/*.{json,yml,html}\" --write",
|
||||
"tauri": "tauri",
|
||||
"update:submodule": "git submodule update --remote --recursive",
|
||||
"vite:dev": "vite dev",
|
||||
"vite:build": "vite build"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/BTMuli/Tauri.Genshin/issues"
|
||||
},
|
||||
"directories": {
|
||||
"doc": "docs"
|
||||
},
|
||||
"homepage": "https://github.com/BTMuli/Tauri.Genshin#readme",
|
||||
"keywords": [
|
||||
"Tauri",
|
||||
"Node",
|
||||
"Typescript",
|
||||
"Vite",
|
||||
"Genshin Impact",
|
||||
"Vuetify"
|
||||
],
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/BTMuli/Tauri.Genshin.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@mdi/font": "7.2.96",
|
||||
"@tauri-apps/api": "^1.3.0",
|
||||
"clipboard": "^2.0.11",
|
||||
"html2canvas": "^1.4.1",
|
||||
"js-md5": "^0.7.3",
|
||||
"pinia": "^2.0.36",
|
||||
"pinia-plugin-persistedstate": "^3.1.0",
|
||||
"tauri-plugin-sql-api": "github:tauri-apps/tauri-plugin-sql",
|
||||
"vue": "^3.3.1",
|
||||
"vue-json-viewer": "^3.0.4",
|
||||
"vue-router": "^4.1.6",
|
||||
"vuetify": "^3.2.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tauri-apps/cli": "^1.3.1",
|
||||
"@types/js-md5": "^0.7.0",
|
||||
"@types/node": "^20.1.2",
|
||||
"@typescript-eslint/eslint-plugin": "^5.59.5",
|
||||
"@typescript-eslint/parser": "^5.59.5",
|
||||
"@vitejs/plugin-vue": "^4.2.2",
|
||||
"@vue/devtools": "^6.5.0",
|
||||
"concurrently": "^8.0.1",
|
||||
"eslint": "^8.40.0",
|
||||
"eslint-config-standard-with-typescript": "^34.0.1",
|
||||
"eslint-plugin-import": "^2.27.5",
|
||||
"eslint-plugin-n": "^15.7.0",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-vue": "^9.12.0",
|
||||
"prettier": "2.8.8",
|
||||
"stylelint": "^15.6.1",
|
||||
"stylelint-config-standard-vue": "^1.0.0",
|
||||
"stylelint-declaration-block-no-ignored-properties": "^2.7.0",
|
||||
"stylelint-high-performance-animation": "^1.8.0",
|
||||
"stylelint-order": "^6.0.3",
|
||||
"typescript": "^5.0.4",
|
||||
"vite": "^4.3.9",
|
||||
"vite-plugin-vuetify": "^1.0.2"
|
||||
}
|
||||
"name": "tauri-genshin",
|
||||
"description": "A Genshin Tool build with Tauri",
|
||||
"private": true,
|
||||
"version": "0.2.3",
|
||||
"author": "BTMuli <bt-muli@outlook.com>",
|
||||
"packageManager": "pnpm@8.7.0",
|
||||
"scripts": {
|
||||
"build": "tauri build",
|
||||
"debug": "tauri build --debug",
|
||||
"dev": "concurrently -k \"tauri dev --exit-on-panic\" \"vue-devtools\"",
|
||||
"lint": "concurrently \"pnpm:lint:*(!fix)\"",
|
||||
"lint:fix": "concurrently \"pnpm:lint:*:fix\"",
|
||||
"lint:code": "eslint .",
|
||||
"lint:code:fix": "eslint . --fix",
|
||||
"lint:style": "stylelint \"src/**/*.{vue,css}\"",
|
||||
"lint:style:fix": "pnpm lint:style --fix",
|
||||
"prettier": "prettier . --write",
|
||||
"tauri": "tauri",
|
||||
"vite:dev": "vite dev",
|
||||
"vite:build": "vite build",
|
||||
"prepare": "husky install"
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{ts,vue}": "eslint --fix",
|
||||
"*.{vue,css}": "stylelint --fix",
|
||||
"*.{ts,vue,css,yml,json,md}": "prettier --write"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/BTMuli/Tauri.Genshin/issues"
|
||||
},
|
||||
"directories": {
|
||||
"doc": "docs"
|
||||
},
|
||||
"homepage": "https://github.com/BTMuli/Tauri.Genshin#readme",
|
||||
"keywords": [
|
||||
"Tauri",
|
||||
"Node",
|
||||
"Typescript",
|
||||
"Vite",
|
||||
"Genshin Impact",
|
||||
"Vuetify"
|
||||
],
|
||||
"license": "MIT",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/BTMuli/Tauri.Genshin.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@mdi/font": "7.2.96",
|
||||
"@tauri-apps/api": "^1.4.0",
|
||||
"clipboard": "^2.0.11",
|
||||
"echarts": "^5.4.3",
|
||||
"html2canvas": "^1.4.1",
|
||||
"js-md5": "^0.7.3",
|
||||
"pinia": "^2.1.6",
|
||||
"pinia-plugin-persistedstate": "^3.2.0",
|
||||
"tauri-plugin-sql-api": "github:tauri-apps/tauri-plugin-sql#v1",
|
||||
"vue": "^3.3.4",
|
||||
"vue-echarts": "^6.6.1",
|
||||
"vue-json-viewer": "^3.0.4",
|
||||
"vue-router": "^4.2.4",
|
||||
"vuetify": "^3.3.14"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tauri-apps/cli": "^1.4.0",
|
||||
"@types/js-md5": "^0.7.0",
|
||||
"@types/node": "^20.5.6",
|
||||
"@typescript-eslint/eslint-plugin": "^6.4.1",
|
||||
"@typescript-eslint/parser": "^6.4.1",
|
||||
"@vitejs/plugin-vue": "^4.3.3",
|
||||
"@vue/devtools": "^6.5.0",
|
||||
"concurrently": "^8.2.1",
|
||||
"eslint": "^8.48.0",
|
||||
"eslint-config-prettier": "^9.0.0",
|
||||
"eslint-config-standard-with-typescript": "^38.0.0",
|
||||
"eslint-plugin-import": "^2.28.1",
|
||||
"eslint-plugin-n": "^16.0.2",
|
||||
"eslint-plugin-prettier": "^5.0.0",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-vue": "^9.17.0",
|
||||
"husky": "^8.0.3",
|
||||
"lint-staged": "^14.0.1",
|
||||
"prettier": "3.0.2",
|
||||
"stylelint": "^15.10.3",
|
||||
"stylelint-config-idiomatic-order": "^9.0.0",
|
||||
"stylelint-config-standard-vue": "^1.0.0",
|
||||
"stylelint-declaration-block-no-ignored-properties": "^2.7.0",
|
||||
"stylelint-high-performance-animation": "^1.9.0",
|
||||
"stylelint-order": "^6.0.3",
|
||||
"stylelint-prettier": "^4.0.2",
|
||||
"typescript": "^5.2.2",
|
||||
"vite": "^4.4.9",
|
||||
"vite-plugin-vuetify": "^1.0.2"
|
||||
}
|
||||
}
|
||||
|
||||
5023
pnpm-lock.yaml
generated
Normal file
BIN
public/WIKI/GCG/normal/七七.webp
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
public/WIKI/GCG/normal/丽莎.webp
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
public/WIKI/GCG/normal/坎蒂丝.webp
Normal file
|
After Width: | Height: | Size: 72 KiB |
BIN
public/WIKI/GCG/normal/塞塔蕾.webp
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
public/WIKI/GCG/normal/大梦的曲调.webp
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
public/WIKI/GCG/normal/愉舞欢游.webp
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
public/WIKI/GCG/normal/旧时庭园.webp
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
public/WIKI/GCG/normal/最终解释权.webp
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
public/WIKI/GCG/normal/枫原万叶.webp
Normal file
|
After Width: | Height: | Size: 61 KiB |
BIN
public/WIKI/GCG/normal/烟绯.webp
Normal file
|
After Width: | Height: | Size: 70 KiB |
BIN
public/WIKI/GCG/normal/王下近侍.webp
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
public/WIKI/GCG/normal/盈满之实.webp
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
public/WIKI/GCG/normal/磐岩盟契.webp
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
public/WIKI/GCG/normal/神性之陨.webp
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
public/WIKI/GCG/normal/老章.webp
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
public/WIKI/GCG/normal/脉冲的魔女.webp
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
public/WIKI/GCG/normal/藏锋何处.webp
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
public/WIKI/GCG/normal/衍溢的汐潮.webp
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
public/WIKI/GCG/normal/起死回骸.webp
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
public/WIKI/GCG/normal/阿贝多.webp
Normal file
|
After Width: | Height: | Size: 72 KiB |
BIN
public/WIKI/GCG/normal/风物之诗咏.webp
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
public/WIKI/GCG/normal/黄金屋.webp
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
public/WIKI/character/icon/10000083.webp
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
public/WIKI/character/icon/10000084.webp
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
public/WIKI/character/icon/10000085.webp
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
public/WIKI/weapon/icon/11424.webp
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
BIN
public/WIKI/weapon/icon/11425.webp
Normal file
|
After Width: | Height: | Size: 9.6 KiB |
BIN
public/WIKI/weapon/icon/11426.webp
Normal file
|
After Width: | Height: | Size: 8.2 KiB |
BIN
public/WIKI/weapon/icon/12424.webp
Normal file
|
After Width: | Height: | Size: 9.8 KiB |
BIN
public/WIKI/weapon/icon/12425.webp
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
public/WIKI/weapon/icon/13424.webp
Normal file
|
After Width: | Height: | Size: 9.4 KiB |
BIN
public/WIKI/weapon/icon/13425.webp
Normal file
|
After Width: | Height: | Size: 7.9 KiB |
BIN
public/WIKI/weapon/icon/14424.webp
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/WIKI/weapon/icon/14425.webp
Normal file
|
After Width: | Height: | Size: 8.8 KiB |
BIN
public/WIKI/weapon/icon/15424.webp
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/WIKI/weapon/icon/15425.webp
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
public/WIKI/weapon/icon/15512.webp
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_1_0.webp
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_1_1.webp
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_2_0.webp
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_2_1.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_2_2.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_3_0.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_3_1.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_3_2.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_3_3.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A001.webp
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A001_Part2.webp
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A001_Part3.webp
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A001_Part4.webp
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A002.webp
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A003.webp
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A004.webp
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A005.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A006.webp
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A007.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A007_Part2.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A007_Part3.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A008.webp
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A008_Part2.webp
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A008_Part3.webp
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A009.webp
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A010.webp
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A011.webp
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A012.webp
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A013.webp
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A013_Part2.webp
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A014.webp
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A015.webp
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_A016.webp
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B001.webp
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B001_Part2.webp
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B002.webp
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B003.webp
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B004.webp
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B004_Part2.webp
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B004_Part3.webp
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
public/icon/achievement/UI_AchievementIcon_B004_Part4.webp
Normal file
|
After Width: | Height: | Size: 32 KiB |