farming-weight
Version:
Tools for calculating farming weight and fortune in Hypixel Skyblock
91 lines (90 loc) • 3.76 kB
TypeScript
import { Crop } from '../constants/crops.js';
import { FarmingAccessory } from '../fortune/farmingaccessory.js';
import { ArmorSet, FarmingArmor } from '../fortune/farmingarmor.js';
import { FarmingEquipment } from '../fortune/farmingequipment.js';
import { FarmingPet } from '../fortune/farmingpet.js';
import { FarmingTool } from '../fortune/farmingtool.js';
import { FarmingWeightInfo } from '../weight/weightcalc.js';
import type { PlayerOptions } from './playeroptions.js';
export declare function createFarmingPlayer(options: PlayerOptions): FarmingPlayer;
export declare class FarmingPlayer {
options: PlayerOptions;
permFortune: number;
tempFortune: number;
get fortune(): number;
breakdown: Record<string, number>;
tempFortuneBreakdown: Record<string, number>;
tools: FarmingTool[];
armor: FarmingArmor[];
armorSet: ArmorSet;
equipment: FarmingEquipment[];
accessories: FarmingAccessory[];
activeAccessories: FarmingAccessory[];
pets: FarmingPet[];
selectedTool?: FarmingTool;
selectedPet?: FarmingPet;
constructor(options: PlayerOptions);
changeArmor(armor: FarmingArmor[]): void;
selectTool(tool: FarmingTool): void;
selectPet(pet: FarmingPet): void;
setStrength(strength: number): void;
getProgress(): import("../index.js").FortuneSourceProgress[];
getGeneralFortune(): number;
getTempFortune(): number;
getCropFortune(crop: Crop, tool?: FarmingTool | undefined): {
fortune: number;
breakdown: Record<string, number>;
};
getCropProgress(crop: Crop): import("../index.js").FortuneSourceProgress[];
getWeightCalc(info?: FarmingWeightInfo): {
collection: Record<Crop, number>;
levelCapUpgrade: number;
farmingXp: number;
anitaBonusFarmingFortuneLevel: number;
tier12MinionCount: number;
earnedMedals: Record<"gold" | "platinum" | "diamond", number>;
cropWeights: Record<Crop, number>;
bonusSources: Record<string, number>;
uncountedCrops: Partial<Record<Crop, number>>;
readonly info?: FarmingWeightInfo | undefined;
setCropsFromCollections(collections: Record<string, number>): any;
setCrop: (crop: Crop, collection: number) => any;
setLevelCap: (levelCap: number) => any;
setFarmingXp: (farmingXp: number) => any;
setAnitaBonusLevel: (anitaBonusFarmingFortuneLevel: number) => any;
addMinions: (minions: string[]) => any;
setEarnedMedals: ({ diamond, platinum, gold }: {
diamond?: number | undefined;
platinum?: number | undefined;
gold?: number | undefined;
}) => any;
setTier12MinionCount: (count: number) => any;
setContests: (contests: {
collected: number;
claimed_position?: number | undefined;
claimed_participants?: number | undefined;
claimed_medal?: string | undefined;
}[] | undefined) => any;
getWeightInfo: () => {
totalWeight: number;
bonusWeight: number;
cropWeight: number;
bonusSources: Record<string, number>;
uncountedCrops: Partial<Record<Crop, number>>;
};
getBonusWeights: () => Record<string, number>;
getCropWeights: () => Record<Crop, number>;
calcUncountedCrops: (bestiary: Record<string, number>) => any;
getCropWeight: (crop: Crop) => void;
};
getBestTool(crop: Crop): FarmingTool | undefined;
getSelectedCropTool(crop: Crop): FarmingTool | undefined;
}
export interface JacobFarmingContest {
crop: Crop;
timestamp: number;
collected: number;
position?: number;
participants?: number;
medal?: number;
}