diff options
Diffstat (limited to 'build/cleaners')
-rw-r--r-- | build/cleaners/skyblock/member.js | 7 | ||||
-rw-r--r-- | build/cleaners/skyblock/profile.js | 27 |
2 files changed, 32 insertions, 2 deletions
diff --git a/build/cleaners/skyblock/member.js b/build/cleaners/skyblock/member.js index 218518d..a9a419a 100644 --- a/build/cleaners/skyblock/member.js +++ b/build/cleaners/skyblock/member.js @@ -30,6 +30,7 @@ const slayers_1 = require("./slayers"); const zones_1 = require("./zones"); const skills_1 = require("./skills"); const cached = __importStar(require("../../hypixelCached")); +const constants = __importStar(require("../../constants")); async function cleanSkyBlockProfileMemberResponseBasic(member, included = null) { const player = await cached.fetchPlayer(member.uuid); return { @@ -49,6 +50,10 @@ async function cleanSkyBlockProfileMemberResponse(member, included = null) { const player = await cached.fetchPlayer(member.uuid); if (!player) return; + const fairySouls = fairysouls_1.cleanFairySouls(member); + const { max_fairy_souls: maxFairySouls } = await constants.fetchConstantValues(); + if (fairySouls.total > (maxFairySouls !== null && maxFairySouls !== void 0 ? maxFairySouls : 0)) + await constants.setConstantValues({ max_fairy_souls: fairySouls.total }); return { uuid: member.uuid, username: player.username, @@ -60,7 +65,7 @@ async function cleanSkyBlockProfileMemberResponse(member, included = null) { // this is used for leaderboards rawHypixelStats: (_a = member.stats) !== null && _a !== void 0 ? _a : {}, minions: await minions_1.cleanMinions(member), - fairy_souls: fairysouls_1.cleanFairySouls(member), + fairy_souls: fairySouls, inventories: inventoriesIncluded ? await inventory_1.cleanInventories(member) : undefined, objectives: objectives_1.cleanObjectives(member), skills: skills_1.cleanSkills(member), diff --git a/build/cleaners/skyblock/profile.js b/build/cleaners/skyblock/profile.js index ba2c030..2ddcb83 100644 --- a/build/cleaners/skyblock/profile.js +++ b/build/cleaners/skyblock/profile.js @@ -1,9 +1,29 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; Object.defineProperty(exports, "__esModule", { value: true }); exports.cleanSkyblockProfileResponse = exports.cleanSkyblockProfileResponseLighter = void 0; const member_1 = require("./member"); const minions_1 = require("./minions"); const bank_1 = require("./bank"); +const constants = __importStar(require("../../constants")); /** Return a `CleanProfile` instead of a `CleanFullProfile`, useful when we need to get members but don't want to waste much ram */ async function cleanSkyblockProfileResponseLighter(data) { // We use Promise.all so it can fetch all the usernames at once instead of waiting for the previous promise to complete @@ -49,6 +69,11 @@ async function cleanSkyblockProfileResponse(data, options) { memberMinions.push(member.minions); } const minions = minions_1.combineMinionArrays(memberMinions); + const { max_minions: maxUniqueMinions } = await constants.fetchConstantValues(); + const uniqueMinions = minions_1.countUniqueMinions(minions); + console.log(uniqueMinions, (maxUniqueMinions !== null && maxUniqueMinions !== void 0 ? maxUniqueMinions : 0), uniqueMinions > (maxUniqueMinions !== null && maxUniqueMinions !== void 0 ? maxUniqueMinions : 0)); + if (uniqueMinions > (maxUniqueMinions !== null && maxUniqueMinions !== void 0 ? maxUniqueMinions : 0)) + await constants.setConstantValues({ max_minions: uniqueMinions }); // return more detailed info return { uuid: data.profile_id, @@ -56,7 +81,7 @@ async function cleanSkyblockProfileResponse(data, options) { members: cleanedMembers, bank: bank_1.cleanBank(data), minions: minions, - minion_count: minions_1.countUniqueMinions(minions) + minion_count: uniqueMinions }; } exports.cleanSkyblockProfileResponse = cleanSkyblockProfileResponse; |