farming-weight 0.4.15 → 0.6.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/constants/accessories.d.ts +3 -4
- package/dist/constants/accessories.js +32 -20
- package/dist/constants/accessories.js.map +1 -1
- package/dist/constants/armor.d.ts +10 -3
- package/dist/constants/armor.js +317 -181
- package/dist/constants/armor.js.map +1 -1
- package/dist/constants/crops.d.ts +1 -0
- package/dist/constants/crops.js +11 -0
- package/dist/constants/crops.js.map +1 -1
- package/dist/constants/enchants.d.ts +19 -6
- package/dist/constants/enchants.js +314 -63
- package/dist/constants/enchants.js.map +1 -1
- package/dist/constants/equipment.d.ts +26 -0
- package/dist/constants/equipment.js +126 -0
- package/dist/constants/equipment.js.map +1 -0
- package/dist/constants/gems.d.ts +1 -1
- package/dist/constants/gems.js +1 -1
- package/dist/constants/pets.d.ts +18 -19
- package/dist/constants/pets.js +194 -43
- package/dist/constants/pets.js.map +1 -1
- package/dist/constants/reforges.d.ts +4 -26
- package/dist/constants/reforges.js +110 -134
- package/dist/constants/reforges.js.map +1 -1
- package/dist/constants/specific.d.ts +9 -5
- package/dist/constants/specific.js +51 -6
- package/dist/constants/specific.js.map +1 -1
- package/dist/constants/stats.d.ts +41 -0
- package/dist/constants/stats.js +43 -0
- package/dist/constants/stats.js.map +1 -0
- package/dist/constants/tempfortune.d.ts +16 -0
- package/dist/constants/tempfortune.js +74 -0
- package/dist/constants/tempfortune.js.map +1 -0
- package/dist/constants/tools.d.ts +4 -9
- package/dist/constants/tools.js +260 -166
- package/dist/constants/tools.js.map +1 -1
- package/dist/constants/upgrades.d.ts +61 -4
- package/dist/constants/upgrades.js +16 -3
- package/dist/constants/upgrades.js.map +1 -1
- package/dist/fortune/farmingaccessory.d.ts +21 -0
- package/dist/fortune/farmingaccessory.js +60 -0
- package/dist/fortune/farmingaccessory.js.map +1 -0
- package/dist/fortune/farmingarmor.d.ts +78 -0
- package/dist/fortune/farmingarmor.js +354 -0
- package/dist/fortune/farmingarmor.js.map +1 -0
- package/dist/fortune/farmingequipment.d.ts +33 -0
- package/dist/fortune/farmingequipment.js +169 -0
- package/dist/fortune/farmingequipment.js.map +1 -0
- package/dist/fortune/farmingpet.d.ts +25 -0
- package/dist/fortune/farmingpet.js +147 -0
- package/dist/fortune/farmingpet.js.map +1 -0
- package/dist/fortune/farmingtool.d.ts +48 -0
- package/dist/fortune/farmingtool.js +226 -0
- package/dist/fortune/farmingtool.js.map +1 -0
- package/dist/fortune/item.d.ts +22 -0
- package/dist/fortune/item.js +12 -0
- package/dist/fortune/item.js.map +1 -0
- package/dist/fortune/upgradable.d.ts +37 -0
- package/dist/fortune/upgradable.js +2 -0
- package/dist/fortune/upgradable.js.map +1 -0
- package/dist/fortune/upgradeable.d.ts +72 -0
- package/dist/fortune/upgradeable.js +71 -0
- package/dist/fortune/upgradeable.js.map +1 -0
- package/dist/index.d.ts +17 -12
- package/dist/index.js +17 -12
- package/dist/index.js.map +1 -1
- package/dist/items/accessories.d.ts +13 -0
- package/dist/items/accessories.js +59 -0
- package/dist/items/accessories.js.map +1 -0
- package/dist/items/armor.d.ts +46 -0
- package/dist/items/armor.js +714 -0
- package/dist/items/armor.js.map +1 -0
- package/dist/items/equipment.d.ts +26 -0
- package/dist/items/equipment.js +129 -0
- package/dist/items/equipment.js.map +1 -0
- package/dist/items/pets.d.ts +58 -0
- package/dist/items/pets.js +269 -0
- package/dist/items/pets.js.map +1 -0
- package/dist/items/tools.d.ts +17 -0
- package/dist/items/tools.js +581 -0
- package/dist/items/tools.js.map +1 -0
- package/dist/player/index.d.ts +1 -0
- package/dist/player/index.js +2 -0
- package/dist/player/index.js.map +1 -0
- package/dist/player/player.d.ts +143 -0
- package/dist/player/player.js +321 -0
- package/dist/player/player.js.map +1 -0
- package/dist/upgrades/progress.d.ts +4 -0
- package/dist/upgrades/progress.js +33 -0
- package/dist/upgrades/progress.js.map +1 -0
- package/dist/upgrades/sources/accessorysources.d.ts +3 -0
- package/dist/upgrades/sources/accessorysources.js +38 -0
- package/dist/upgrades/sources/accessorysources.js.map +1 -0
- package/dist/upgrades/sources/armorsetsources.d.ts +3 -0
- package/dist/upgrades/sources/armorsetsources.js +75 -0
- package/dist/upgrades/sources/armorsetsources.js.map +1 -0
- package/dist/upgrades/sources/cropsources.d.ts +7 -0
- package/dist/upgrades/sources/cropsources.js +119 -0
- package/dist/upgrades/sources/cropsources.js.map +1 -0
- package/dist/upgrades/sources/gearsources.d.ts +4 -0
- package/dist/upgrades/sources/gearsources.js +93 -0
- package/dist/upgrades/sources/gearsources.js.map +1 -0
- package/dist/upgrades/sources/generalsources.d.ts +3 -0
- package/dist/upgrades/sources/generalsources.js +88 -0
- package/dist/upgrades/sources/generalsources.js.map +1 -0
- package/dist/upgrades/sources/toolsources.d.ts +22 -0
- package/dist/upgrades/sources/toolsources.js +111 -0
- package/dist/upgrades/sources/toolsources.js.map +1 -0
- package/dist/upgrades/upgrades.d.ts +19 -0
- package/dist/upgrades/upgrades.js +236 -0
- package/dist/upgrades/upgrades.js.map +1 -0
- package/dist/util/enchants.d.ts +5 -0
- package/dist/util/enchants.js +48 -0
- package/dist/util/enchants.js.map +1 -0
- package/dist/util/gems.d.ts +5 -1
- package/dist/util/gems.js +35 -1
- package/dist/util/gems.js.map +1 -1
- package/dist/util/pests.d.ts +1 -0
- package/dist/util/pests.js +7 -3
- package/dist/util/pests.js.map +1 -1
- package/dist/util/ratecalc.js +4 -3
- package/dist/util/ratecalc.js.map +1 -1
- package/dist/weight/weightcalc.d.ts +14 -5
- package/dist/weight/weightcalc.js +50 -21
- package/dist/weight/weightcalc.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.createFarmingWeightCalculator = void 0;
|
|
4
4
|
const crops_1 = require("../constants/crops");
|
|
5
5
|
const weight_1 = require("../constants/weight");
|
|
6
|
-
|
|
6
|
+
const jacob_1 = require("../util/jacob");
|
|
7
|
+
const pests_1 = require("../util/pests");
|
|
8
|
+
function createFarmingWeightCalculator(info) {
|
|
7
9
|
return new FarmingWeight(info);
|
|
8
10
|
}
|
|
9
|
-
exports.
|
|
11
|
+
exports.createFarmingWeightCalculator = createFarmingWeightCalculator;
|
|
10
12
|
const crops = [
|
|
11
13
|
crops_1.Crop.Cactus,
|
|
12
14
|
crops_1.Crop.Carrot,
|
|
@@ -20,13 +22,19 @@ const crops = [
|
|
|
20
22
|
crops_1.Crop.Wheat,
|
|
21
23
|
];
|
|
22
24
|
class FarmingWeight {
|
|
25
|
+
info;
|
|
23
26
|
constructor(info) {
|
|
27
|
+
this.info = info;
|
|
24
28
|
this.collection = {};
|
|
25
29
|
this.levelCapUpgrade = info?.levelCapUpgrade ?? 0;
|
|
26
30
|
this.anitaBonusFarmingFortuneLevel = info?.anitaBonusFarmingFortuneLevel ?? 0;
|
|
27
31
|
this.farmingXp = info?.farmingXp ?? 0;
|
|
28
|
-
this.
|
|
32
|
+
this.earnedMedals = { diamond: 0, platinum: 0, gold: 0 };
|
|
29
33
|
this.tier12MinionCount = 0;
|
|
34
|
+
this.bonusSources = {};
|
|
35
|
+
this.uncountedCrops = {};
|
|
36
|
+
this.setContests(info?.contests ?? []);
|
|
37
|
+
this.calcUncountedCrops(info?.pests ?? {});
|
|
30
38
|
this.setCropsFromCollections(info?.collection ?? {});
|
|
31
39
|
this.addMinions(info?.minions ?? []);
|
|
32
40
|
}
|
|
@@ -69,8 +77,12 @@ class FarmingWeight {
|
|
|
69
77
|
}
|
|
70
78
|
return this;
|
|
71
79
|
};
|
|
72
|
-
|
|
73
|
-
this.
|
|
80
|
+
setEarnedMedals = ({ diamond, platinum, gold }) => {
|
|
81
|
+
this.earnedMedals = {
|
|
82
|
+
diamond: diamond ?? this.earnedMedals.diamond,
|
|
83
|
+
platinum: platinum ?? this.earnedMedals.platinum,
|
|
84
|
+
gold: gold ?? this.earnedMedals.gold,
|
|
85
|
+
};
|
|
74
86
|
return this;
|
|
75
87
|
};
|
|
76
88
|
setTier12MinionCount = (count) => {
|
|
@@ -81,18 +93,20 @@ class FarmingWeight {
|
|
|
81
93
|
if (!contests?.length)
|
|
82
94
|
return this;
|
|
83
95
|
for (const contest of contests) {
|
|
84
|
-
|
|
85
|
-
|
|
96
|
+
const medal = (0, jacob_1.calculateJacobContestMedal)(contest);
|
|
97
|
+
if (!medal)
|
|
86
98
|
continue;
|
|
99
|
+
if (medal === 'diamond') {
|
|
100
|
+
this.earnedMedals.diamond++;
|
|
87
101
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
this.earnedGoldMedals++;
|
|
102
|
+
else if (medal === 'platinum') {
|
|
103
|
+
this.earnedMedals.platinum++;
|
|
104
|
+
}
|
|
105
|
+
else if (medal === 'gold') {
|
|
106
|
+
this.earnedMedals.gold++;
|
|
94
107
|
}
|
|
95
108
|
}
|
|
109
|
+
this.getBonusWeights();
|
|
96
110
|
return this;
|
|
97
111
|
};
|
|
98
112
|
getWeightInfo = () => {
|
|
@@ -105,9 +119,11 @@ class FarmingWeight {
|
|
|
105
119
|
bonusWeight: bonusTotal,
|
|
106
120
|
cropWeight: cropTotal,
|
|
107
121
|
bonusSources: bonus,
|
|
122
|
+
uncountedCrops: this.uncountedCrops,
|
|
108
123
|
};
|
|
109
124
|
};
|
|
110
125
|
getBonusWeights = () => {
|
|
126
|
+
this.bonusSources = {};
|
|
111
127
|
if (this.farmingXp >= 111_672_425 && this.levelCapUpgrade >= 10) {
|
|
112
128
|
// Farming 60 bonus
|
|
113
129
|
this.bonusSources['Farming 60'] = weight_1.BONUS_WEIGHT.Farming60Bonus;
|
|
@@ -125,14 +141,18 @@ class FarmingWeight {
|
|
|
125
141
|
this.bonusSources['Anita Bonus'] =
|
|
126
142
|
this.anitaBonusFarmingFortuneLevel * weight_1.BONUS_WEIGHT.AnitaBuffBonusMultiplier;
|
|
127
143
|
}
|
|
128
|
-
|
|
129
|
-
|
|
144
|
+
const maxMedals = weight_1.BONUS_WEIGHT.MaxMedalsCounted;
|
|
145
|
+
if (this.earnedMedals.diamond >= maxMedals) {
|
|
146
|
+
this.bonusSources['Contest Medals'] = weight_1.BONUS_WEIGHT.WeightPerDiamondMedal * weight_1.BONUS_WEIGHT.MaxMedalsCounted;
|
|
130
147
|
}
|
|
131
148
|
else {
|
|
132
|
-
const
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
149
|
+
const diamond = this.earnedMedals.diamond;
|
|
150
|
+
const platinum = Math.min(maxMedals - diamond, this.earnedMedals.platinum);
|
|
151
|
+
const gold = Math.min(maxMedals - diamond - platinum, this.earnedMedals.gold);
|
|
152
|
+
const medals = diamond * weight_1.BONUS_WEIGHT.WeightPerDiamondMedal +
|
|
153
|
+
platinum * weight_1.BONUS_WEIGHT.WeightPerPlatinumMedal +
|
|
154
|
+
gold * weight_1.BONUS_WEIGHT.WeightPerGoldMedal;
|
|
155
|
+
this.bonusSources['Contest Medals'] = medals;
|
|
136
156
|
}
|
|
137
157
|
return this.bonusSources;
|
|
138
158
|
};
|
|
@@ -141,7 +161,11 @@ class FarmingWeight {
|
|
|
141
161
|
let totalWeight = 0;
|
|
142
162
|
let doubleBreakWeight = 0;
|
|
143
163
|
for (const crop of crops) {
|
|
144
|
-
|
|
164
|
+
let collected = this.collection[crop] ?? 0;
|
|
165
|
+
// Subtract uncounted crops
|
|
166
|
+
if (this.uncountedCrops[crop]) {
|
|
167
|
+
collected = Math.max(0, collected - (this.uncountedCrops[crop] ?? 0));
|
|
168
|
+
}
|
|
145
169
|
const weight = collected / weight_1.CROP_WEIGHT[crop];
|
|
146
170
|
totalWeight += weight;
|
|
147
171
|
if (crop === crops_1.Crop.Cactus || crop === crops_1.Crop.SugarCane) {
|
|
@@ -161,6 +185,11 @@ class FarmingWeight {
|
|
|
161
185
|
cropWeight[crops_1.Crop.Mushroom] = mushroomWeight;
|
|
162
186
|
return cropWeight;
|
|
163
187
|
};
|
|
188
|
+
calcUncountedCrops = (bestiary) => {
|
|
189
|
+
this.uncountedCrops = (0, pests_1.uncountedCropsFromPests)(bestiary);
|
|
190
|
+
this.getCropWeights();
|
|
191
|
+
return this;
|
|
192
|
+
};
|
|
164
193
|
getCropWeight = (crop) => {
|
|
165
194
|
weight_1.CROP_WEIGHT[crop];
|
|
166
195
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"weightcalc.js","sourceRoot":"","sources":["../../src/weight/weightcalc.ts"],"names":[],"mappings":";;;AAAA,8CAA0C;AAC1C,gDAAiF;
|
|
1
|
+
{"version":3,"file":"weightcalc.js","sourceRoot":"","sources":["../../src/weight/weightcalc.ts"],"names":[],"mappings":"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"}
|