UPDATE: New monster data
All checks were successful
Gitea Auto Deploy / Deploy-Container (push) Successful in 1m20s
All checks were successful
Gitea Auto Deploy / Deploy-Container (push) Successful in 1m20s
This commit is contained in:
@@ -1,6 +0,0 @@
|
||||
export type AffixDetail = {
|
||||
property: string;
|
||||
base: number;
|
||||
step: number;
|
||||
step_num: number;
|
||||
}
|
||||
@@ -1,70 +1,124 @@
|
||||
import { ChallengeDetail, EventStageDetail } from "./mocDetail"
|
||||
import { BuffDetail, OptionDetail } from "./pfDetail"
|
||||
import { ExtraEffect } from "./avatarDetail";
|
||||
import { InfiniteWave, MazeBuff } from "./pfDetail";
|
||||
|
||||
export interface ASDetail {
|
||||
Id: number
|
||||
Name: string
|
||||
Buff?: BuffDetail
|
||||
BuffList1: OptionDetail[]
|
||||
BuffList2: OptionDetail[]
|
||||
BeginTime: string
|
||||
EndTime: string
|
||||
Level: ASLevel[]
|
||||
export interface ASGroupDetail {
|
||||
ID: number;
|
||||
ChallengeGroupType: string;
|
||||
Name: Record<string, string>;
|
||||
Image: ASGroupImage;
|
||||
BeginTime: string;
|
||||
EndTime: string;
|
||||
BuffList1: ASBuff[];
|
||||
BuffList2: ASBuff[];
|
||||
Level: ASLevel[];
|
||||
}
|
||||
|
||||
export interface ASGroupImage {
|
||||
BackGroundPath: string;
|
||||
TabPicPath: string;
|
||||
TabPicSelectPath: string;
|
||||
ThemePicPath: string;
|
||||
}
|
||||
|
||||
export interface ASBuff {
|
||||
ID: number;
|
||||
Param: number[];
|
||||
Icon: string;
|
||||
Name: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
ExtraList?: ExtraEffect[];
|
||||
}
|
||||
|
||||
export interface ASLevel {
|
||||
Id: number
|
||||
Name: string
|
||||
Challenge: ChallengeDetail[]
|
||||
DamageType1: string[]
|
||||
DamageType2: string[]
|
||||
MazeGroupID1: number
|
||||
MazeGroupID2: number
|
||||
BossMonsterID1: number
|
||||
BossMonsterID2: number
|
||||
BossMonsterID1SkillList: number[]
|
||||
BossMonsterID2SkillList: number[]
|
||||
BossMonsterConfig1: BossMonsterConfig
|
||||
BossMonsterConfig2: BossMonsterConfig
|
||||
EventIDList1: EventStageDetail[]
|
||||
EventIDList2: EventStageDetail[]
|
||||
Floor: number;
|
||||
ID: number;
|
||||
StageNum: number;
|
||||
Name: Record<string, string>;
|
||||
Target: ASTarget[];
|
||||
DamageType1: string[];
|
||||
DamageType2: string[];
|
||||
MazeBuff: MazeBuff[];
|
||||
TurnLimit: number;
|
||||
EventList1: ASEvent[];
|
||||
EventList2: ASEvent[];
|
||||
Monster1: ASMonster;
|
||||
Monster2: ASMonster;
|
||||
}
|
||||
|
||||
export interface BossMonsterConfig {
|
||||
Difficulty: number
|
||||
DifficultyList: number[]
|
||||
TagList: BossTag[]
|
||||
DifficultyGuideList: BossDifficultyGuide[]
|
||||
TextGuideList: string[]
|
||||
PhaseList: BossPhase[]
|
||||
export interface ASTarget {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Param: number[];
|
||||
}
|
||||
|
||||
export interface BossTag {
|
||||
Name: string
|
||||
Desc: string
|
||||
Param: number[]
|
||||
SkillID?: number | null
|
||||
ParamFix: number[]
|
||||
Child: BossChildTag[]
|
||||
export interface ASEvent {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
HardLevelGroup: number;
|
||||
EliteGroup: number;
|
||||
Level: number;
|
||||
Release: boolean;
|
||||
MonsterList: number[][];
|
||||
Infinite: InfiniteWave[] | null;
|
||||
}
|
||||
|
||||
export interface BossChildTag {
|
||||
Name: string
|
||||
Desc: string
|
||||
Param: number[]
|
||||
export interface ASMonster {
|
||||
ID: number;
|
||||
Tag: ASTag[];
|
||||
Phase: ASPhase[];
|
||||
DifficultyGuide: ASDifficultyGuide[];
|
||||
TextGuide: ASTextGuide[];
|
||||
}
|
||||
|
||||
export interface BossDifficultyGuide {
|
||||
Desc: string
|
||||
Param: number[]
|
||||
SkillID?: number | null
|
||||
ParamFix: number[]
|
||||
export interface ASTag {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
BriefDescription: Record<string, string>;
|
||||
Param: number[];
|
||||
SkillID: number | null;
|
||||
Effect: ASEffect[];
|
||||
}
|
||||
|
||||
export interface BossPhase {
|
||||
Name: string
|
||||
Desc: string
|
||||
Answer: string
|
||||
Difficulty: number
|
||||
SkillList: number[]
|
||||
export interface ASEffect {
|
||||
ID: number;
|
||||
Desc: Record<string, string>;
|
||||
Name: Record<string, string>;
|
||||
Icon: string;
|
||||
Param: number[];
|
||||
EffectType: number;
|
||||
}
|
||||
|
||||
export interface ASPhase {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Answer: Record<string, string>;
|
||||
Description: Record<string, string>;
|
||||
SkillList: ASSkillList[];
|
||||
}
|
||||
|
||||
export interface ASSkillList {
|
||||
ID: number;
|
||||
SkillType: string;
|
||||
Name: Record<string, string>;
|
||||
TextList: ASTextList[];
|
||||
}
|
||||
|
||||
export interface ASTextList {
|
||||
ID: number;
|
||||
Description: Record<string, string>;
|
||||
Param: number[];
|
||||
Effect: ASEffect[];
|
||||
}
|
||||
|
||||
export interface ASDifficultyGuide {
|
||||
ID: number;
|
||||
Description: Record<string, string>;
|
||||
Param: number[];
|
||||
SkillID: number | null;
|
||||
}
|
||||
|
||||
export interface ASTextGuide {
|
||||
ID: number;
|
||||
Description: Record<string, string>;
|
||||
Param: number[];
|
||||
}
|
||||
225
src/types/avatarDetail.ts
Normal file
225
src/types/avatarDetail.ts
Normal file
@@ -0,0 +1,225 @@
|
||||
|
||||
export interface AvatarDetail {
|
||||
ID: number;
|
||||
BaseType: string;
|
||||
DamageType: string;
|
||||
Name: Record<string, string>;
|
||||
Image: AvatarImage;
|
||||
Release: boolean;
|
||||
MaxPromotion: number;
|
||||
MaxRank: number;
|
||||
SPNeed: number | null;
|
||||
Rarity: string;
|
||||
BGDesc: Record<string, string>;
|
||||
Lightcones: number[];
|
||||
Stats: Record<string, StatLevel>;
|
||||
Skins: Record<string, AvatarSkin>;
|
||||
Ranks: Record<string, RankDetail>;
|
||||
Skills: Record<string, SkillDetail>;
|
||||
Memosprite: Memosprite | null;
|
||||
SkillTrees: Record<string, Record<string, SkillTreePoint>>;
|
||||
Relics: Relics;
|
||||
Teams: AvatarTeams;
|
||||
Enhanced: Record<string, EnhancedData> | null;
|
||||
Unique: Record<string, GlobalBuff> | null;
|
||||
MazeBuff: number[];
|
||||
}
|
||||
|
||||
export interface AvatarImage {
|
||||
DefaultAvatarHeadIconPath: string;
|
||||
AvatarSideIconPath: string;
|
||||
AvatarMiniIconPath: string;
|
||||
AvatarGachaResultImgPath: string;
|
||||
ActionAvatarHeadIconPath: string;
|
||||
SideAvatarHeadIconPath: string;
|
||||
WaitingAvatarHeadIconPath: string;
|
||||
AvatarCutinImgPath: string;
|
||||
AvatarCutinBgImgPath: string;
|
||||
AvatarCutinFrontImgPath: string;
|
||||
AvatarIconPath: string;
|
||||
}
|
||||
|
||||
|
||||
export interface StatLevel {
|
||||
Promotion: number;
|
||||
MaxLevel: number;
|
||||
WorldLevelRequirement: number;
|
||||
PlayerLevelRequirement: number;
|
||||
AttackBase: number;
|
||||
AttackAdd: number;
|
||||
DefenceBase: number;
|
||||
DefenceAdd: number;
|
||||
HPBase: number;
|
||||
HPAdd: number;
|
||||
SpeedBase: number;
|
||||
CriticalChance: number;
|
||||
CriticalDamage: number;
|
||||
BaseAggro: number;
|
||||
}
|
||||
|
||||
export interface AvatarSkin {
|
||||
ID: number;
|
||||
Type: string;
|
||||
PlayerCardID: number;
|
||||
Name: Record<string, string>;
|
||||
PlayerCardTitleText: Record<string, string>;
|
||||
AvatarNameOnDropSkin: Record<string, string>;
|
||||
AvatarSkinSynopsis: Record<string, string>;
|
||||
Image: AvatarSkinImage;
|
||||
}
|
||||
|
||||
export interface AvatarSkinImage {
|
||||
AvatarCutinFrontImgPath: string;
|
||||
DefaultAvatarHeadIconPath: string;
|
||||
AdventureDefaultAvatarHeadIconPath: string;
|
||||
WaitingAvatarHeadIconPath: string;
|
||||
ActionAvatarHeadIconPath: string;
|
||||
SideAvatarHeadIconPath: string;
|
||||
AvatarSideIconPath: string;
|
||||
AvatarCutinImgPath: string;
|
||||
AvatarCutinBgImgPath: string;
|
||||
AvatarMiniIconPath: string;
|
||||
DressIconPath: string;
|
||||
}
|
||||
|
||||
export interface RankDetail {
|
||||
Rank: number;
|
||||
Name: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
RankAbility: string[];
|
||||
SkillAddLevelList: Record<string, number>;
|
||||
Icon: string;
|
||||
Image: string;
|
||||
Param: number[];
|
||||
Extra: Record<string, ExtraEffect>;
|
||||
}
|
||||
|
||||
export interface ExtraEffect {
|
||||
ID: number;
|
||||
Desc: Record<string, string>;
|
||||
Name: Record<string, string>;
|
||||
Icon: string;
|
||||
Param: number[];
|
||||
EffectType: number;
|
||||
}
|
||||
|
||||
export interface SkillDetail {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Tag: Record<string, string>;
|
||||
TypeDesc: Record<string, string>;
|
||||
MaxLevel: number;
|
||||
Level: Record<string, SkillLevel>;
|
||||
Icon: string;
|
||||
Desc: Record<string, string>;
|
||||
RatedSkillTreeID: number[];
|
||||
RatedRankID: number[];
|
||||
Extra: Record<string, ExtraEffect>;
|
||||
SPBase: number | null;
|
||||
StanceDamageDisplay: number;
|
||||
SPMultipleRatio: number | null;
|
||||
BPNeed: number | null;
|
||||
BPAdd: number | null;
|
||||
StanceDamageType: string | null;
|
||||
AttackType: string | null;
|
||||
SkillEffect: string;
|
||||
}
|
||||
|
||||
export interface SkillLevel {
|
||||
Level: number;
|
||||
Param: number[];
|
||||
}
|
||||
|
||||
export interface Memosprite {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Image: MemospriteImage;
|
||||
Skills: Record<string, SkillDetail>;
|
||||
HPBase?: number | null;
|
||||
HPInherit?: number | null;
|
||||
HPSkill?: number | null;
|
||||
SpeedBase?: number | null;
|
||||
SpeedInherit?: number | null;
|
||||
SpeedSkill?: number | null;
|
||||
Aggro?: number | null;
|
||||
}
|
||||
|
||||
export interface MemospriteImage {
|
||||
HeadIcon: string;
|
||||
UnCreateHeadIconPath: string;
|
||||
WaitingServantHeadIconPath: string;
|
||||
ActionServantHeadIconPath: string;
|
||||
ServantSideIconPath: string;
|
||||
ServantMiniIconPath: string;
|
||||
}
|
||||
|
||||
export interface SkillTreePoint {
|
||||
PointID: number;
|
||||
PointType: number;
|
||||
AnchorType: string;
|
||||
Level: number;
|
||||
MaxLevel: number;
|
||||
PrePoint: number[];
|
||||
StatusAddList: StatusAdd[];
|
||||
LevelUpSkillID: number[];
|
||||
Icon: string;
|
||||
PointName: Record<string, string>;
|
||||
PointDesc: Record<string, string>;
|
||||
Extra: Record<string, ExtraEffect>;
|
||||
Param: number[];
|
||||
}
|
||||
|
||||
|
||||
export interface StatusAdd {
|
||||
PropertyType: string;
|
||||
Value: number;
|
||||
}
|
||||
|
||||
export interface Relics {
|
||||
Set4IDList: number[];
|
||||
Set2IDList: number[];
|
||||
PropertyList3: string[];
|
||||
PropertyList4: string[];
|
||||
PropertyList5: string[];
|
||||
PropertyList6: string[];
|
||||
PropertyList: RelicProperty[];
|
||||
SubAffixPropertyList: string[];
|
||||
ScoreRankList: number[];
|
||||
LocalCriticalChance: { Value: number };
|
||||
}
|
||||
|
||||
export interface RelicProperty {
|
||||
RelicType: string;
|
||||
PropertyType: string;
|
||||
}
|
||||
|
||||
export interface AvatarTeams {
|
||||
TeamID: number;
|
||||
Position: number;
|
||||
MemberList: number[];
|
||||
BackupList1: number[];
|
||||
BackupList2: number[];
|
||||
BackupList3: number[];
|
||||
BackupGroupList1: number[];
|
||||
BackupGroupList2: number[];
|
||||
BackupGroupList3: number[];
|
||||
}
|
||||
|
||||
export interface EnhancedData {
|
||||
EnhancedID: number;
|
||||
SPNeed: number | null;
|
||||
Ranks: Record<string, RankDetail>;
|
||||
Skills: Record<string, SkillDetail>;
|
||||
SkillTrees: Record<string, Record<string, SkillTreePoint>> | null;
|
||||
}
|
||||
|
||||
export interface GlobalBuff {
|
||||
ID: number;
|
||||
AvatarID: number;
|
||||
Name: Record<string, string>;
|
||||
Tag: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
Param: number[];
|
||||
Extra: Record<string, ExtraEffect>;
|
||||
MazeBuffID: number | null;
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
export interface CharacterBasic {
|
||||
id: string;
|
||||
icon: string;
|
||||
rank: string;
|
||||
baseType: string;
|
||||
damageType: string;
|
||||
lang: Record<string, string>;
|
||||
}
|
||||
@@ -1,180 +0,0 @@
|
||||
|
||||
export interface CharacterDetail {
|
||||
Name: string;
|
||||
Desc: string;
|
||||
CharaInfo: CharacterInfo;
|
||||
Rarity: string;
|
||||
AvatarVOTag: string;
|
||||
SPNeed: number | null;
|
||||
BaseType: string;
|
||||
DamageType: string;
|
||||
Ranks: Record<string, RankType>;
|
||||
Skills: Record<string, SkillType>;
|
||||
SkillTrees: Record<string, Record<string, SkillTreePoint>>;
|
||||
Memosprite: Memosprite;
|
||||
Unique: Record<string, UniqueAbility>;
|
||||
Stats: Record<string, Stat>;
|
||||
Relics: Relics;
|
||||
Enhanced: Record<string, EnhancedType>;
|
||||
RankIcon: string[];
|
||||
}
|
||||
|
||||
export interface EnhancedType {
|
||||
Descs: string[];
|
||||
ChangeRankList: unknown;
|
||||
ChangeSkillTreeList: unknown;
|
||||
Ranks: Record<string, RankType>;
|
||||
Skills: Record<string, SkillType>;
|
||||
SkillTrees: Record<string, Record<string, SkillTreePoint>>;
|
||||
}
|
||||
|
||||
export interface CharacterInfo {
|
||||
Camp: string | null;
|
||||
VA: VoiceActors;
|
||||
Stories: Record<string, string | null>;
|
||||
Voicelines: string[];
|
||||
}
|
||||
|
||||
export interface VoiceActors {
|
||||
Chinese: string | null;
|
||||
Japanese: string | null;
|
||||
Korean: string | null;
|
||||
English: string | null;
|
||||
}
|
||||
|
||||
export interface RankType {
|
||||
Id: number;
|
||||
Name: string;
|
||||
Desc: string;
|
||||
Icon: string;
|
||||
ParamList: number[];
|
||||
}
|
||||
|
||||
export interface SkillType {
|
||||
Id: number;
|
||||
Name: string;
|
||||
Desc: string | null;
|
||||
SimpleDesc: string;
|
||||
Type: string;
|
||||
Tag: string;
|
||||
SPBase: number | null;
|
||||
BPNeed: number;
|
||||
BPAdd: number;
|
||||
ShowStanceList: number[];
|
||||
SkillComboValueDelta: number | null;
|
||||
Level: Record<string, LevelParams>;
|
||||
}
|
||||
|
||||
export interface LevelParams {
|
||||
Level: number;
|
||||
ParamList: number[];
|
||||
}
|
||||
|
||||
export type StatusAddType = {
|
||||
$type: string;
|
||||
PropertyType: string;
|
||||
Value: number;
|
||||
Name: string;
|
||||
};
|
||||
|
||||
export interface SkillTreePoint {
|
||||
Anchor: string;
|
||||
AvatarPromotionLimit: number | null;
|
||||
AvatarLevelLimit: number | null;
|
||||
DefaultUnlock: boolean;
|
||||
Icon: string;
|
||||
LevelUpSkillID: number[];
|
||||
MaterialList: ItemConfigRow[];
|
||||
MaxLevel: number;
|
||||
ParamList: number[];
|
||||
PointID: number;
|
||||
PointName: string | null;
|
||||
PointDesc: string | null;
|
||||
PointTriggerKey: number;
|
||||
PointType: number;
|
||||
PrePoint: string[];
|
||||
StatusAddList: StatusAddType[];
|
||||
}
|
||||
|
||||
export interface ItemConfigRow {
|
||||
$type: string;
|
||||
ItemID: number;
|
||||
ItemNum: number;
|
||||
Rarity: string;
|
||||
}
|
||||
|
||||
export interface Memosprite {
|
||||
Name: string;
|
||||
Icon: string;
|
||||
HPBase: string;
|
||||
HPInherit: string;
|
||||
HPSkill: number | null;
|
||||
SpeedBase: string;
|
||||
SpeedInherit: string;
|
||||
SpeedSkill: number;
|
||||
Aggro: number;
|
||||
Skills: Record<string, SpriteSkill>;
|
||||
Talent: Record<string, unknown>;
|
||||
}
|
||||
|
||||
export interface SpriteSkill {
|
||||
Name: string;
|
||||
Desc: string | null;
|
||||
SimpleDesc: string;
|
||||
Type: string | null;
|
||||
Tag: string;
|
||||
SPBase: number | null;
|
||||
BPNeed: number;
|
||||
BPAdd: number | null;
|
||||
ShowStanceList: number[];
|
||||
SkillComboValueDelta: number | null;
|
||||
Extra: Record<string, Extra>;
|
||||
Level: Record<string, LevelParams>;
|
||||
}
|
||||
|
||||
export interface UniqueAbility {
|
||||
Tag: string;
|
||||
Name: string;
|
||||
Desc: string;
|
||||
Param: number[];
|
||||
Extra: Record<string, Extra>;
|
||||
}
|
||||
|
||||
export interface Extra {
|
||||
name: string;
|
||||
desc: string;
|
||||
param: number[];
|
||||
}
|
||||
|
||||
export interface Stat {
|
||||
AttackBase: number;
|
||||
AttackAdd: number;
|
||||
DefenceBase: number;
|
||||
DefenceAdd: number;
|
||||
HPBase: number;
|
||||
HPAdd: number;
|
||||
SpeedBase: number;
|
||||
CriticalChance: number;
|
||||
CriticalDamage: number;
|
||||
BaseAggro: number;
|
||||
Cost: ItemConfigRow[];
|
||||
}
|
||||
|
||||
export interface Relics {
|
||||
AvatarID: number;
|
||||
Set4IDList: number[];
|
||||
Set2IDList: number[];
|
||||
PropertyList3: string[];
|
||||
PropertyList4: string[];
|
||||
PropertyList5: string[];
|
||||
PropertyList6: string[];
|
||||
PropertyList: RelicRecommendProperty[];
|
||||
SubAffixPropertyList: string[];
|
||||
ScoreRankList: number[];
|
||||
}
|
||||
|
||||
export interface RelicRecommendProperty {
|
||||
$type: string;
|
||||
RelicType: string;
|
||||
PropertyType: string;
|
||||
}
|
||||
@@ -1,42 +0,0 @@
|
||||
|
||||
export type ASConfigMaze = {
|
||||
buff_1: number[];
|
||||
buff_2: number[];
|
||||
maze_buff: number;
|
||||
}
|
||||
|
||||
export type PFConfigMaze = {
|
||||
buff: number[];
|
||||
maze_buff: number;
|
||||
}
|
||||
|
||||
export type MOCConfigMaze = {
|
||||
maze_buff: number;
|
||||
}
|
||||
|
||||
export type AvatarConfigMaze = {
|
||||
maze_buff: number[];
|
||||
}
|
||||
|
||||
export type StageConfigMaze = {
|
||||
stage_id: number;
|
||||
stage_type: string;
|
||||
level: number;
|
||||
monster_list: Array<Record<string, number>>;
|
||||
};
|
||||
|
||||
export type SkillConfigMaze = {
|
||||
max_level: number;
|
||||
index_slot: number;
|
||||
}
|
||||
|
||||
export type ConfigMaze = {
|
||||
Avatar: Record<string, AvatarConfigMaze>;
|
||||
MOC: Record<string, MOCConfigMaze>;
|
||||
AS: Record<string, ASConfigMaze>;
|
||||
PF: Record<string, PFConfigMaze>;
|
||||
Stage: Record<string, StageConfigMaze>;
|
||||
Skill: Record<string, SkillConfigMaze>;
|
||||
};
|
||||
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
|
||||
export interface EventBasic {
|
||||
id: string;
|
||||
begin: string;
|
||||
end: string;
|
||||
lang: Record<string, string>;
|
||||
}
|
||||
|
||||
@@ -1,17 +1,10 @@
|
||||
export * from "./characterBasic"
|
||||
export * from "./characterDetail"
|
||||
export * from "./avatarDetail"
|
||||
export * from "./srtools"
|
||||
export * from "./filter"
|
||||
export * from "./mics"
|
||||
export * from "./config_maze"
|
||||
export * from "./lightconeBasic"
|
||||
export * from "./lightconeDetail"
|
||||
export * from "./relicDetail"
|
||||
export * from "./affix"
|
||||
export * from "./enka"
|
||||
export * from "./card"
|
||||
export * from "./eventBasic"
|
||||
export * from "./monsterBasic"
|
||||
export * from "./pfDetail"
|
||||
export * from "./asDetail"
|
||||
export * from "./mocDetail"
|
||||
@@ -20,4 +13,8 @@ export * from "./extraData"
|
||||
export * from "./showcase"
|
||||
export * from "./srtools"
|
||||
export * from "./changelog"
|
||||
export * from "./modelConfig"
|
||||
export * from "./modelConfig"
|
||||
export * from "./metaData"
|
||||
export * from "./monsterDetail"
|
||||
export * from "./filter"
|
||||
export * from "./metaData"
|
||||
@@ -1,8 +0,0 @@
|
||||
export interface LightConeBasic {
|
||||
id: string;
|
||||
rank: string;
|
||||
thumbnail: string
|
||||
image: string,
|
||||
baseType: string;
|
||||
lang: Record<string, string>;
|
||||
}
|
||||
@@ -1,27 +1,47 @@
|
||||
export interface LightConeDetail {
|
||||
Name: string;
|
||||
Desc: string;
|
||||
ID: number;
|
||||
Release: boolean;
|
||||
Name: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
Rarity: string;
|
||||
BaseType: string;
|
||||
Refinements: RefinementDetail;
|
||||
Stats: StatEntryDetail[];
|
||||
Bonus: Record<string, { type: string, value: number }[]>
|
||||
MaxPromotionLevel: number;
|
||||
MaxRank: number;
|
||||
Skills: LightconeSkill;
|
||||
Image: LightconeImage;
|
||||
Stats: Record<string, LightconeStatLevel>;
|
||||
}
|
||||
|
||||
interface RefinementDetail {
|
||||
Name: string;
|
||||
Desc: string;
|
||||
Level: Record<string, {
|
||||
ParamList: number[];
|
||||
}>;
|
||||
export interface LightconeSkill {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
AbilityName: string;
|
||||
Level: Record<string, LightconeSkillLevel>;
|
||||
}
|
||||
|
||||
interface StatEntryDetail {
|
||||
EquipmentID: number;
|
||||
Promotion?: number;
|
||||
PromotionCostList: PromotionCost[];
|
||||
PlayerLevelRequire?: number;
|
||||
WorldLevelRequire?: number;
|
||||
export interface LightconeSkillLevel {
|
||||
Level: number;
|
||||
Param: number[];
|
||||
Bonus: LightconeSkillBonus[];
|
||||
}
|
||||
|
||||
export interface LightconeSkillBonus {
|
||||
PropertyType: string;
|
||||
Value: number;
|
||||
}
|
||||
|
||||
export interface LightconeImage {
|
||||
ThumbnailPath: string;
|
||||
ImagePath: string;
|
||||
IconPath: string;
|
||||
FigureIconPath: string;
|
||||
}
|
||||
|
||||
export interface LightconeStatLevel {
|
||||
Promotion: number;
|
||||
PlayerLevelRequire: number;
|
||||
WorldLevelRequire: number;
|
||||
MaxLevel: number;
|
||||
BaseHP: number;
|
||||
BaseHPAdd: number;
|
||||
@@ -29,11 +49,4 @@ interface StatEntryDetail {
|
||||
BaseAttackAdd: number;
|
||||
BaseDefence: number;
|
||||
BaseDefenceAdd: number;
|
||||
}
|
||||
|
||||
interface PromotionCost {
|
||||
$type: string;
|
||||
ItemID: number;
|
||||
ItemNum: number;
|
||||
Rarity: string;
|
||||
}
|
||||
}
|
||||
59
src/types/metaData.ts
Normal file
59
src/types/metaData.ts
Normal file
@@ -0,0 +1,59 @@
|
||||
export interface Metadata {
|
||||
BaseType: Record<string, BaseTypeData>;
|
||||
DamageType: Record<string, DamageTypeData>;
|
||||
MainAffix: Record<string, Record<string, MainAffixData>>;
|
||||
SubAffix: Record<string, Record<string, SubAffixData>>;
|
||||
SkillConfig: Record<string, SkillMaxLevelData>;
|
||||
Stage: Record<string, StageData>;
|
||||
HardLevelConfig: Record<string, Record<string, HardLevelData>>;
|
||||
EliteConfig: Record<string, EliteData>;
|
||||
}
|
||||
|
||||
export interface HardLevelData {
|
||||
AttackRatio: number
|
||||
DefenceRatio: number
|
||||
HPRatio: number
|
||||
SpeedRatio: number
|
||||
StanceRatio: number
|
||||
}
|
||||
|
||||
export interface EliteData {
|
||||
AttackRatio: number
|
||||
DefenceRatio: number
|
||||
HPRatio: number
|
||||
SpeedRatio: number
|
||||
StanceRatio: number
|
||||
}
|
||||
|
||||
export interface StageData {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
}
|
||||
|
||||
export interface BaseTypeData {
|
||||
Text: Record<string, string>;
|
||||
Icon: string;
|
||||
}
|
||||
|
||||
export interface DamageTypeData {
|
||||
Name: Record<string, string>;
|
||||
Icon: string;
|
||||
}
|
||||
|
||||
export interface MainAffixData {
|
||||
Property: string;
|
||||
BaseValue: number;
|
||||
LevelAdd: number;
|
||||
}
|
||||
|
||||
export interface SubAffixData {
|
||||
Property: string;
|
||||
BaseValue: number;
|
||||
StepValue: number;
|
||||
StepNum: number;
|
||||
}
|
||||
|
||||
export interface SkillMaxLevelData {
|
||||
MaxLevel: number;
|
||||
IndexSlot: number;
|
||||
}
|
||||
@@ -1,50 +1,49 @@
|
||||
export interface MocDetail {
|
||||
Id: number
|
||||
Name: string
|
||||
GroupName: string
|
||||
Desc: string
|
||||
Param: number[]
|
||||
Challenge: ChallengeDetail[]
|
||||
Countdown: number
|
||||
DamageType1: string[]
|
||||
DamageType2: string[]
|
||||
MazeGroupID1: number
|
||||
MazeGroupID2: number
|
||||
NpcMonsterIDList1: number[]
|
||||
NpcMonsterIDList2: number[]
|
||||
EventIDList1: EventStageDetail[]
|
||||
EventIDList2: EventStageDetail[]
|
||||
BeginTime: string
|
||||
EndTime: string
|
||||
import { InfiniteWave, MazeBuff } from "./pfDetail";
|
||||
|
||||
export interface MOCGroupDetail {
|
||||
ID: number;
|
||||
ChallengeGroupType: string;
|
||||
Name: Record<string, string>;
|
||||
Image: MoCImage;
|
||||
BeginTime: string;
|
||||
EndTime: string;
|
||||
Level: MoCLevel[];
|
||||
}
|
||||
|
||||
export interface ChallengeDetail {
|
||||
Name: string
|
||||
Param?: number | null
|
||||
export interface MoCImage {
|
||||
BackGroundPath: string;
|
||||
TabPicPath: string;
|
||||
TabPicSelectPath: string;
|
||||
ThemePicPath: string;
|
||||
}
|
||||
|
||||
export interface EventStageDetail {
|
||||
StageID: number
|
||||
StageType: string
|
||||
StageName: number
|
||||
HardLevelGroup: number
|
||||
Level: number
|
||||
EliteGroup?: number
|
||||
LevelGraphPath: string
|
||||
StageAbilityConfig: unknown[]
|
||||
BattleScoringGroup?: number | null
|
||||
SubLevelGraphs: unknown[]
|
||||
StageConfigData: StageConfig[]
|
||||
MonsterList: Record<string, number>[]
|
||||
LevelLoseCondition: string[]
|
||||
LevelWinCondition: string[]
|
||||
Release: boolean
|
||||
ForbidExitBattle: boolean
|
||||
MonsterWarningRatio?: number | null
|
||||
TrialAvatarList: unknown[]
|
||||
}
|
||||
export interface StageConfig {
|
||||
$type: string
|
||||
[key: string]: string
|
||||
export interface MoCLevel {
|
||||
Floor: number;
|
||||
ID: number;
|
||||
StageNum: number;
|
||||
Name: Record<string, string>;
|
||||
Target: MoCTarget[];
|
||||
TurnLimit: number;
|
||||
DamageType1: string[];
|
||||
DamageType2: string[];
|
||||
MazeBuff: MazeBuff[];
|
||||
EventList1: MoCEvent[];
|
||||
EventList2: MoCEvent[];
|
||||
}
|
||||
|
||||
export interface MoCTarget {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Param: number[];
|
||||
}
|
||||
|
||||
export interface MoCEvent {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
HardLevelGroup: number;
|
||||
EliteGroup: number;
|
||||
Level: number;
|
||||
Release: boolean;
|
||||
MonsterList: number[][];
|
||||
Infinite: InfiniteWave[] | null;
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
|
||||
export interface MonsterBasic {
|
||||
id: string;
|
||||
rank: string;
|
||||
icon: string;
|
||||
image: string;
|
||||
weak: string[];
|
||||
desc: Record<string, string>;
|
||||
lang: Record<string, string>;
|
||||
}
|
||||
|
||||
|
||||
45
src/types/monsterDetail.ts
Normal file
45
src/types/monsterDetail.ts
Normal file
@@ -0,0 +1,45 @@
|
||||
|
||||
export interface MonsterDetail {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
EliteGroup: number;
|
||||
HardLevelGroup: number;
|
||||
StanceWeakList: string[];
|
||||
Modify: MonsterModify;
|
||||
Rank: string;
|
||||
StanceCount: number;
|
||||
StanceType: string;
|
||||
Image: MonsterImage;
|
||||
Base: MonsterBase;
|
||||
}
|
||||
|
||||
|
||||
export interface MonsterModify {
|
||||
AttackModifyRatio: number;
|
||||
DefenceModifyRatio: number;
|
||||
HPModifyRatio: number;
|
||||
SpeedModifyRatio: number;
|
||||
StanceModifyRatio: number;
|
||||
SpeedModifyValue: number;
|
||||
StanceModifyValue: number;
|
||||
}
|
||||
|
||||
export interface MonsterImage {
|
||||
IconPath: string;
|
||||
RoundIconPath: string;
|
||||
ImagePath: string;
|
||||
ManikinImagePath: string;
|
||||
}
|
||||
|
||||
export interface MonsterBase {
|
||||
AttackBase: number;
|
||||
DefenceBase: number;
|
||||
HPBase: number;
|
||||
SpeedBase: number;
|
||||
StanceBase: number;
|
||||
CriticalDamageBase: number;
|
||||
StatusResistanceBase: number;
|
||||
SpeedModifyValue: number;
|
||||
StanceModifyValue: number;
|
||||
InitialDelayRatio: number;
|
||||
}
|
||||
@@ -1,37 +1,49 @@
|
||||
import { EventStageDetail } from "./mocDetail";
|
||||
import { InfiniteWave } from "./pfDetail";
|
||||
import { BattleTarget, InfiniteWave, MazeBuff } from "./pfDetail";
|
||||
|
||||
export interface PeakDetail {
|
||||
Id: number;
|
||||
Name: string;
|
||||
PreLevel: PeakLevel[];
|
||||
BossLevel: PeakLevel;
|
||||
BossConfig: BossConfig;
|
||||
export interface PeakGroupDetail {
|
||||
ID: number;
|
||||
ChallengeGroupType: string;
|
||||
Name: Record<string, string>;
|
||||
Image: PeakGroupImage;
|
||||
PreLevel: PeakMazeConfig[];
|
||||
BossLevel: PeakMazeConfig | null;
|
||||
BossConfig: PeakBossConfig | null;
|
||||
}
|
||||
|
||||
export interface PeakLevel {
|
||||
Id: number;
|
||||
Name: string;
|
||||
export interface PeakGroupImage {
|
||||
ThemePosterTabPicPath: string;
|
||||
ThemeIconPicPath: string;
|
||||
HandBookPanelBannerPath: string;
|
||||
RankIconPathList: string[];
|
||||
}
|
||||
|
||||
export interface PeakMazeConfig {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
BattleTarget: BattleTarget[];
|
||||
DamageType: string[];
|
||||
MazeGroupID: number;
|
||||
NpcMonsterIDList: number[];
|
||||
EventIDList: EventStageDetail[];
|
||||
TagList: ChallengeTag[];
|
||||
InfiniteList: Record<string, InfiniteWave>;
|
||||
MazeBuff: MazeBuff[];
|
||||
TurnLimit: number;
|
||||
EventList: PeakEvent[];
|
||||
}
|
||||
|
||||
export interface BossConfig {
|
||||
HardName: string;
|
||||
BuffList: ChallengeTag[];
|
||||
EventIDList: EventStageDetail[];
|
||||
TagList: ChallengeTag[];
|
||||
InfiniteList: Record<string, InfiniteWave>;
|
||||
}
|
||||
|
||||
export interface ChallengeTag {
|
||||
Id: number;
|
||||
Name: string;
|
||||
Desc: string;
|
||||
Param: number[];
|
||||
export interface PeakBossConfig {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
BuffList: MazeBuff[];
|
||||
BattleTarget: BattleTarget[];
|
||||
MazeBuff: MazeBuff[];
|
||||
TurnLimit: number;
|
||||
EventList: PeakEvent[];
|
||||
}
|
||||
|
||||
export interface PeakEvent {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
HardLevelGroup: number;
|
||||
EliteGroup: number;
|
||||
Level: number;
|
||||
Release: boolean;
|
||||
MonsterList: number[][];
|
||||
Infinite: InfiniteWave[] | null;
|
||||
}
|
||||
@@ -1,51 +1,72 @@
|
||||
import { ChallengeDetail, EventStageDetail } from "./mocDetail"
|
||||
|
||||
export interface PFDetail {
|
||||
Id: number
|
||||
Name: string
|
||||
Buff: BuffDetail
|
||||
Option: OptionDetail[]
|
||||
SubOption: OptionDetail[]
|
||||
BeginTime: string
|
||||
EndTime: string
|
||||
Level: PFLevel[]
|
||||
export interface PFGroupDetail {
|
||||
ID: number;
|
||||
ChallengeGroupType: string;
|
||||
Name: Record<string, string>;
|
||||
Image: PFGroupImage;
|
||||
BeginTime: string;
|
||||
EndTime: string;
|
||||
SubOption: MazeBuff[];
|
||||
Option: MazeBuff[];
|
||||
Level: LevelData[];
|
||||
}
|
||||
|
||||
export interface BuffDetail {
|
||||
Name?: string | null
|
||||
Desc?: string | null
|
||||
Param: number[]
|
||||
export interface PFGroupImage {
|
||||
BackGroundPath: string;
|
||||
TabPicPath: string;
|
||||
TabPicSelectPath: string;
|
||||
ThemePicPath: string;
|
||||
}
|
||||
|
||||
export interface OptionDetail {
|
||||
Name: string
|
||||
Desc: string
|
||||
Param: number[]
|
||||
export interface MazeBuff {
|
||||
ID: number;
|
||||
Param: number[];
|
||||
Icon: string;
|
||||
Name: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
}
|
||||
|
||||
export interface PFLevel {
|
||||
Id: number
|
||||
Name: string
|
||||
Challenge: ChallengeDetail[]
|
||||
DamageType1: string[]
|
||||
DamageType2: string[]
|
||||
MazeGroupID1: number
|
||||
MazeGroupID2: number
|
||||
NpcMonsterIDList1: number[]
|
||||
NpcMonsterIDList2: number[]
|
||||
EventIDList1: EventStageDetail[]
|
||||
EventIDList2: EventStageDetail[]
|
||||
InfiniteList1: Record<string, InfiniteWave>
|
||||
InfiniteList2: Record<string, InfiniteWave>
|
||||
export interface LevelData {
|
||||
Floor: number;
|
||||
ID: number;
|
||||
StageNum: number;
|
||||
Name: Record<string, string>;
|
||||
Target: StoryTarget[];
|
||||
DamageType1: string[];
|
||||
DamageType2: string[];
|
||||
MazeBuff: MazeBuff[];
|
||||
EventList1: StageConfig[];
|
||||
EventList2: StageConfig[];
|
||||
TurnLimit: number;
|
||||
BattleTarget: BattleTarget[];
|
||||
ClearScore: number;
|
||||
}
|
||||
|
||||
export interface StoryTarget {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Param: number[];
|
||||
}
|
||||
|
||||
export interface BattleTarget {
|
||||
ID: number;
|
||||
Param: number[];
|
||||
Name: Record<string, string>;
|
||||
}
|
||||
|
||||
export interface StageConfig {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
HardLevelGroup: number;
|
||||
EliteGroup: number;
|
||||
Level: number;
|
||||
Release: boolean;
|
||||
MonsterList: number[][];
|
||||
Infinite?: InfiniteWave[] | null;
|
||||
}
|
||||
|
||||
export interface InfiniteWave {
|
||||
InfiniteWaveID: number
|
||||
MonsterGroupIDList: number[]
|
||||
MaxMonsterCount: number
|
||||
MaxTeammateCount: number
|
||||
Ability: string
|
||||
ParamList: number[]
|
||||
ClearPreviousAbility: boolean
|
||||
EliteGroup: number
|
||||
}
|
||||
ID: number;
|
||||
MaxMonsterCount: number;
|
||||
MonsterList: number[];
|
||||
EliteGroup: number;
|
||||
}
|
||||
@@ -1,19 +1,59 @@
|
||||
export interface PartData {
|
||||
Name: string;
|
||||
Desc: string;
|
||||
Story: string;
|
||||
}
|
||||
|
||||
export interface RequireBonus {
|
||||
Desc: string;
|
||||
ParamList: number[];
|
||||
}
|
||||
|
||||
export interface RelicDetail {
|
||||
Name: string;
|
||||
Icon: string;
|
||||
Parts: Record<string, PartData>;
|
||||
RequireNum: Record<string, RequireBonus>;
|
||||
Bonus: Record<string, { type: string, value: number }[]>
|
||||
|
||||
export interface RelicSetDetail {
|
||||
ID: number;
|
||||
Name: Record<string, string>;
|
||||
Image: RelicSetImage;
|
||||
Release: boolean;
|
||||
ReleaseVersion: string;
|
||||
IsPlanarSuit: boolean;
|
||||
DisplayItemID: number;
|
||||
DisplayItemIDRarity4: number;
|
||||
SkillList: number[];
|
||||
Skills: Record<string, RelicSkill>;
|
||||
Parts: Record<string, RelicPart>;
|
||||
}
|
||||
|
||||
export interface RelicSetImage {
|
||||
SetIconPath: string;
|
||||
SetIconFigurePath: string;
|
||||
}
|
||||
|
||||
export interface RelicSkill {
|
||||
RequireNum: number;
|
||||
Desc: Record<string, string>;
|
||||
AbilityName: string;
|
||||
Param: number[];
|
||||
Bonus: RelicSkillBonus[];
|
||||
}
|
||||
|
||||
export interface RelicSkillBonus {
|
||||
PropertyType: string;
|
||||
Value: number;
|
||||
}
|
||||
|
||||
export interface RelicPart {
|
||||
Type: string;
|
||||
Image: RelicPartImage;
|
||||
Name: Record<string, string>;
|
||||
Desc: Record<string, string>;
|
||||
Data: Record<string, RelicPartData> | null;
|
||||
}
|
||||
|
||||
export interface RelicPartImage {
|
||||
IconPath: string;
|
||||
ItemFigureIconPath: string;
|
||||
}
|
||||
|
||||
export interface RelicPartData {
|
||||
ID: number;
|
||||
SetID: number;
|
||||
Type: string;
|
||||
Rarity: string;
|
||||
MainAffixGroup: number;
|
||||
SubAffixGroup: number;
|
||||
MaxLevel: number;
|
||||
ExpType: number;
|
||||
ExpProvide: number;
|
||||
CoinCost: number;
|
||||
Mode: string;
|
||||
}
|
||||
Reference in New Issue
Block a user