farming-weight 0.2.12 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/classes/farmingaccessory.d.ts +15 -0
- package/dist/classes/farmingaccessory.js +42 -0
- package/dist/classes/farmingaccessory.js.map +1 -0
- package/dist/classes/farmingarmor.d.ts +6 -5
- package/dist/classes/farmingarmor.js +38 -36
- package/dist/classes/farmingarmor.js.map +1 -1
- package/dist/classes/farmingpet.d.ts +18 -3
- package/dist/classes/farmingpet.js +75 -9
- package/dist/classes/farmingpet.js.map +1 -1
- package/dist/classes/farmingtool.d.ts +13 -9
- package/dist/classes/farmingtool.js +51 -35
- package/dist/classes/farmingtool.js.map +1 -1
- package/dist/classes/item.d.ts +1 -1
- package/dist/classes/item.js +1 -2
- package/dist/classes/lotusgear.d.ts +5 -5
- package/dist/classes/lotusgear.js +19 -21
- package/dist/classes/lotusgear.js.map +1 -1
- package/dist/classes/player.d.ts +33 -9
- package/dist/classes/player.js +140 -28
- package/dist/classes/player.js.map +1 -1
- package/dist/classes/weightcalc.d.ts +1 -1
- package/dist/classes/weightcalc.js +27 -31
- package/dist/classes/weightcalc.js.map +1 -1
- package/dist/constants/accessories.d.ts +14 -0
- package/dist/constants/accessories.js +36 -0
- package/dist/constants/accessories.js.map +1 -0
- package/dist/constants/armor.js +125 -128
- package/dist/constants/armor.js.map +1 -1
- package/dist/constants/crops.d.ts +2 -0
- package/dist/constants/crops.js +31 -18
- package/dist/constants/crops.js.map +1 -1
- package/dist/constants/enchants.js +67 -70
- package/dist/constants/enchants.js.map +1 -1
- package/dist/constants/lotus.js +26 -29
- package/dist/constants/lotus.js.map +1 -1
- package/dist/constants/personalbests.d.ts +1 -1
- package/dist/constants/personalbests.js +17 -21
- package/dist/constants/personalbests.js.map +1 -1
- package/dist/constants/pests.d.ts +2 -2
- package/dist/constants/pests.js +10 -15
- package/dist/constants/pests.js.map +1 -1
- package/dist/constants/pets.d.ts +21 -3
- package/dist/constants/pets.js +37 -23
- package/dist/constants/pets.js.map +1 -1
- package/dist/constants/reforges.js +8 -11
- package/dist/constants/reforges.js.map +1 -1
- package/dist/constants/skills.js +2 -5
- package/dist/constants/skills.js.map +1 -1
- package/dist/constants/specialcrops.js +16 -19
- package/dist/constants/specialcrops.js.map +1 -1
- package/dist/constants/specific.d.ts +3 -0
- package/dist/constants/specific.js +5 -5
- package/dist/constants/specific.js.map +1 -1
- package/dist/constants/tools.d.ts +1 -0
- package/dist/constants/tools.js +122 -113
- package/dist/constants/tools.js.map +1 -1
- package/dist/constants/weight.js +15 -18
- package/dist/constants/weight.js.map +1 -1
- package/dist/crops/melon.d.ts +1 -1
- package/dist/crops/melon.js +3 -7
- package/dist/crops/melon.js.map +1 -1
- package/dist/crops/pumpkin.d.ts +1 -1
- package/dist/crops/pumpkin.js +3 -7
- package/dist/crops/pumpkin.js.map +1 -1
- package/dist/crops/special.d.ts +1 -1
- package/dist/crops/special.js +6 -10
- package/dist/crops/special.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +25 -38
- package/dist/index.js.map +1 -1
- package/dist/util/itemstats.d.ts +3 -3
- package/dist/util/itemstats.js +48 -53
- package/dist/util/itemstats.js.map +1 -1
- package/dist/util/jacob.d.ts +2 -2
- package/dist/util/jacob.js +3 -8
- package/dist/util/jacob.js.map +1 -1
- package/dist/util/lore.d.ts +1 -1
- package/dist/util/lore.js +1 -5
- package/dist/util/lore.js.map +1 -1
- package/dist/util/names.d.ts +5 -4
- package/dist/util/names.js +102 -78
- package/dist/util/names.js.map +1 -1
- package/dist/util/ratecalc.d.ts +7 -7
- package/dist/util/ratecalc.js +87 -75
- package/dist/util/ratecalc.js.map +1 -1
- package/dist/util/skyblocktime.d.ts +1 -0
- package/dist/util/skyblocktime.js +8 -5
- package/dist/util/skyblocktime.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"farmingtool.js","sourceRoot":"","sources":["../../src/classes/farmingtool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"farmingtool.js","sourceRoot":"","sources":["../../src/classes/farmingtool.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/item.d.ts
CHANGED
package/dist/classes/item.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { FarmingArmorInfo } from '../constants/armor';
|
|
2
2
|
import { Rarity, Reforge, ReforgeTier } from '../constants/reforges';
|
|
3
|
-
import {
|
|
3
|
+
import { EliteItemDto } from './item';
|
|
4
4
|
import { PlayerOptions } from './player';
|
|
5
5
|
export declare class LotusGear {
|
|
6
|
-
readonly item:
|
|
6
|
+
readonly item: EliteItemDto;
|
|
7
7
|
readonly info: FarmingArmorInfo;
|
|
8
8
|
get slot(): import("../constants/armor").GearSlot;
|
|
9
9
|
readonly rarity: Rarity;
|
|
@@ -13,10 +13,10 @@ export declare class LotusGear {
|
|
|
13
13
|
fortune: number;
|
|
14
14
|
fortuneBreakdown: Record<string, number>;
|
|
15
15
|
private options?;
|
|
16
|
-
constructor(item:
|
|
16
|
+
constructor(item: EliteItemDto, options?: PlayerOptions);
|
|
17
17
|
private sumFortune;
|
|
18
18
|
private getFortuneFromVisitors;
|
|
19
19
|
private getPieceBonus;
|
|
20
|
-
static isValid(item:
|
|
20
|
+
static isValid(item: EliteItemDto): boolean;
|
|
21
|
+
static fromArray(items: EliteItemDto[], options?: PlayerOptions): LotusGear[];
|
|
21
22
|
}
|
|
22
|
-
export declare function IsValidLotusGear(item: Item): boolean;
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const itemstats_1 = require("../util/itemstats");
|
|
7
|
-
const lore_1 = require("../util/lore");
|
|
8
|
-
class LotusGear {
|
|
1
|
+
import { LOTUS_GEAR_INFO } from '../constants/lotus';
|
|
2
|
+
import { REFORGES, Stat } from '../constants/reforges';
|
|
3
|
+
import { getRarityFromLore } from '../util/itemstats';
|
|
4
|
+
import { extractNumberFromLine } from '../util/lore';
|
|
5
|
+
export class LotusGear {
|
|
9
6
|
item;
|
|
10
7
|
info;
|
|
11
8
|
get slot() {
|
|
@@ -14,15 +11,15 @@ class LotusGear {
|
|
|
14
11
|
constructor(item, options) {
|
|
15
12
|
this.options = options;
|
|
16
13
|
this.item = item;
|
|
17
|
-
const info =
|
|
14
|
+
const info = LOTUS_GEAR_INFO[item.skyblockId];
|
|
18
15
|
if (!info) {
|
|
19
16
|
throw new Error(`Unknown lotus gear: ${item.name} (${item.skyblockId})`);
|
|
20
17
|
}
|
|
21
18
|
this.info = info;
|
|
22
19
|
if (item.lore) {
|
|
23
|
-
this.rarity = (
|
|
20
|
+
this.rarity = getRarityFromLore(item.lore);
|
|
24
21
|
}
|
|
25
|
-
this.reforge =
|
|
22
|
+
this.reforge = REFORGES[item.attributes?.modifier ?? ''] ?? undefined;
|
|
26
23
|
this.reforgeStats = this.reforge?.tiers?.[this.rarity];
|
|
27
24
|
this.recombobulated = this.item.attributes?.rarity_upgrades === '1';
|
|
28
25
|
this.sumFortune();
|
|
@@ -31,13 +28,13 @@ class LotusGear {
|
|
|
31
28
|
this.fortuneBreakdown = {};
|
|
32
29
|
let sum = 0;
|
|
33
30
|
// Base fortune
|
|
34
|
-
const base = this.info.stats?.[
|
|
31
|
+
const base = this.info.stats?.[Stat.FarmingFortune] ?? 0;
|
|
35
32
|
if (base > 0) {
|
|
36
33
|
this.fortuneBreakdown['Base Stats'] = base;
|
|
37
34
|
sum += base;
|
|
38
35
|
}
|
|
39
36
|
// Reforge
|
|
40
|
-
const reforge = this.reforgeStats?.stats?.[
|
|
37
|
+
const reforge = this.reforgeStats?.stats?.[Stat.FarmingFortune] ?? 0;
|
|
41
38
|
if (reforge > 0) {
|
|
42
39
|
this.fortuneBreakdown['Reforge'] = reforge;
|
|
43
40
|
sum += reforge;
|
|
@@ -63,7 +60,7 @@ class LotusGear {
|
|
|
63
60
|
const regex = /§7Farming Fortune: §a\+(\d+.?\d+)/g;
|
|
64
61
|
let found = 0;
|
|
65
62
|
for (const line of this.item.lore ?? []) {
|
|
66
|
-
const number = (
|
|
63
|
+
const number = extractNumberFromLine(line, regex) ?? 0;
|
|
67
64
|
if (!number)
|
|
68
65
|
continue;
|
|
69
66
|
found = +number;
|
|
@@ -77,7 +74,7 @@ class LotusGear {
|
|
|
77
74
|
const regex = /§7Piece Bonus: §6\+(\d+)☘/g;
|
|
78
75
|
let found = 0;
|
|
79
76
|
for (const line of (this.item.lore ?? []).reverse()) {
|
|
80
|
-
const number = (
|
|
77
|
+
const number = extractNumberFromLine(line, regex) ?? 0;
|
|
81
78
|
if (!number)
|
|
82
79
|
continue;
|
|
83
80
|
found = number;
|
|
@@ -86,12 +83,13 @@ class LotusGear {
|
|
|
86
83
|
return found;
|
|
87
84
|
}
|
|
88
85
|
static isValid(item) {
|
|
89
|
-
return
|
|
86
|
+
return LOTUS_GEAR_INFO[item.skyblockId] !== undefined;
|
|
87
|
+
}
|
|
88
|
+
static fromArray(items, options) {
|
|
89
|
+
return items
|
|
90
|
+
.filter((item) => LotusGear.isValid(item))
|
|
91
|
+
.map((item) => new LotusGear(item, options))
|
|
92
|
+
.sort((a, b) => b.fortune - a.fortune);
|
|
90
93
|
}
|
|
91
94
|
}
|
|
92
|
-
exports.LotusGear = LotusGear;
|
|
93
|
-
function IsValidLotusGear(item) {
|
|
94
|
-
return lotus_1.LOTUS_GEAR_INFO[item.skyblockId] !== undefined;
|
|
95
|
-
}
|
|
96
|
-
exports.IsValidLotusGear = IsValidLotusGear;
|
|
97
95
|
//# sourceMappingURL=lotusgear.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lotusgear.js","sourceRoot":"","sources":["../../src/classes/lotusgear.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lotusgear.js","sourceRoot":"","sources":["../../src/classes/lotusgear.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/player.d.ts
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import { Crop } from '../constants/crops';
|
|
2
2
|
import { FarmingPetType } from '../constants/pets';
|
|
3
|
-
import {
|
|
3
|
+
import { FarmingAccessory } from './farmingaccessory';
|
|
4
|
+
import { ArmorSet, FarmingArmor } from './farmingarmor';
|
|
5
|
+
import { FarmingPet } from './farmingpet';
|
|
6
|
+
import { FarmingTool } from './farmingtool';
|
|
7
|
+
import { EliteItemDto } from './item';
|
|
8
|
+
import { LotusGear } from './lotusgear';
|
|
4
9
|
export interface FortuneMissingFromAPI {
|
|
5
10
|
cropUpgrades?: Record<Crop, number>;
|
|
6
11
|
gardenLevel?: number;
|
|
7
12
|
plotsUnlocked?: number;
|
|
8
13
|
uniqueVisitors?: number;
|
|
14
|
+
communityCenter?: number;
|
|
9
15
|
milestones?: Partial<Record<Crop, number>>;
|
|
10
16
|
}
|
|
11
17
|
export interface PlayerOptions extends FortuneMissingFromAPI {
|
|
@@ -13,18 +19,37 @@ export interface PlayerOptions extends FortuneMissingFromAPI {
|
|
|
13
19
|
farmingXp?: number;
|
|
14
20
|
farmingLevel?: number;
|
|
15
21
|
strength?: number;
|
|
16
|
-
tools:
|
|
17
|
-
armor:
|
|
18
|
-
equipment:
|
|
19
|
-
|
|
22
|
+
tools: EliteItemDto[] | FarmingTool[];
|
|
23
|
+
armor: EliteItemDto[] | FarmingArmor[];
|
|
24
|
+
equipment: EliteItemDto[] | LotusGear[];
|
|
25
|
+
accessories: EliteItemDto[] | FarmingAccessory[];
|
|
26
|
+
pets: FarmingPetType[] | FarmingPet[];
|
|
20
27
|
personalBests?: Record<string, number>;
|
|
21
28
|
bestiaryKills?: Record<string, number>;
|
|
29
|
+
anitaBonus?: number;
|
|
22
30
|
}
|
|
23
|
-
export declare function
|
|
24
|
-
declare class
|
|
31
|
+
export declare function createFarmingPlayer(options: PlayerOptions): FarmingPlayer;
|
|
32
|
+
export declare class FarmingPlayer {
|
|
25
33
|
options: PlayerOptions;
|
|
34
|
+
fortune: number;
|
|
35
|
+
breakdown: Record<string, number>;
|
|
36
|
+
tools: FarmingTool[];
|
|
37
|
+
armor: FarmingArmor[];
|
|
38
|
+
armorSet: ArmorSet;
|
|
39
|
+
equipment: LotusGear[];
|
|
40
|
+
accessories: FarmingAccessory[];
|
|
41
|
+
pets: FarmingPet[];
|
|
42
|
+
selectedTool?: FarmingTool;
|
|
43
|
+
selectedPet?: FarmingPet;
|
|
26
44
|
constructor(options: PlayerOptions);
|
|
27
|
-
|
|
45
|
+
changeArmor(armor: FarmingArmor[]): void;
|
|
46
|
+
selectTool(tool: FarmingTool): void;
|
|
47
|
+
selectPet(pet: FarmingPet): void;
|
|
48
|
+
getGeneralFortune(): number;
|
|
49
|
+
getCropFortune(crop: Crop, tool?: FarmingTool | undefined): {
|
|
50
|
+
fortune: number;
|
|
51
|
+
breakdown: Record<string, number>;
|
|
52
|
+
};
|
|
28
53
|
}
|
|
29
54
|
export interface JacobFarmingContest {
|
|
30
55
|
crop: Crop;
|
|
@@ -34,4 +59,3 @@ export interface JacobFarmingContest {
|
|
|
34
59
|
participants?: number;
|
|
35
60
|
medal?: number;
|
|
36
61
|
}
|
|
37
|
-
export {};
|
package/dist/classes/player.js
CHANGED
|
@@ -1,51 +1,163 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { fortuneFromPersonalBestContest } from '../constants/personalbests';
|
|
2
|
+
import { fortuneFromPestBestiary } from '../constants/pests';
|
|
3
|
+
import { FORTUNE_PER_ANITA_BONUS, FORTUNE_PER_COMMUNITY_CENTER, FORTUNE_PER_CROP_UPGRADE, FORTUNE_PER_FARMING_LEVEL, FORTUNE_PER_PLOT, } from '../constants/specific';
|
|
4
|
+
import { getCropDisplayName, getItemIdFromCrop } from '../util/names';
|
|
5
|
+
import { FarmingAccessory } from './farmingaccessory';
|
|
6
|
+
import { ArmorSet, FarmingArmor } from './farmingarmor';
|
|
7
|
+
import { FarmingPet } from './farmingpet';
|
|
8
|
+
import { FarmingTool } from './farmingtool';
|
|
9
|
+
import { LotusGear } from './lotusgear';
|
|
10
|
+
export function createFarmingPlayer(options) {
|
|
11
|
+
return new FarmingPlayer(options);
|
|
10
12
|
}
|
|
11
|
-
|
|
12
|
-
class Player {
|
|
13
|
+
export class FarmingPlayer {
|
|
13
14
|
constructor(options) {
|
|
14
15
|
this.options = options;
|
|
16
|
+
if (options.tools[0] instanceof FarmingTool) {
|
|
17
|
+
this.tools = options.tools;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.tools = FarmingTool.fromArray(options.tools, options);
|
|
21
|
+
}
|
|
22
|
+
if (options.pets[0] instanceof FarmingPet) {
|
|
23
|
+
this.pets = options.pets.sort((a, b) => b.fortune - a.fortune);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
this.pets = FarmingPet.fromArray(options.pets, options);
|
|
27
|
+
}
|
|
28
|
+
this.selectedPet = this.pets[0];
|
|
29
|
+
if (options.armor[0] instanceof FarmingArmor) {
|
|
30
|
+
this.armor = options.armor.sort((a, b) => b.fortune - a.fortune);
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
this.armor = FarmingArmor.fromArray(options.armor, options);
|
|
34
|
+
}
|
|
35
|
+
this.armorSet = new ArmorSet(this.armor);
|
|
36
|
+
if (options.equipment[0] instanceof LotusGear) {
|
|
37
|
+
this.equipment = options.equipment.sort((a, b) => b.fortune - a.fortune);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.equipment = LotusGear.fromArray(options.equipment, options);
|
|
41
|
+
}
|
|
42
|
+
if (options.accessories[0] instanceof FarmingAccessory) {
|
|
43
|
+
this.accessories = options.accessories.sort((a, b) => b.fortune - a.fortune);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
this.accessories = FarmingAccessory.fromArray(options.accessories);
|
|
47
|
+
}
|
|
48
|
+
this.fortune = this.getGeneralFortune();
|
|
49
|
+
}
|
|
50
|
+
changeArmor(armor) {
|
|
51
|
+
this.armorSet = new ArmorSet(armor.sort((a, b) => b.fortune - a.fortune));
|
|
52
|
+
}
|
|
53
|
+
selectTool(tool) {
|
|
54
|
+
this.selectedTool = tool;
|
|
15
55
|
}
|
|
16
|
-
|
|
56
|
+
selectPet(pet) {
|
|
57
|
+
this.selectedPet = pet;
|
|
58
|
+
}
|
|
59
|
+
getGeneralFortune() {
|
|
17
60
|
let sum = 0;
|
|
18
61
|
const breakdown = {};
|
|
19
|
-
// Crop upgrades
|
|
20
|
-
const upgrade = specific_1.FORTUNE_PER_CROP_UPGRADE * (this.options.cropUpgrades?.[crop] ?? 0);
|
|
21
|
-
if (upgrade > 0) {
|
|
22
|
-
breakdown['Crop Upgrade'] = upgrade;
|
|
23
|
-
sum += upgrade;
|
|
24
|
-
}
|
|
25
62
|
// Plots
|
|
26
|
-
const plots =
|
|
63
|
+
const plots = FORTUNE_PER_PLOT * (this.options.plotsUnlocked ?? 0);
|
|
27
64
|
if (plots > 0) {
|
|
28
65
|
breakdown['Unlocked Plots'] = plots;
|
|
29
66
|
sum += plots;
|
|
30
67
|
}
|
|
31
|
-
//
|
|
32
|
-
const
|
|
33
|
-
if (
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
breakdown['Personal Best'] = fortune;
|
|
37
|
-
sum += fortune;
|
|
38
|
-
}
|
|
68
|
+
// Farming Level
|
|
69
|
+
const level = FORTUNE_PER_FARMING_LEVEL * (this.options.farmingLevel ?? 0);
|
|
70
|
+
if (level > 0) {
|
|
71
|
+
breakdown['Farming Level'] = level;
|
|
72
|
+
sum += level;
|
|
39
73
|
}
|
|
40
74
|
// Bestiary
|
|
41
75
|
if (this.options.bestiaryKills) {
|
|
42
|
-
const bestiary = (
|
|
76
|
+
const bestiary = fortuneFromPestBestiary(this.options.bestiaryKills);
|
|
43
77
|
if (bestiary > 0) {
|
|
44
78
|
breakdown['Pest Bestiary'] = bestiary;
|
|
45
79
|
sum += bestiary;
|
|
46
80
|
}
|
|
47
81
|
}
|
|
82
|
+
// Armor Set
|
|
83
|
+
const armorSet = this.armorSet.fortune;
|
|
84
|
+
if (armorSet > 0) {
|
|
85
|
+
breakdown['Armor Set'] = armorSet;
|
|
86
|
+
sum += armorSet;
|
|
87
|
+
}
|
|
88
|
+
// Lotus Gear
|
|
89
|
+
const lotusGear = this.equipment.reduce((a, b) => a + b.fortune, 0);
|
|
90
|
+
if (lotusGear > 0) {
|
|
91
|
+
breakdown['Lotus Equipment'] = lotusGear;
|
|
92
|
+
sum += lotusGear;
|
|
93
|
+
}
|
|
94
|
+
// Anita Bonus
|
|
95
|
+
const anitaBonus = (this.options.anitaBonus ?? 0) * FORTUNE_PER_ANITA_BONUS;
|
|
96
|
+
if (anitaBonus > 0) {
|
|
97
|
+
breakdown['Anita Bonus Drops'] = anitaBonus;
|
|
98
|
+
sum += anitaBonus;
|
|
99
|
+
}
|
|
100
|
+
// Community Center
|
|
101
|
+
const communityCenter = (this.options.communityCenter ?? 0) * FORTUNE_PER_COMMUNITY_CENTER;
|
|
102
|
+
if (communityCenter > 0) {
|
|
103
|
+
breakdown['Community Center'] = communityCenter;
|
|
104
|
+
sum += communityCenter;
|
|
105
|
+
}
|
|
106
|
+
// Selected Pet
|
|
107
|
+
const pet = this.selectedPet;
|
|
108
|
+
if (pet && pet.fortune > 0) {
|
|
109
|
+
breakdown[pet.info.name ?? 'Selected Pet'] = pet.fortune;
|
|
110
|
+
sum += pet.fortune;
|
|
111
|
+
}
|
|
112
|
+
// Accessories
|
|
113
|
+
//* There's only one accessory family for farming right now
|
|
114
|
+
const accessory = this.accessories.find((a) => a.info.crops === undefined);
|
|
115
|
+
if (accessory && accessory.fortune > 0) {
|
|
116
|
+
breakdown[accessory.item.name ?? 'Accessories'] = accessory.fortune ?? 0;
|
|
117
|
+
sum += accessory.fortune ?? 0;
|
|
118
|
+
}
|
|
119
|
+
this.breakdown = breakdown;
|
|
48
120
|
return sum;
|
|
49
121
|
}
|
|
122
|
+
getCropFortune(crop, tool = this.selectedTool) {
|
|
123
|
+
if (tool) {
|
|
124
|
+
this.selectTool(tool);
|
|
125
|
+
}
|
|
126
|
+
let sum = 0;
|
|
127
|
+
const breakdown = {};
|
|
128
|
+
// Crop upgrades
|
|
129
|
+
const upgrade = FORTUNE_PER_CROP_UPGRADE * (this.options.cropUpgrades?.[crop] ?? 0);
|
|
130
|
+
if (upgrade > 0) {
|
|
131
|
+
breakdown['Crop Upgrade'] = upgrade;
|
|
132
|
+
sum += upgrade;
|
|
133
|
+
}
|
|
134
|
+
// Personal bests
|
|
135
|
+
const personalBest = this.options.personalBests?.[getItemIdFromCrop(crop)] ??
|
|
136
|
+
this.options.personalBests?.[getCropDisplayName(crop).replace(/ /g, '')];
|
|
137
|
+
if (personalBest) {
|
|
138
|
+
const fortune = fortuneFromPersonalBestContest(crop, personalBest);
|
|
139
|
+
if (fortune > 0) {
|
|
140
|
+
breakdown['Personal Best'] = fortune;
|
|
141
|
+
sum += fortune;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
// Tool
|
|
145
|
+
const toolFortune = this.selectedTool?.fortune ?? 0;
|
|
146
|
+
if (toolFortune > 0) {
|
|
147
|
+
breakdown['Selected Tool'] = toolFortune;
|
|
148
|
+
sum += toolFortune;
|
|
149
|
+
}
|
|
150
|
+
// Accessories
|
|
151
|
+
//* There's only one accessory family for farming right now
|
|
152
|
+
const accessory = this.accessories.find((a) => a.info.crops && a.info.crops.includes(crop));
|
|
153
|
+
if (accessory && accessory.fortune > 0) {
|
|
154
|
+
breakdown[accessory.item.name ?? 'Accessories'] = accessory.fortune ?? 0;
|
|
155
|
+
sum += accessory.fortune ?? 0;
|
|
156
|
+
}
|
|
157
|
+
return {
|
|
158
|
+
fortune: sum,
|
|
159
|
+
breakdown,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
50
162
|
}
|
|
51
163
|
//# sourceMappingURL=player.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"player.js","sourceRoot":"","sources":["../../src/classes/player.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"player.js","sourceRoot":"","sources":["../../src/classes/player.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Crop } from '../constants/crops';
|
|
2
|
-
export declare function
|
|
2
|
+
export declare function createFarmingWeightCalculator(info?: FarmingWeightInfo): FarmingWeight;
|
|
3
3
|
export interface FarmingWeightInfo {
|
|
4
4
|
collection?: Record<string, number>;
|
|
5
5
|
farmingXp?: number;
|
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const crops_1 = require("../constants/crops");
|
|
5
|
-
const weight_1 = require("../constants/weight");
|
|
6
|
-
function CreateFarmingWeightCalculator(info) {
|
|
1
|
+
import { Crop } from '../constants/crops';
|
|
2
|
+
import { BONUS_WEIGHT, CROP_WEIGHT, TIER_12_MINIONS } from '../constants/weight';
|
|
3
|
+
export function createFarmingWeightCalculator(info) {
|
|
7
4
|
return new FarmingWeight(info);
|
|
8
5
|
}
|
|
9
|
-
exports.CreateFarmingWeightCalculator = CreateFarmingWeightCalculator;
|
|
10
6
|
const crops = [
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
7
|
+
Crop.Cactus,
|
|
8
|
+
Crop.Carrot,
|
|
9
|
+
Crop.CocoaBeans,
|
|
10
|
+
Crop.Melon,
|
|
11
|
+
Crop.Mushroom,
|
|
12
|
+
Crop.NetherWart,
|
|
13
|
+
Crop.Potato,
|
|
14
|
+
Crop.Pumpkin,
|
|
15
|
+
Crop.SugarCane,
|
|
16
|
+
Crop.Wheat,
|
|
21
17
|
];
|
|
22
18
|
class FarmingWeight {
|
|
23
19
|
constructor(info) {
|
|
@@ -63,7 +59,7 @@ class FarmingWeight {
|
|
|
63
59
|
for (const minion of minions) {
|
|
64
60
|
if (!minion.endsWith('_12'))
|
|
65
61
|
continue;
|
|
66
|
-
if (!
|
|
62
|
+
if (!TIER_12_MINIONS.includes(minion))
|
|
67
63
|
continue;
|
|
68
64
|
this.tier12MinionCount++;
|
|
69
65
|
}
|
|
@@ -110,28 +106,28 @@ class FarmingWeight {
|
|
|
110
106
|
getBonusWeights = () => {
|
|
111
107
|
if (this.farmingXp >= 111_672_425 && this.levelCapUpgrade >= 10) {
|
|
112
108
|
// Farming 60 bonus
|
|
113
|
-
this.bonusSources['Farming 60'] =
|
|
109
|
+
this.bonusSources['Farming 60'] = BONUS_WEIGHT.Farming60Bonus;
|
|
114
110
|
}
|
|
115
111
|
else if (this.farmingXp >= 55_172_425) {
|
|
116
112
|
// Farming 50 bonus
|
|
117
|
-
this.bonusSources['Farming 50'] =
|
|
113
|
+
this.bonusSources['Farming 50'] = BONUS_WEIGHT.Farming50Bonus;
|
|
118
114
|
}
|
|
119
115
|
// Tier 12 minion bonus
|
|
120
116
|
if (this.tier12MinionCount > 0) {
|
|
121
|
-
this.bonusSources['Tier 12 Minions'] = this.tier12MinionCount *
|
|
117
|
+
this.bonusSources['Tier 12 Minions'] = this.tier12MinionCount * BONUS_WEIGHT.MinionRewardWeight;
|
|
122
118
|
}
|
|
123
119
|
// Anita bonus
|
|
124
120
|
if (this.anitaBonusFarmingFortuneLevel > 0) {
|
|
125
121
|
this.bonusSources['Anita Bonus'] =
|
|
126
|
-
this.anitaBonusFarmingFortuneLevel *
|
|
122
|
+
this.anitaBonusFarmingFortuneLevel * BONUS_WEIGHT.AnitaBuffBonusMultiplier;
|
|
127
123
|
}
|
|
128
|
-
if (this.earnedGoldMedals >
|
|
129
|
-
this.bonusSources['Gold Medals'] = Math.floor(
|
|
124
|
+
if (this.earnedGoldMedals > BONUS_WEIGHT.MaxMedalsCounted) {
|
|
125
|
+
this.bonusSources['Gold Medals'] = Math.floor(BONUS_WEIGHT.WeightPerGoldMedal * BONUS_WEIGHT.MaxMedalsCounted);
|
|
130
126
|
}
|
|
131
127
|
else {
|
|
132
128
|
const rewardCount = Math.floor((this.earnedGoldMedals / 50) * 50);
|
|
133
129
|
if (rewardCount > 0) {
|
|
134
|
-
this.bonusSources['Gold Medals'] = Math.floor(
|
|
130
|
+
this.bonusSources['Gold Medals'] = Math.floor(BONUS_WEIGHT.WeightPerGoldMedal * rewardCount);
|
|
135
131
|
}
|
|
136
132
|
}
|
|
137
133
|
return this.bonusSources;
|
|
@@ -142,9 +138,9 @@ class FarmingWeight {
|
|
|
142
138
|
let doubleBreakWeight = 0;
|
|
143
139
|
for (const crop of crops) {
|
|
144
140
|
const collected = this.collection[crop] ?? 0;
|
|
145
|
-
const weight = collected /
|
|
141
|
+
const weight = collected / CROP_WEIGHT[crop];
|
|
146
142
|
totalWeight += weight;
|
|
147
|
-
if (crop ===
|
|
143
|
+
if (crop === Crop.Cactus || crop === Crop.SugarCane) {
|
|
148
144
|
doubleBreakWeight += weight;
|
|
149
145
|
}
|
|
150
146
|
cropWeight[crop] = weight;
|
|
@@ -152,17 +148,17 @@ class FarmingWeight {
|
|
|
152
148
|
// Mushroom is a special case, it needs to be calculated dynamically based on the
|
|
153
149
|
// ratio between the farmed crops that give two mushrooms per break with cow pet
|
|
154
150
|
// and the farmed crops that give one mushroom per break with cow pet
|
|
155
|
-
const mushroomCollection = this.collection[
|
|
156
|
-
const mushroomWeightNumber =
|
|
151
|
+
const mushroomCollection = this.collection[Crop.Mushroom] ?? 0;
|
|
152
|
+
const mushroomWeightNumber = CROP_WEIGHT[Crop.Mushroom];
|
|
157
153
|
const doubleBreakRatio = doubleBreakWeight / totalWeight;
|
|
158
154
|
const normalCropRatio = (totalWeight - doubleBreakWeight) / totalWeight;
|
|
159
155
|
const mushroomWeight = doubleBreakRatio * (mushroomCollection / (mushroomWeightNumber * 2)) +
|
|
160
156
|
normalCropRatio * (mushroomCollection / mushroomWeightNumber);
|
|
161
|
-
cropWeight[
|
|
157
|
+
cropWeight[Crop.Mushroom] = mushroomWeight;
|
|
162
158
|
return cropWeight;
|
|
163
159
|
};
|
|
164
160
|
getCropWeight = (crop) => {
|
|
165
|
-
|
|
161
|
+
CROP_WEIGHT[crop];
|
|
166
162
|
};
|
|
167
163
|
}
|
|
168
164
|
//# sourceMappingURL=weightcalc.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"weightcalc.js","sourceRoot":"","sources":["../../src/classes/weightcalc.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"weightcalc.js","sourceRoot":"","sources":["../../src/classes/weightcalc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Crop } from './crops';
|
|
2
|
+
import { Rarity, Stat } from './reforges';
|
|
3
|
+
import { Skill } from './skills';
|
|
4
|
+
export interface FarmingAccessoryInfo {
|
|
5
|
+
name: string;
|
|
6
|
+
wiki: string;
|
|
7
|
+
family?: string;
|
|
8
|
+
maxRarity: Rarity;
|
|
9
|
+
upgrade?: string;
|
|
10
|
+
crops?: Crop[];
|
|
11
|
+
stats?: Partial<Record<Stat, number>>;
|
|
12
|
+
skillReq?: Partial<Record<Skill, number>>;
|
|
13
|
+
}
|
|
14
|
+
export declare const FARMING_ACCESSORIES_INFO: Partial<Record<string, FarmingAccessoryInfo>>;
|