hypixel-api-reborn 11.2.0 → 11.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/eslint.config.mjs +71 -0
- package/package.json +14 -20
- package/src/API/getAchievements.js +1 -0
- package/src/API/getBoosters.js +1 -0
- package/src/API/getChallenges.js +1 -0
- package/src/API/getGameCounts.js +1 -0
- package/src/API/getGuild.js +4 -3
- package/src/API/getGuildAchievements.js +1 -0
- package/src/API/getLeaderboards.js +1 -1
- package/src/API/getPlayer.js +1 -0
- package/src/API/getQuests.js +1 -0
- package/src/API/getRecentGames.js +5 -9
- package/src/API/getServerInfo.js +40 -37
- package/src/API/getStatus.js +1 -0
- package/src/API/getWatchdogStats.js +1 -0
- package/src/API/housing/getActiveHouses.js +7 -0
- package/src/API/housing/getHouse.js +9 -0
- package/src/API/housing/getPlayerHouses.js +11 -0
- package/src/API/index.js +6 -1
- package/src/API/skyblock/getAuction.js +8 -6
- package/src/API/skyblock/getAuctions.js +15 -12
- package/src/API/skyblock/getAuctionsByPlayer.js +1 -1
- package/src/API/skyblock/getBazaar.js +1 -3
- package/src/API/skyblock/getBingo.js +1 -2
- package/src/API/skyblock/getBingoByPlayer.js +3 -3
- package/src/API/skyblock/getEndedAuctions.js +1 -0
- package/src/API/skyblock/getFireSales.js +1 -1
- package/src/API/skyblock/getGarden.js +7 -0
- package/src/API/skyblock/getGovernment.js +1 -2
- package/src/API/skyblock/getMember.js +5 -2
- package/src/API/skyblock/getMuseum.js +1 -0
- package/src/API/skyblock/getNews.js +1 -0
- package/src/API/skyblock/getProfiles.js +5 -2
- package/src/Client.js +88 -16
- package/src/Private/rateLimit.js +7 -11
- package/src/Private/requests.js +12 -13
- package/src/Private/updater.js +2 -3
- package/src/Private/uuidCache.js +1 -2
- package/src/Private/validate.js +19 -19
- package/src/index.js +5 -0
- package/src/structures/APIIncident.js +1 -2
- package/src/structures/APIStatus.js +0 -1
- package/src/structures/Boosters/Booster.js +9 -8
- package/src/structures/Game.js +1 -1
- package/src/structures/Guild/Guild.js +19 -36
- package/src/structures/Guild/GuildMember.js +2 -2
- package/src/structures/House.js +54 -0
- package/src/structures/MiniGames/Arcade.js +798 -312
- package/src/structures/MiniGames/ArenaBrawl.js +98 -32
- package/src/structures/MiniGames/BedWars.js +197 -194
- package/src/structures/MiniGames/BlitzSurvivalGames.js +381 -129
- package/src/structures/MiniGames/BuildBattle.js +19 -8
- package/src/structures/MiniGames/CopsAndCrims.js +253 -25
- package/src/structures/MiniGames/Duels.js +905 -664
- package/src/structures/MiniGames/MegaWalls.js +390 -51
- package/src/structures/MiniGames/MurderMystery.js +151 -30
- package/src/structures/MiniGames/Paintball.js +31 -11
- package/src/structures/MiniGames/Pit.js +4 -5
- package/src/structures/MiniGames/Quakecraft.js +113 -50
- package/src/structures/MiniGames/SkyWars.js +528 -372
- package/src/structures/MiniGames/SmashHeroes.js +201 -73
- package/src/structures/MiniGames/SpeedUHC.js +77 -24
- package/src/structures/MiniGames/TNTGames.js +242 -73
- package/src/structures/MiniGames/TurboKartRacers.js +55 -115
- package/src/structures/MiniGames/UHC.js +144 -132
- package/src/structures/MiniGames/VampireZ.js +70 -37
- package/src/structures/MiniGames/Warlords.js +126 -1
- package/src/structures/MiniGames/WoolWars.js +60 -9
- package/src/structures/Pet.js +1 -1
- package/src/structures/Player.js +43 -128
- package/src/structures/PlayerCosmetics.js +5 -4
- package/src/structures/SkyBlock/Auctions/AuctionInfo.js +2 -1
- package/src/structures/SkyBlock/Auctions/BaseAuction.js +1 -1
- package/src/structures/SkyBlock/News/SkyblockNews.js +15 -15
- package/src/structures/SkyBlock/PlayerBingo.js +7 -14
- package/src/structures/SkyBlock/SkyblockGarden.js +146 -0
- package/src/structures/SkyBlock/SkyblockInventoryItem.js +4 -28
- package/src/structures/SkyBlock/SkyblockMember.js +90 -228
- package/src/structures/SkyBlock/SkyblockPet.js +3 -4
- package/src/structures/SkyBlock/Static/Bingo.js +10 -11
- package/src/structures/SkyBlock/Static/BingoData.js +1 -1
- package/src/structures/Static/Achievement.js +16 -15
- package/src/structures/Static/AchievementTier.js +2 -2
- package/src/structures/Static/Quest.js +2 -2
- package/src/utils/Constants.js +522 -520
- package/src/utils/{guildExp.js → Guild.js} +42 -12
- package/src/utils/Player.js +112 -0
- package/src/utils/SkyblockUtils.js +482 -192
- package/src/utils/arrayTools.js +1 -1
- package/src/utils/divide.js +1 -1
- package/src/utils/index.js +2 -1
- package/src/utils/isGuildID.js +1 -1
- package/src/utils/oscillation.js +4 -2
- package/src/utils/removeSnakeCase.js +11 -7
- package/src/utils/rgbToHexColor.js +1 -1
- package/src/utils/romanize.js +3 -3
- package/src/utils/toUuid.js +4 -4
- package/src/utils/varInt.js +2 -2
- package/typings/index.d.ts +1186 -967
- package/src/utils/toIGN.js +0 -24
|
@@ -32,16 +32,6 @@ class Paintball {
|
|
|
32
32
|
* @type {number}
|
|
33
33
|
*/
|
|
34
34
|
this.wins = data.wins || 0;
|
|
35
|
-
/**
|
|
36
|
-
* Losses
|
|
37
|
-
* @type {number}
|
|
38
|
-
*/
|
|
39
|
-
this.losses = data.losses || 0;
|
|
40
|
-
/**
|
|
41
|
-
* Win Loss ratio
|
|
42
|
-
* @type {number}
|
|
43
|
-
*/
|
|
44
|
-
this.WLRatio = divide(this.wins, this.losses);
|
|
45
35
|
/**
|
|
46
36
|
* Shots fired
|
|
47
37
|
* @type {number}
|
|
@@ -56,12 +46,42 @@ class Paintball {
|
|
|
56
46
|
* Forcefield Time
|
|
57
47
|
* @type {number}
|
|
58
48
|
*/
|
|
59
|
-
this.
|
|
49
|
+
this.forceFieldTime = data.forcefieldTime || 0;
|
|
60
50
|
/**
|
|
61
51
|
* Hat
|
|
62
52
|
* @type {string}
|
|
63
53
|
*/
|
|
64
54
|
this.hat = data.hat || 'None';
|
|
55
|
+
/**
|
|
56
|
+
* Adrenaline Perk Level
|
|
57
|
+
* @type {number}
|
|
58
|
+
*/
|
|
59
|
+
this.adrenaline = data.adrenaline || 0;
|
|
60
|
+
/**
|
|
61
|
+
* Endurance Perk Level
|
|
62
|
+
* @type {number}
|
|
63
|
+
*/
|
|
64
|
+
this.endurance = data.endurance || 0;
|
|
65
|
+
/**
|
|
66
|
+
* Fortune Perk Level
|
|
67
|
+
* @type {number}
|
|
68
|
+
*/
|
|
69
|
+
this.fortune = data.fortune || 0;
|
|
70
|
+
/**
|
|
71
|
+
* Godfather Perk Level
|
|
72
|
+
* @type {number}
|
|
73
|
+
*/
|
|
74
|
+
this.godfather = data.godfather || 0;
|
|
75
|
+
/**
|
|
76
|
+
* Superluck Perk Level
|
|
77
|
+
* @type {number}
|
|
78
|
+
*/
|
|
79
|
+
this.superluck = data.superluck || 0;
|
|
80
|
+
/**
|
|
81
|
+
* Transfusion Perk Level
|
|
82
|
+
* @type {number}
|
|
83
|
+
*/
|
|
84
|
+
this.transfusion = data.transfusion || 0;
|
|
65
85
|
}
|
|
66
86
|
}
|
|
67
87
|
module.exports = Paintball;
|
|
@@ -30,7 +30,7 @@ class Pit {
|
|
|
30
30
|
* @type {number}
|
|
31
31
|
*/
|
|
32
32
|
this.level =
|
|
33
|
-
Pit.calcLevel(this.prestige, this.prestige
|
|
33
|
+
Pit.calcLevel(this.prestige, 0 < this.prestige ? this.xp - Prestiges[this.prestige - 1].SumXp : this.xp).level ??
|
|
34
34
|
0;
|
|
35
35
|
/**
|
|
36
36
|
* Kills
|
|
@@ -169,7 +169,7 @@ class Pit {
|
|
|
169
169
|
edited.push(new PitInventoryItem(inventory[i]));
|
|
170
170
|
}
|
|
171
171
|
return edited;
|
|
172
|
-
} catch
|
|
172
|
+
} catch {
|
|
173
173
|
return [];
|
|
174
174
|
}
|
|
175
175
|
};
|
|
@@ -191,7 +191,7 @@ class Pit {
|
|
|
191
191
|
edited.push(new PitInventoryItem(chest[i]));
|
|
192
192
|
}
|
|
193
193
|
return edited;
|
|
194
|
-
} catch
|
|
194
|
+
} catch {
|
|
195
195
|
return [];
|
|
196
196
|
}
|
|
197
197
|
};
|
|
@@ -221,7 +221,7 @@ class Pit {
|
|
|
221
221
|
static calcLevel(prestige, xp) {
|
|
222
222
|
const multiplier = Prestiges[prestige].Multiplier;
|
|
223
223
|
let level = 0;
|
|
224
|
-
while (
|
|
224
|
+
while (0 < xp && 120 > level) {
|
|
225
225
|
const levelXp = Levels[Math.floor(level / 10)].Xp * multiplier;
|
|
226
226
|
if (xp >= levelXp * 10) {
|
|
227
227
|
xp -= levelXp * 10;
|
|
@@ -229,7 +229,6 @@ class Pit {
|
|
|
229
229
|
} else {
|
|
230
230
|
const gain = Math.floor(xp / levelXp);
|
|
231
231
|
level += gain;
|
|
232
|
-
xp -= gain * levelXp;
|
|
233
232
|
xp = 0;
|
|
234
233
|
}
|
|
235
234
|
}
|
|
@@ -1,4 +1,55 @@
|
|
|
1
1
|
const divide = require('../../utils/divide');
|
|
2
|
+
|
|
3
|
+
class QuakecraftMode {
|
|
4
|
+
/**
|
|
5
|
+
* @param {object} data Quakecraft data
|
|
6
|
+
* @param {string} gamemode Gamemode Name
|
|
7
|
+
*/
|
|
8
|
+
constructor(data, gamemode) {
|
|
9
|
+
if (gamemode) gamemode = `_${gamemode}`;
|
|
10
|
+
/**
|
|
11
|
+
* Wins
|
|
12
|
+
* @type {number}
|
|
13
|
+
*/
|
|
14
|
+
this.wins = data[`wins${gamemode}`] || 0;
|
|
15
|
+
/**
|
|
16
|
+
* Kills
|
|
17
|
+
* @type {number}
|
|
18
|
+
*/
|
|
19
|
+
this.kills = data[`kills${gamemode}`] || 0;
|
|
20
|
+
/**
|
|
21
|
+
* Deaths
|
|
22
|
+
* @type {number}
|
|
23
|
+
*/
|
|
24
|
+
this.deaths = data[`deaths${gamemode}`] || 0;
|
|
25
|
+
/**
|
|
26
|
+
* Kill Death ratio
|
|
27
|
+
* @type {number}
|
|
28
|
+
*/
|
|
29
|
+
this.KDRatio = divide(this.kills, this.deaths);
|
|
30
|
+
/**
|
|
31
|
+
* Kill streaks
|
|
32
|
+
* @type {number}
|
|
33
|
+
*/
|
|
34
|
+
this.killstreaks = data[`killstreaks${gamemode}`] || 0;
|
|
35
|
+
/**
|
|
36
|
+
* Distance travelled
|
|
37
|
+
* @type {number}
|
|
38
|
+
*/
|
|
39
|
+
this.distanceTravelled = data[`distance_travelled${gamemode}`] || 0;
|
|
40
|
+
/**
|
|
41
|
+
* Shots fired
|
|
42
|
+
* @type {number}
|
|
43
|
+
*/
|
|
44
|
+
this.shotsFired = data[`shots_fired${gamemode}`] || 0;
|
|
45
|
+
/**
|
|
46
|
+
* Headshots
|
|
47
|
+
* @type {number}
|
|
48
|
+
*/
|
|
49
|
+
this.headshots = data[`headshots${gamemode}`] || 0;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
2
53
|
/**
|
|
3
54
|
* Quakecraft class
|
|
4
55
|
*/
|
|
@@ -12,90 +63,102 @@ class Quakecraft {
|
|
|
12
63
|
* @type {number}
|
|
13
64
|
*/
|
|
14
65
|
this.coins = data.coins || 0;
|
|
66
|
+
/**
|
|
67
|
+
* Solo Quakecraft stats
|
|
68
|
+
* @type {QuakecraftMode}
|
|
69
|
+
*/
|
|
70
|
+
this.solo = new QuakecraftMode(data);
|
|
71
|
+
/**
|
|
72
|
+
* Teams Quakecraft stats
|
|
73
|
+
* @type {QuakecraftMode}
|
|
74
|
+
*/
|
|
75
|
+
this.teams = new QuakecraftMode(data, 'teams');
|
|
76
|
+
/**
|
|
77
|
+
* Wins
|
|
78
|
+
* @type {number}
|
|
79
|
+
*/
|
|
80
|
+
this.wins = this.solo.wins + this.teams.wins;
|
|
15
81
|
/**
|
|
16
82
|
* Kills
|
|
17
83
|
* @type {number}
|
|
18
84
|
*/
|
|
19
|
-
this.kills =
|
|
85
|
+
this.kills = this.solo.kills + this.teams.kills;
|
|
20
86
|
/**
|
|
21
87
|
* Deaths
|
|
22
88
|
* @type {number}
|
|
23
89
|
*/
|
|
24
|
-
this.deaths =
|
|
90
|
+
this.deaths = this.solo.deaths + this.teams.deaths;
|
|
25
91
|
/**
|
|
26
92
|
* Kill Death ratio
|
|
27
93
|
* @type {number}
|
|
28
94
|
*/
|
|
29
95
|
this.KDRatio = divide(this.kills, this.deaths);
|
|
30
96
|
/**
|
|
31
|
-
*
|
|
97
|
+
* Kill streaks
|
|
32
98
|
* @type {number}
|
|
33
99
|
*/
|
|
34
|
-
this.
|
|
100
|
+
this.killstreaks = this.solo.killstreaks + this.teams.killstreaks;
|
|
35
101
|
/**
|
|
36
102
|
* Distance travelled
|
|
37
103
|
* @type {number}
|
|
38
104
|
*/
|
|
39
|
-
this.distanceTravelled =
|
|
105
|
+
this.distanceTravelled = this.solo.distanceTravelled + this.teams.distanceTravelled;
|
|
40
106
|
/**
|
|
41
|
-
*
|
|
107
|
+
* Shots fired
|
|
42
108
|
* @type {number}
|
|
43
109
|
*/
|
|
44
|
-
this.
|
|
110
|
+
this.shotsFired = this.solo.shotsFired + this.teams.shotsFired;
|
|
45
111
|
/**
|
|
46
|
-
*
|
|
112
|
+
* Headshots
|
|
47
113
|
* @type {number}
|
|
48
114
|
*/
|
|
49
|
-
this.
|
|
115
|
+
this.headshots = this.solo.headshots + this.teams.headshots;
|
|
50
116
|
/**
|
|
51
|
-
*
|
|
52
|
-
* @type {
|
|
117
|
+
* Instant Respawn
|
|
118
|
+
* @type {boolean}
|
|
53
119
|
*/
|
|
54
|
-
this.
|
|
120
|
+
this.instantRespawn = data.instantRespawn || false;
|
|
55
121
|
/**
|
|
56
|
-
*
|
|
57
|
-
* @type {
|
|
122
|
+
* Kill Prefix Color
|
|
123
|
+
* @type {string}
|
|
124
|
+
*/
|
|
125
|
+
this.killPrefixColor = data.selectedKillPrefix || '';
|
|
126
|
+
/**
|
|
127
|
+
* Show Prefix
|
|
128
|
+
* @type {boolean}
|
|
129
|
+
*/
|
|
130
|
+
this.showPrefix = data.showKillPrefix || false;
|
|
131
|
+
/**
|
|
132
|
+
* Kill Sound
|
|
133
|
+
* @type {string}
|
|
58
134
|
*/
|
|
59
|
-
this.
|
|
135
|
+
this.killSound = data.killsound || '';
|
|
60
136
|
/**
|
|
61
|
-
*
|
|
62
|
-
* @type {
|
|
137
|
+
* Barrel
|
|
138
|
+
* @type {string}
|
|
63
139
|
*/
|
|
64
|
-
this.
|
|
65
|
-
kills: data.kills || 0,
|
|
66
|
-
deaths: data.deaths || 0,
|
|
67
|
-
KDRatio: divide(data.kills, data.deaths),
|
|
68
|
-
wins: data.wins || 0,
|
|
69
|
-
distanceTravelled: data.distance_travelled || 0,
|
|
70
|
-
headshots: data.headshots || 0,
|
|
71
|
-
shotsFired: data.shots_fired || 0,
|
|
72
|
-
killstreaks: data.killstreaks || 0
|
|
73
|
-
};
|
|
140
|
+
this.barrel = data.barrel || '';
|
|
74
141
|
/**
|
|
75
|
-
*
|
|
76
|
-
* @type {
|
|
142
|
+
* Case
|
|
143
|
+
* @type {string}
|
|
77
144
|
*/
|
|
78
|
-
this.
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
145
|
+
this.case = data.case || '';
|
|
146
|
+
/**
|
|
147
|
+
* Muzzle
|
|
148
|
+
* @type {string}
|
|
149
|
+
*/
|
|
150
|
+
this.muzzle = data.muzzle || '';
|
|
151
|
+
/**
|
|
152
|
+
* Sight
|
|
153
|
+
* @type {string}
|
|
154
|
+
*/
|
|
155
|
+
this.sight = data.sight || '';
|
|
156
|
+
/**
|
|
157
|
+
* Trigger
|
|
158
|
+
* @type {string}
|
|
159
|
+
*/
|
|
160
|
+
this.trigger = data.trigger || '';
|
|
88
161
|
}
|
|
89
162
|
}
|
|
163
|
+
|
|
90
164
|
module.exports = Quakecraft;
|
|
91
|
-
/**
|
|
92
|
-
* @typedef {object} QuakecraftModeStats
|
|
93
|
-
* @property {number} kills Kills
|
|
94
|
-
* @property {number} deaths Deaths
|
|
95
|
-
* @property {number} KDRatio Kill Death ratio
|
|
96
|
-
* @property {number} wins Wins
|
|
97
|
-
* @property {number} distanceTravelled Distance travelled
|
|
98
|
-
* @property {number} headshots Headshots
|
|
99
|
-
* @property {number} killstreaks Killstreaks
|
|
100
|
-
* @property {number} shotsFired Shots fired
|
|
101
|
-
*/
|