UNPKG

farming-weight

Version:

Tools for calculating farming weight and fortune in Hypixel Skyblock

51 lines (50 loc) 2.46 kB
import type { LateCalculationContext, LateCalculationResult } from '../constants/latecalc.js'; import { Rarity } from '../constants/reforges.js'; import { Stat, type StatBreakdown } from '../constants/stats.js'; import { type FortuneSourceProgress, type FortuneUpgrade, type StatQueryOptions } from '../constants/upgrades.js'; import type { Effect, EffectEnvironment } from '../effects/types.js'; import { type FarmingPetInfo, type FarmingPetItemInfo, type FarmingPets, type FarmingPetType } from '../items/pets.js'; import type { FarmingPlayer } from '../player/player.js'; import type { PlayerOptions } from '../player/playeroptions.js'; import type { EliteItemDto } from './item.js'; export declare function createFarmingPet(pet: FarmingPetType): FarmingPet; export declare class FarmingPet { readonly pet: FarmingPetType; readonly type: FarmingPets; readonly info: FarmingPetInfo; readonly rarity: Rarity; readonly level: number; readonly item: FarmingPetItemInfo | undefined; fortune: number; breakdown: Record<string, number>; options?: PlayerOptions; constructor(pet: FarmingPetType, options?: PlayerOptions); setOptions(options: PlayerOptions): void; private computeFortune; getFortune(stat?: Stat, player?: FarmingPlayer): number; /** * Returns the declarative `Effect[]` representation of every per-stat * contribution this pet makes (base, per-level, per-rarity-level, abilities, * pet item) */ getEffects(_env: EffectEnvironment, player?: FarmingPlayer): Effect[]; getFullBreakdown(player?: FarmingPlayer): StatBreakdown; /** * Get late-phase stats for abilities that depend on total fortune. * Called after all base stats have been computed. */ getLateStats(ctx: LateCalculationContext): LateCalculationResult; getFormattedName(): string; getLevel(): number; getXpForLevel(level: number): number; private withChanges; private getStatTotals; private getBreakdownProgress; private getDeltaStats; private getProgressItem; getProgress(stats?: Stat[], player?: FarmingPlayer): FortuneSourceProgress[]; getUpgrades(options?: StatQueryOptions, player?: FarmingPlayer): FortuneUpgrade[]; getChimeraAffectedStats(multiplier: number): Record<Stat, number>; static isValid(pet: FarmingPetType): boolean | "" | undefined; static fromArray(items: EliteItemDto[], options?: PlayerOptions): FarmingPet[]; }