UNPKG

farming-weight

Version:

Tools for calculating farming weight and fortune in Hypixel Skyblock

45 lines 1.98 kB
import { Rarity } from '../../constants/reforges.js'; import { Stat } from '../../constants/stats.js'; import { GemRarity } from '../../fortune/item.js'; import { getPeridotFortune, getPeridotGemFortune } from '../../util/gems.js'; import { getUpgradeableGems } from '../upgrades.js'; export const ACCESSORY_FORTUNE_SOURCES = [ { name: 'Base Stats', wiki: (accessory) => accessory.info.wiki, exists: (accessory) => { return (accessory.getLastItemUpgrade() ?? accessory)?.info?.baseStats?.[Stat.FarmingFortune] !== undefined; }, max: (accessory) => { return (accessory.getLastItemUpgrade() ?? accessory)?.info?.baseStats?.[Stat.FarmingFortune] ?? 0; }, current: (accessory) => { return accessory.info.baseStats?.[Stat.FarmingFortune] ?? 0; }, maxStat: (accessory, stat) => { return (accessory.getLastItemUpgrade() ?? accessory)?.info?.baseStats?.[stat] ?? 0; }, currentStat: (accessory, stat) => { return accessory.info.baseStats?.[stat] ?? 0; }, }, { name: 'Gemstone Slots', wiki: () => 'https://w.elitesb.gg/Gemstone_Slot', exists: (upgradeable) => { const last = (upgradeable.getLastItemUpgrade() ?? upgradeable)?.info; return last?.gemSlots?.some((s) => s.slot_type === 'PERIDOT') !== undefined; }, max: (upgradeable) => { const last = (upgradeable.getLastItemUpgrade() ?? upgradeable)?.info; return (0.5 * (last?.gemSlots?.filter((s) => s.slot_type === 'PERIDOT').length ?? 0) * getPeridotGemFortune(last?.maxRarity ?? Rarity.Common, GemRarity.Perfect)); }, current: (upgradeable) => { return 0.5 * getPeridotFortune(upgradeable.rarity, upgradeable.item); }, upgrades: getUpgradeableGems, }, ]; //# sourceMappingURL=accessorysources.js.map