farming-weight
Version:
Tools for calculating farming weight and fortune in Hypixel Skyblock
54 lines (53 loc) • 1.7 kB
TypeScript
import { ArmorSetBonus, FarmingArmorInfo, GearSlot } from '../constants/armor';
import { Crop } from '../constants/crops';
import { Rarity, Reforge, ReforgeTier } from '../constants/reforges';
import { SpecialCrop } from '../constants/specialcrops';
import { EliteItemDto } from './item';
import { PlayerOptions } from './player';
export interface ActiveArmorSetBonus {
count: number;
from: GearSlot[];
bonus: ArmorSetBonus;
special?: SpecialCrop[];
}
export declare class ArmorSet {
helmet?: FarmingArmor;
chestplate?: FarmingArmor;
leggings?: FarmingArmor;
boots?: FarmingArmor;
get armor(): (FarmingArmor | null)[];
pieces: FarmingArmor[];
fortune: number;
setBonuses: ActiveArmorSetBonus[];
constructor(armor: FarmingArmor[]);
getPiece(slot: GearSlot): FarmingArmor | undefined;
setPiece(armor: FarmingArmor): void;
private recalculateFamilies;
getFortuneBreakdown(reloadFamilies?: boolean): Record<string, number>;
specialDropsCalc(
blocksBroken: number,
crop: Crop
): {
type: SpecialCrop;
amount: number;
npc: number;
} | null;
}
export declare class FarmingArmor {
readonly item: EliteItemDto;
readonly armor: FarmingArmorInfo;
get slot(): GearSlot;
readonly rarity: Rarity;
readonly reforge: Reforge | undefined;
readonly reforgeStats: ReforgeTier | undefined;
readonly recombobulated: boolean;
get potential(): number;
fortune: number;
fortuneBreakdown: Record<string, number>;
private options?;
constructor(item: EliteItemDto, options?: PlayerOptions);
setOptions(options: PlayerOptions): void;
private sumFortune;
static isValid(item: EliteItemDto): boolean;
static fromArray(items: EliteItemDto[], options?: PlayerOptions): FarmingArmor[];
}