farming-weight 0.8.8 → 0.9.1

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.
Files changed (69) hide show
  1. package/dist/constants/crops.d.ts +2 -0
  2. package/dist/constants/crops.js +25 -0
  3. package/dist/constants/crops.js.map +1 -1
  4. package/dist/constants/enchants.d.ts +3 -0
  5. package/dist/constants/enchants.js +18 -0
  6. package/dist/constants/enchants.js.map +1 -1
  7. package/dist/constants/plots.d.ts +130 -0
  8. package/dist/constants/plots.js +157 -0
  9. package/dist/constants/plots.js.map +1 -0
  10. package/dist/constants/reforges.d.ts +1 -1
  11. package/dist/constants/reforges.js +105 -0
  12. package/dist/constants/reforges.js.map +1 -1
  13. package/dist/constants/specific.js +228 -1
  14. package/dist/constants/specific.js.map +1 -1
  15. package/dist/constants/upgrades.d.ts +31 -5
  16. package/dist/constants/upgrades.js +11 -1
  17. package/dist/constants/upgrades.js.map +1 -1
  18. package/dist/fortune/farmingarmor.d.ts +3 -2
  19. package/dist/fortune/farmingarmor.js +26 -9
  20. package/dist/fortune/farmingarmor.js.map +1 -1
  21. package/dist/fortune/farmingequipment.js +3 -3
  22. package/dist/fortune/farmingequipment.js.map +1 -1
  23. package/dist/fortune/farmingtool.d.ts +2 -1
  24. package/dist/fortune/farmingtool.js +16 -1
  25. package/dist/fortune/farmingtool.js.map +1 -1
  26. package/dist/fortune/item.d.ts +1 -1
  27. package/dist/fortune/upgradeable.d.ts +13 -3
  28. package/dist/fortune/upgradeable.js.map +1 -1
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.js +1 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/items/accessories.js +29 -2
  33. package/dist/items/accessories.js.map +1 -1
  34. package/dist/items/armor.d.ts +1 -1
  35. package/dist/items/armor.js +510 -71
  36. package/dist/items/armor.js.map +1 -1
  37. package/dist/items/equipment.d.ts +1 -1
  38. package/dist/items/equipment.js +1 -1
  39. package/dist/items/equipment.js.map +1 -1
  40. package/dist/items/tools.js +813 -85
  41. package/dist/items/tools.js.map +1 -1
  42. package/dist/player/player.d.ts +5 -2
  43. package/dist/player/player.js +52 -2
  44. package/dist/player/player.js.map +1 -1
  45. package/dist/player/playeroptions.d.ts +1 -0
  46. package/dist/player/playeroptions.js.map +1 -1
  47. package/dist/upgrades/sources/accessorysources.js +10 -8
  48. package/dist/upgrades/sources/accessorysources.js.map +1 -1
  49. package/dist/upgrades/sources/armorsetsources.js +42 -10
  50. package/dist/upgrades/sources/armorsetsources.js.map +1 -1
  51. package/dist/upgrades/sources/cropsources.js +46 -0
  52. package/dist/upgrades/sources/cropsources.js.map +1 -1
  53. package/dist/upgrades/sources/gearsources.js +12 -8
  54. package/dist/upgrades/sources/gearsources.js.map +1 -1
  55. package/dist/upgrades/sources/generalsources.js +130 -1
  56. package/dist/upgrades/sources/generalsources.js.map +1 -1
  57. package/dist/upgrades/sources/toolsources.d.ts +2 -1
  58. package/dist/upgrades/sources/toolsources.js +88 -13
  59. package/dist/upgrades/sources/toolsources.js.map +1 -1
  60. package/dist/upgrades/upgrades.d.ts +11 -1
  61. package/dist/upgrades/upgrades.js +293 -43
  62. package/dist/upgrades/upgrades.js.map +1 -1
  63. package/dist/util/garden.d.ts +9 -0
  64. package/dist/util/garden.js +18 -0
  65. package/dist/util/garden.js.map +1 -1
  66. package/dist/util/gems.d.ts +4 -4
  67. package/dist/util/gems.js +6 -0
  68. package/dist/util/gems.js.map +1 -1
  69. package/package.json +3 -2
@@ -1,7 +1,9 @@
1
1
  import { ANITA_FORTUNE_UPGRADE, COMMUNITY_CENTER_UPGRADE, FARMING_LEVEL, PEST_BESTIARY_SOURCE, REFINED_TRUFFLE_SOURCE, UNLOCKED_PLOTS, } from '../../constants/specific.js';
