Skip to content

Commit 2633043

Browse files
committed
Update <Player>.stats.VampireZ
1 parent 1834808 commit 2633043

File tree

2 files changed

+86
-51
lines changed

2 files changed

+86
-51
lines changed
Lines changed: 70 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,34 @@
11
const divide = require('../../utils/divide');
2+
3+
class VampireZRole {
4+
/**
5+
* @param {object} data VampireZ data
6+
* @param {string} role VampireZ Role
7+
*/
8+
constructor(data, role) {
9+
/**
10+
* Kills
11+
* @type {number}
12+
*/
13+
this.kills = data[`${role}_kills`];
14+
/**
15+
* Deaths
16+
* @type {number}
17+
*/
18+
this.deaths = data[`${role}_deaths`];
19+
/**
20+
* KDRatio
21+
* @type {number}
22+
*/
23+
this.KDRatio = divide(this.kills, this.deaths);
24+
/**
25+
* Wins
26+
* @type {number}
27+
*/
28+
this.wins = data[`${role}_wins`];
29+
}
30+
}
31+
232
/**
333
* VampireZ class
434
*/
@@ -13,48 +43,51 @@ class VampireZ {
1343
*/
1444
this.coins = data.coins || 0;
1545
/**
16-
* Role Human
17-
* @type {VampireZHumanStats}
46+
* Gold Bought
47+
* @type {number}
1848
*/
19-
this.human = {
20-
kills: data.human_kills || 0,
21-
deaths: data.human_deaths || 0,
22-
KDRatio: divide(data.human_kills, data.human_wins),
23-
wins: data.human_wins || 0
24-
};
49+
this.goldBought = data.gold_bought || 0;
2550
/**
26-
* Role Zombie
27-
* @type {VampireZZombieStats}
51+
* Blood
52+
* @type {boolean}
53+
*/
54+
this.blood = data.blood || false;
55+
/**
56+
* Zombie Kills
57+
* @type {number}
2858
*/
29-
this.zombie = {
30-
kills: data.zombie_kills || 0
31-
};
59+
this.zombieKills = data.zombie_kills || 0;
3260
/**
33-
* Role Vampire
34-
* @type {VampireZVampireStats}
61+
* Human Stats
62+
* @type {VampireZRole}
3563
*/
36-
this.vampire = {
37-
kills: data.vampire_kills || 0,
38-
deaths: data.vampire_deaths || 0,
39-
KDRatio: divide(data.vampire_kills, data.vampire_wins)
40-
};
64+
this.human = new VampireZRole(data, 'human');
65+
/**
66+
* Vampire Stats
67+
* @type {VampireZRole}
68+
*/
69+
this.vampire = new VampireZRole(data, 'vampire');
70+
/**
71+
* Kills
72+
* @type {number}
73+
*/
74+
this.kills = this.human.kills + this.vampire.kills;
75+
/**
76+
* Deaths
77+
* @type {number}
78+
*/
79+
this.deaths = this.human.deaths + this.vampire.deaths;
80+
/**
81+
* KDRatio
82+
* @type {number}
83+
*/
84+
this.KDRatio = divide(this.kills, this.deaths);
85+
/**
86+
* Wins
87+
* @type {number}
88+
*/
89+
this.wins = this.human.wins + this.vampire.wins;
4190
}
4291
}
43-
/**
44-
* @typedef {object} VampireZHumanStats
45-
* @property {number} kills Kills
46-
* @property {number} deaths Deaths
47-
* @property {number} KDRatio Kill Death ratio
48-
* @property {number} wins Wins
49-
*/
50-
/**
51-
* @typedef {object} VampireZZombieStats
52-
* @property {number} kills Kills
53-
*/
54-
/**
55-
* @typedef {object} VampireZVampireStats
56-
* @property {number} kills Kills
57-
* @property {number} deaths Deaths
58-
* @property {number} KDRatio Kill Death ratio
59-
*/
92+
6093
module.exports = VampireZ;

typings/index.d.ts

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2193,23 +2193,25 @@ declare module 'hypixel-api-reborn' {
21932193
creepertamer: BlitzSGKit;
21942194
snowman: BlitzSGKit;
21952195
}
2196+
class VampireZRole {
2197+
constructor(data: Record<string, unknown>, role: string);
2198+
kills: number;
2199+
deaths: number;
2200+
KDRatio: number;
2201+
wins: number;
2202+
}
21962203
class VampireZ {
21972204
constructor(data: Record<string, unknown>);
21982205
coins: number;
2199-
human: {
2200-
kills: number;
2201-
deaths: number;
2202-
KDRatio: number;
2203-
wins: number;
2204-
};
2205-
zombie: {
2206-
kills: number;
2207-
};
2208-
vampire: {
2209-
kills: number;
2210-
deaths: number;
2211-
KDRatio: number;
2212-
};
2206+
goldBought: number;
2207+
blood: boolean;
2208+
zombieKills: number;
2209+
human: VampireZRole;
2210+
vampire: VampireZRole;
2211+
kills: number;
2212+
deaths: number;
2213+
KDRatio: number;
2214+
wins: number;
22132215
}
22142216
class SmashHeroesMode {
22152217
constructor(data: Record<string, unknown>, mode: string);

0 commit comments

Comments
 (0)