-
Notifications
You must be signed in to change notification settings - Fork 0
/
types.d.ts
102 lines (96 loc) · 1.58 KB
/
types.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
interface ITypeRaw {
Name: string
Metal: string
Wood: string
Water: string
Fire: string
Earth: string
None: string
Heavy1: string
Heavy2: string
Light1: string
Light2: string
LowDensity1: string
LowDensity2: string
HighDensity1: string
HighDensity2: string
Soft1: string
Soft2: string
Hard1: string
Hard2: string
Smooth1: string
Smooth2: string
Rough1: string
Rough2: string
Sharp: string
Blunt: string
Elastic: string
Precise: string
SmallThing: string
Gravel: string
Liquid: string
GreatThing_AttackLow: string
GreatThing_Attack: string
GreatThing_Ling: string
GreatThing_Knock: string
GreatThing_Rot: string
GreatThing_Fly: string
}
type LabelName = keyof Omit<ITypeRaw, 'Name'>
interface ILabelRaw {
Label: LabelName
MaxQi: string
QiRecovery: string
AttackPower: string
FlyingSpeed: string
TurningSpeed: string
Knockback: string
KnockbackRes: string
TailLength: string
Volume: string
AttackSpeed: string
}
interface IStats {
MaxQi: number
QiRecovery: number
AttackPower: number
FlyingSpeed: number
TurningSpeed: number
Knockback: number
KnockbackRes: number
TailLength: number
Volume: number
AttackSpeed: number
}
interface ILabel {
name: LabelName
stats: IStats
}
interface IType {
name: string
labels: ILabel[]
}
interface IArtifact {
material: IType
item?: IType
labels: ILabel[]
bonuses: IStats
stats: IStats
statsAvg: IStats
statsMin: IStats
statsMax: IStats
ratios: {
powerToQi: {
val: number
avg: number
min: number
max: number
}
recoveryToQi: {
val: number
avg: number
min: number
max: number
}
}
}