2
2
  import { Stat } from '../../constants/stats.js';
3
+ import { UpgradeAction, UpgradeCategory } from '../../constants/upgrades.js';
3
4
  import { FarmingAccessory } from '../../fortune/farmingaccessory.js';
4
5
  import { FARMING_ACCESSORIES_INFO } from '../../items/accessories.js';
6
+ import { getNextPlotCost } from '../../util/garden.js';
5
7
  import { fortuneFromPestBestiary } from '../../util/pests.js';
6
8
  export const GENERAL_FORTUNE_SOURCES = [
7
9
  {
@@ -12,6 +14,24 @@ export const GENERAL_FORTUNE_SOURCES = [
12
14
  current: (player) => {
13
15
  return (player.options.farmingLevel ?? 0) * FARMING_LEVEL.fortunePerLevel;
14
16
  },
17
+ upgrades: (player) => {
18
+ const current = player.options.farmingLevel ?? 0;
19
+ if (current < 50 || current >= FARMING_LEVEL.maxLevel)
20
+ return [];
21
+ const nextCost = FARMING_LEVEL.upgradeCosts?.[current + 1];
22
+ if (!nextCost)
23
+ return [];
24
+ return [
25
+ {
26
+ title: FARMING_LEVEL.name + ' ' + (current + 1),
27
+ increase: FARMING_LEVEL.fortunePerLevel,
28
+ action: UpgradeAction.LevelUp,
29
+ category: UpgradeCategory.Skill,
30
+ wiki: FARMING_LEVEL.wiki,
31
+ cost: nextCost,
32
+ },
33
+ ];
34
+ },
15
35
  },
16
36
  {
17
37
  name: PEST_BESTIARY_SOURCE.name,
@@ -30,6 +50,25 @@ export const GENERAL_FORTUNE_SOURCES = [
30
50
  current: (player) => {
31
51
  return (player.options.anitaBonus ?? 0) * ANITA_FORTUNE_UPGRADE.fortunePerLevel;
32
52
  },
53
+ upgrades: (player) => {
54
+ const current = player.options.anitaBonus ?? 0;
55
+ if (current >= ANITA_FORTUNE_UPGRADE.maxLevel)
56
+ return [];
57
+ const nextCost = ANITA_FORTUNE_UPGRADE.upgradeCosts?.[current + 1];
58
+ if (!nextCost)
59
+ return [];
60
+ return [
61
+ {
62
+ title: ANITA_FORTUNE_UPGRADE.name,
63
+ increase: ANITA_FORTUNE_UPGRADE.fortunePerLevel,
64
+ action: UpgradeAction.Upgrade,
65
+ api: false,
66
+ category: UpgradeCategory.Anita,
67
+ wiki: ANITA_FORTUNE_UPGRADE.wiki,
68
+ cost: nextCost,
69
+ },
70
+ ];
71
+ },
33
72
  },
34
73
  {
35
74
  name: UNLOCKED_PLOTS.name,
@@ -37,7 +76,21 @@ export const GENERAL_FORTUNE_SOURCES = [
37
76
  exists: () => true,
38
77
  max: () => UNLOCKED_PLOTS.maxLevel * UNLOCKED_PLOTS.fortunePerLevel,
39
78
  current: (player) => {
40
- return (player.options.plotsUnlocked ?? 0) * UNLOCKED_PLOTS.fortunePerLevel;
79
+ return (player.options.plots?.length ?? player.options.plotsUnlocked ?? 0) * UNLOCKED_PLOTS.fortunePerLevel;
80
+ },
81
+ upgrades: (player) => {
82
+ const plotUpgrade = getNextPlotCost(player.options.plots ?? []);
83
+ if (!plotUpgrade)
84
+ return [];
85
+ return [
86
+ {
87
+ title: 'Plot ' + plotUpgrade.plot?.name,
88
+ increase: UNLOCKED_PLOTS.fortunePerLevel,
89
+ action: UpgradeAction.Purchase,
90
+ category: UpgradeCategory.Plot,
91
+ cost: plotUpgrade.cost,
92
+ },
93
+ ];
41
94
  },
42
95
  },
43
96
  {
@@ -49,6 +102,22 @@ export const GENERAL_FORTUNE_SOURCES = [
49
102
  current: (player) => {
50
103
  return (player.options.communityCenter ?? 0) * COMMUNITY_CENTER_UPGRADE.fortunePerLevel;
51
104
  },
105
+ upgrades: (player) => {
106
+ const current = player.options.communityCenter ?? 0;
107
+ if (current >= COMMUNITY_CENTER_UPGRADE.maxLevel)
108
+ return [];
109
+ return [
110
+ {
111
+ title: COMMUNITY_CENTER_UPGRADE.name,
112
+ increase: COMMUNITY_CENTER_UPGRADE.fortunePerLevel,
113
+ action: UpgradeAction.Upgrade,
114
+ repeatable: COMMUNITY_CENTER_UPGRADE.maxLevel - current,
115
+ api: false,
116
+ category: UpgradeCategory.CommunityCenter,
117
+ wiki: COMMUNITY_CENTER_UPGRADE.wiki,
118
+ },
119
+ ];
120
+ },
52
121
  },
53
122
  {
54
123
  name: 'Fermento Artifact',
@@ -77,6 +146,30 @@ export const GENERAL_FORTUNE_SOURCES = [
77
146
  maxInfo: highest?.getLastItemUpgrade()?.info ?? FARMING_ACCESSORIES_INFO.FERMENTO_ARTIFACT,
78
147
  };
79
148
  },
149
+ upgrades: (player) => {
150
+ const highest = player.activeAccessories.find((a) => a.info.family === FARMING_ACCESSORIES_INFO.FERMENTO_ARTIFACT?.family);
151
+ if (!highest) {
152
+ const cropie = FARMING_ACCESSORIES_INFO.CROPIE_TALISMAN;
153
+ if (!cropie)
154
+ return [];
155
+ return [
156
+ {
157
+ title: cropie.name,
158
+ increase: cropie.baseStats?.[Stat.FarmingFortune] ?? 0,
159
+ action: UpgradeAction.Purchase,
160
+ item: 'CROPIE_TALISMAN',
161
+ category: UpgradeCategory.Item,
162
+ wiki: cropie.wiki,
163
+ cost: {
164
+ items: {
165
+ CROPIE_TALISMAN: 1,
166
+ },
167
+ },
168
+ },
169
+ ];
170
+ }
171
+ return highest.getUpgrades();
172
+ },
80
173
  },
81
174
  {
82
175
  name: REFINED_TRUFFLE_SOURCE.name,
@@ -86,6 +179,26 @@ export const GENERAL_FORTUNE_SOURCES = [
86
179
  current: (player) => {
87
180
  return (player.options.refinedTruffles ?? 0) * REFINED_TRUFFLE_SOURCE.fortunePerLevel;
88
181
  },
182
+ upgrades: (player) => {
183
+ const consumed = player.options.refinedTruffles ?? 0;
184
+ if (consumed >= 5)
185
+ return [];
186
+ return [
187
+ {
188
+ title: 'Refined Dark Cacao Truffle',
189
+ increase: REFINED_TRUFFLE_SOURCE.fortunePerLevel,
190
+ action: UpgradeAction.Consume,
191
+ repeatable: 5 - consumed,
192
+ wiki: REFINED_TRUFFLE_SOURCE.wiki,
193
+ category: UpgradeCategory.Item,
194
+ cost: {
195
+ items: {
196
+ REFINED_DARK_CACAO_TRUFFLE: 1,
197
+ },
198
+ },
199
+ },
200
+ ];
201
+ },
89
202
  },
90
203
  {
91
204
  name: 'Relic of Power',
@@ -111,6 +224,22 @@ export const GENERAL_FORTUNE_SOURCES = [
111
224
  maxInfo: (fake ? fake : accessory)?.getLastItemUpgrade()?.info,
112
225
  };
113
226
  },
227
+ upgrades: (player) => {
228
+ const accessory = player.accessories.find((a) => a.info.skyblockId === 'POWER_RELIC');
229
+ if (!accessory)
230
+ return [
231
+ {
232
+ title: 'Relic of Power',
233
+ increase: 0,
234
+ action: UpgradeAction.Purchase,
235
+ purchase: 'POWER_RELIC',
236
+ category: UpgradeCategory.Item,
237
+ wiki: FARMING_ACCESSORIES_INFO.POWER_RELIC?.wiki,
238
+ cost: FARMING_ACCESSORIES_INFO.POWER_RELIC?.cost,
239
+ },
240
+ ];
241
+ return accessory.getUpgrades();
242
+ },
114
243
  },
115
244
  ];
116
245
  //# sourceMappingURL=generalsources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generalsources.js","sourceRoot":"","sources":["../../../src/upgrades/sources/generalsources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generalsources.js","sourceRoot":"","sources":["../../../src/upgrades/sources/generalsources.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Crop } from '../../constants/crops.js';
2
- import { FortuneSourceProgress } from '../../constants/upgrades.js';
2
+ import { FortuneSourceProgress, FortuneUpgrade } from '../../constants/upgrades.js';
3
3
  import { FarmingTool } from '../../fortune/farmingtool.js';
4
4
  import { EliteItemDto } from '../../fortune/item.js';
5
5
  import { UpgradeableInfo } from '../../fortune/upgradeable.js';
@@ -18,5 +18,6 @@ export interface DynamicFortuneSource<T> {
18
18
  nextInfo?: UpgradeableInfo;
19
19
  maxInfo?: UpgradeableInfo;
20
20
  };
21
+ upgrades?: (source: T) => FortuneUpgrade[];
21
22
  }
22
23
  export declare const TOOL_FORTUNE_SOURCES: DynamicFortuneSource<FarmingTool>[];
@@ -1,10 +1,12 @@
1
1
  import { FARMING_ENCHANTS } from '../../constants/enchants.js';
2
2
  import { REFORGES, Rarity, ReforgeTarget } from '../../constants/reforges.js';
3
3
  import { Stat, getStatValue } from '../../constants/stats.js';
4
+ import { UpgradeAction, UpgradeCategory } from '../../constants/upgrades.js';
4
5
  import { GemRarity } from '../../fortune/item.js';
5
6
  import { FarmingToolType } from '../../items/tools.js';
6
7
  import { getFortuneFromEnchant, getMaxFortuneFromEnchant } from '../../util/enchants.js';
7
8
  import { getPeridotFortune, getPeridotGemFortune } from '../../util/gems.js';
9
+ import { getUpgradeableEnchant, getUpgradeableGems } from '../upgrades.js';
8
10
  export const TOOL_FORTUNE_SOURCES = [
9
11
  {
10
12
  name: 'Base Stats',
@@ -54,22 +56,68 @@ export const TOOL_FORTUNE_SOURCES = [
54
56
  current: (tool) => {
55
57
  return tool.reforgeStats?.stats?.[Stat.FarmingFortune] ?? 0;
56
58
  },
59
+ upgrades: (tool) => {
60
+ const currentFortune = tool.reforgeStats?.stats?.[Stat.FarmingFortune] ?? 0;
61
+ const result = [];
62
+ for (const reforge of Object.values(REFORGES)) {
63
+ // Skip if the reforge doesn't apply to the item or is currently applied
64
+ if (!reforge || !reforge.appliesTo.includes(tool.type) || reforge === tool.reforge)
65
+ return result;
66
+ const tier = reforge.tiers[tool.rarity];
67
+ if (!tier || !tier.stats?.[Stat.FarmingFortune])
68
+ continue;
69
+ const reforgeFortune = tier?.stats[Stat.FarmingFortune];
70
+ // Skip if the reforge doesn't increase farming fortune and is not bountiful
71
+ // Bountiful is considered to be the best reforge, but it gives less farming fortune than blessed
72
+ if (reforgeFortune <= currentFortune && reforge !== REFORGES.bountiful)
73
+ continue;
74
+ result.push({
75
+ title: 'Reforge to ' + reforge.name,
76
+ increase: (reforgeFortune ?? 0) - currentFortune,
77
+ action: UpgradeAction.Apply,
78
+ category: UpgradeCategory.Reforge,
79
+ optional: (reforge === REFORGES.bountiful && tool.reforge === REFORGES.blessed) ||
80
+ (reforge === REFORGES.blessed && tool.reforge === REFORGES.bountiful),
81
+ wiki: reforge.wiki,
82
+ onto: {
83
+ name: tool.item.name,
84
+ skyblockId: tool.item.skyblockId,
85
+ },
86
+ cost: reforge.stone?.id
87
+ ? {
88
+ items: {
89
+ [reforge.stone.id]: 1,
90
+ },
91
+ coins: reforge.stone.npc ?? undefined,
92
+ copper: reforge.stone.copper ?? undefined,
93
+ applyCost: tier?.cost
94
+ ? {
95
+ coins: tier?.cost,
96
+ }
97
+ : undefined,
98
+ }
99
+ : undefined,
100
+ });
101
+ }
102
+ return result;
103
+ },
57
104
  },
58
105
  {
59
106
  name: 'Gemstone Slots',
60
107
  wiki: () => 'https://wiki.hypixel.net/Gemstone#Gemstone_Slots',
61
- exists: (tool) => {
62
- const last = (tool.getLastItemUpgrade() ?? tool)?.info;
63
- return last?.gemSlots?.peridot !== undefined;
108
+ exists: (upgradeable) => {
109
+ const last = (upgradeable.getLastItemUpgrade() ?? upgradeable)?.info;
110
+ return last?.gemSlots?.some((s) => s.slot_type === 'PERIDOT') !== undefined;
64
111
  },
65
- max: (tool) => {
66
- const last = (tool.getLastItemUpgrade() ?? tool)?.info;
67
- return ((last?.gemSlots?.peridot ?? 0) *
112
+ max: (upgradeable) => {
113
+ const last = (upgradeable.getLastItemUpgrade() ?? upgradeable)?.info;
114
+ return ((last?.gemSlots?.filter((s) => s.slot_type === 'PERIDOT').length ?? 0) *
68
115
  getPeridotGemFortune(last?.maxRarity ?? Rarity.Common, GemRarity.Perfect));
69
116
  },
70
- current: (tool) => {
71
- return getPeridotFortune(tool.rarity, tool.item);
117
+ current: (upgradeable) => {
118
+ return getPeridotFortune(upgradeable.rarity, upgradeable.item);
72
119
  },
120
+ upgrades: getUpgradeableGems,
73
121
  },
74
122
  {
75
123
  name: 'Farming For Dummies',
@@ -79,6 +127,30 @@ export const TOOL_FORTUNE_SOURCES = [
79
127
  current: (tool) => {
80
128
  return +(tool.item.attributes?.farming_for_dummies_count ?? 0);
81
129
  },
130
+ upgrades: (tool) => {
131
+ const count = +(tool.item.attributes?.farming_for_dummies_count ?? 0);
132
+ if (count <= 0 || count >= 5)
133
+ return [];
134
+ return [
135
+ {
136
+ title: 'Farming For Dummies',
137
+ increase: 1,
138
+ action: UpgradeAction.Apply,
139
+ category: UpgradeCategory.Item,
140
+ repeatable: 5 - count,
141
+ wiki: 'https://wiki.hypixel.net/Farming_For_Dummies',
142
+ cost: {
143
+ items: {
144
+ FARMING_FOR_DUMMIES: 1,
145
+ },
146
+ },
147
+ onto: {
148
+ name: tool.item.name,
149
+ skyblockId: tool.item.skyblockId,
150
+ },
151
+ },
152
+ ];
153
+ },
82
154
  },
83
155
  {
84
156
  name: 'Logarithmic Counter',
@@ -97,13 +169,16 @@ export const TOOL_FORTUNE_SOURCES = [
97
169
  max: () => 8 * 7,
98
170
  current: (tool) => tool.collAnalysis ?? 0,
99
171
  },
100
- ...Object.entries(FARMING_ENCHANTS).map(([id, enchant]) => ({
172
+ ...Object.entries(FARMING_ENCHANTS).map(([id, enchant]) => enchantSourceBuilder(id, enchant)),
173
+ ];
174
+ function enchantSourceBuilder(id, enchant) {
175
+ return {
101
176
  name: enchant.name,
102
177
  wiki: () => enchant.wiki,
103
- exists: (tool) => enchant.appliesTo.includes(tool.type) &&
104
- (!enchant.cropSpecific || enchant.cropSpecific === tool.crop),
178
+ exists: (tool) => enchant.appliesTo.includes(tool.type) && (!enchant.cropSpecific || enchant.cropSpecific === tool.crop),
105
179
  max: (tool) => getMaxFortuneFromEnchant(enchant, tool.options, tool.crop),
106
180
  current: (tool) => getFortuneFromEnchant(tool.item.enchantments?.[id] ?? 0, enchant, tool.options, tool.crop),
107
- })),
108
- ];
181
+ upgrades: (tool) => getUpgradeableEnchant(tool, id),
182
+ };
183
+ }
109
184
  //# sourceMappingURL=toolsources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toolsources.js","sourceRoot":"","sources":["../../../src/upgrades/sources/toolsources.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,EAAgB,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAmB7E,MAAM,CAAC,MAAM,oBAAoB,GAAwC;IACxE;QACC,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,SAAS,CAAC;QAClG,CAAC;QACD,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;KACD;IACD;QACC,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC;YACvD,OAAO,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,SAAS,CAAC;QAC3E,CAAC;QACD,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC;YACvD,OAAO,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1F,CAAC;KACD;IACD;QACC,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS;QACvD,gDAAgD;QAChD,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG;QACd,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC;KACD;IACD;QACC,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI;QACrC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK;QACnD,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC;YACvD,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,WAAW;gBACxC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAC9E,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,OAAO,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;KACD;IACD;QACC,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,GAAG,EAAE,CAAC,kDAAkD;QAC9D,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC;YACvD,OAAO,IAAI,EAAE,QAAQ,EAAE,OAAO,KAAK,SAAS,CAAC;QAC9C,CAAC;QACD,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC;YACvD,OAAO,CACN,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC;gBAC9B,oBAAoB,CAAC,IAAI,EAAE,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CACzE,CAAC;QACH,CAAC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC;KACD;IACD;QACC,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,GAAG,EAAE,CAAC,8CAA8C;QAC1D,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK;QACnD,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACZ,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,yBAAyB,IAAI,CAAC,CAAC,CAAC;QAChE,CAAC;KACD;IACD;QACC,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,eAAe;QACpE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC;QACjB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACjB,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;YAC5F,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;KACD;IACD;QACC,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,eAAe;QACpE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;QAChB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC;KACzC;IACD,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,CACtC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CACjB,CAAC;QACA,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI;QACxB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC;QAC9D,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;QACzE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CACjB,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;KAC3F,CAAsC,CACxC;CACD,CAAC"}
1
+ {"version":3,"file":"toolsources.js","sourceRoot":"","sources":["../../../src/upgrades/sources/toolsources.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,18 @@
1
1
  import { FortuneSource, FortuneSourceProgress, FortuneUpgrade, Upgrade } from '../constants/upgrades.js';
2
- import { Upgradeable, UpgradeableInfo } from '../fortune/upgradeable.js';
2
+ import { Upgradeable, UpgradeableBase, UpgradeableInfo } from '../fortune/upgradeable.js';
3
3
  import { FarmingToolInfo } from '../items/tools.js';
4
4
  import { DynamicFortuneSource } from './sources/toolsources.js';
5
5
  export declare function getFortune(level: number | null | undefined, source: FortuneSource): number;
6
6
  export declare function getItemUpgrades(upgradeable: Upgradeable): FortuneUpgrade[];
7
+ export declare function getSelfFortuneUpgrade(upgradeable: Upgradeable): {
8
+ upgrade: FortuneUpgrade;
9
+ deadEnd: boolean;
10
+ } | undefined;
7
11
  export declare function getLastToolUpgrade(tool: FarmingToolInfo): UpgradeableInfo | undefined;
12
+ export declare function getUpgradeableInfo(skyblockId?: string): {
13
+ info?: UpgradeableInfo;
14
+ fake?: UpgradeableBase;
15
+ };
8
16
  export declare function getNextItemUpgradeableTo(upgradeable: Upgradeable, options: Partial<Record<string, UpgradeableInfo>>): {
9
17
  upgrade: Upgrade;
10
18
  info: UpgradeableInfo;
@@ -16,4 +24,6 @@ export declare function getLastItemUpgradeableTo(upgradeable: Upgradeable, optio
16
24
  export declare function getSourceProgress<T extends object>(upgradeable: T, sources: DynamicFortuneSource<T>[], zeroed?: boolean): FortuneSourceProgress[];
17
25
  export declare function getUpgradeableRarityUpgrade(upgradeable: Upgradeable): FortuneUpgrade | undefined;
18
26
  export declare function getUpgradeableEnchants(upgradeable: Upgradeable): FortuneUpgrade[];
27
+ export declare function getUpgradeableEnchant(upgradeable: Upgradeable, enchantId: string): FortuneUpgrade[];
28
+ export declare function getUpgradeableReforges(upgradeable: Upgradeable): FortuneUpgrade[];
19
29
  export declare function getUpgradeableGems(upgradeable: Upgradeable): FortuneUpgrade[];