From 67ce94853a050eb68739054433d37a29936aad1f Mon Sep 17 00:00:00 2001 From: Gylfirst <30391973+gylfirst@users.noreply.github.com> Date: Tue, 5 Nov 2024 15:40:39 +0100 Subject: [PATCH 1/4] Fix: new forgeable pets able to display forge timing --- src/constants/forge.js | 16 ++++++++-------- src/stats/mining.js | 3 ++- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/constants/forge.js b/src/constants/forge.js index 109a563e7b..d5d5f204c5 100644 --- a/src/constants/forge.js +++ b/src/constants/forge.js @@ -104,14 +104,14 @@ export const FORGE_TIMES = { PERFECT_PERIDOT_GEM: 20 * 60, // Pets BEJEWELED_COLLAR: 2 * 60, - LVL_1_LEGENDARY_MOLE: 3 * 24 * 60, - LVL_1_LEGENDARY_AMMONITE: 3 * 24 * 60, - LVL_1_LEGENDARY_PENGUIN: 7 * 24 * 60, - LVL_1_LEGENDARY_TYRANNOSAURUS: 7 * 24 * 60, - LVL_1_LEGENDARY_SPINOSAURUS: 7 * 24 * 60, - LVL_1_LEGENDARY_GOBLIN: 7 * 24 * 60, - LVL_1_LEGENDARY_ANKYLOSAURUS: 7 * 24 * 60, - LVL_1_LEGENDARY_MAMMOTH: 7 * 24 * 60, + MOLE: 3 * 24 * 60, + AMMONITE: 3 * 24 * 60, + PENGUIN: 7 * 24 * 60, + TYRANNOSAURUS: 7 * 24 * 60, + SPINOSAURUS: 7 * 24 * 60, + GOBLIN: 7 * 24 * 60, + ANKYLOSAURUS: 7 * 24 * 60, + MAMMOTH: 7 * 24 * 60, // Other BEACON_2: 20 * 60, BEACON_3: 1 * 24 * 60 + 6 * 60, diff --git a/src/stats/mining.js b/src/stats/mining.js index 611022ff1d..28d0d4a8d5 100644 --- a/src/stats/mining.js +++ b/src/stats/mining.js @@ -104,7 +104,8 @@ async function getForge(userProfile) { forgeTime *= constants.QUICK_FORGE_MULTIPLIER[quickForge]; } - forgeItem.name = item.id == "PET" ? "[Lvl 1] Ammonite" : dbObject ? dbObject.name : item.id; + forgeItem.name = + item.type == "PETS" ? "[Lvl 1] " + helper.titleCase(item.id) : dbObject ? dbObject.name : item.id; const timeFinished = item.startTime + forgeTime; forgeItem.timeFinished = timeFinished; From 6a3f18e94c3bed5c685a48e142c4188f66770bc2 Mon Sep 17 00:00:00 2001 From: Gylfirst <30391973+gylfirst@users.noreply.github.com> Date: Tue, 5 Nov 2024 16:09:52 +0100 Subject: [PATCH 2/4] fix: armadillo abilities --- src/constants/pet-stats.js | 36 ++++++++++++------------------------ 1 file changed, 12 insertions(+), 24 deletions(-) diff --git a/src/constants/pet-stats.js b/src/constants/pet-stats.js index 5aeb4c1ae0..72673ed891 100644 --- a/src/constants/pet-stats.js +++ b/src/constants/pet-stats.js @@ -493,12 +493,12 @@ class Armadillo extends Pet { } get abilities() { - const list = [this.first, this.second, this.third]; + const list = [this.first, this.second]; if (this.rarity >= RARE) { - list.push(this.fourth); + list.push(this.third); } if (this.rarity >= LEGENDARY) { - list.push(this.fifth); + list.push(this.fourth); } return list; } @@ -506,43 +506,31 @@ class Armadillo extends Pet { get first() { return { name: "§6Rideable", - desc: [`§7Right-click on your summoned pet to ride it!`], + desc: [`§7Right-click on your summoned pet to ride it! Moves faster based on your §f${SYMBOLS.speed} Speed§7.`], }; } get second() { return { name: "§6Tunneler", - desc: [ - `§7The Armadillo breaks all stone or ore in its path while you are riding it in the §3Crystal Hollows §7using your held item.`, - ], + desc: [`§7While riding in the §5Crystal Hollows§7, this Pet breaks all blocks in its path using your held item.`], }; } get third() { - return { - name: "§6Earth Surfer", - desc: [`§7The Armadillo moves faster based on your §f${SYMBOLS.speed} Speed§7.`], - }; - } - - get fourth() { - const mult = getValue(this.rarity, { rare: 0.2, epic: 0.3 }); + const mult = getValue(this.rarity, { rare: 0.2, epic: 0.3, legendary: 0.4 }); return { name: "§6Rolling Miner", - desc: [`§7Every §a${round(60 - this.level * mult, 1)} §7seconds, the next gemstone you mine gives §a2x §7drops.`], + desc: [ + `§7Every §a${round(60 - this.level * mult, 1)} §7seconds, the next §5Gemstone§7 you mine gives §a2x §7drops.`, + ], }; } - get fifth() { - const mult = getValue(this.rarity, { legendary: 0.5 }); + get fourth() { return { - name: "§6Mobile Tank", - desc: [ - `§7For every §a${round(100 - this.level * mult, 1)} ${SYMBOLS.defense} Defense§7, gain §f+1 ${ - SYMBOLS.speed - } Speed §7and §6+1 ${SYMBOLS.mining_speed} Mining Speed§7.`, - ], + name: "§6Long Claws", + desc: [`§7Grants §e+${round(this.level * 3)} ${SYMBOLS.mining_spread} Mining Spread§7 while mining Hard Stone.`], }; } } From 861dc20311a2bc0bca8502b15b6b59fa2cb2faf7 Mon Sep 17 00:00:00 2001 From: Gylfirst <30391973+gylfirst@users.noreply.github.com> Date: Sat, 7 Dec 2024 21:49:44 +0100 Subject: [PATCH 3/4] feat: add fourth ability for Mythic Rabbit --- src/constants/pet-stats.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/constants/pet-stats.js b/src/constants/pet-stats.js index 72673ed891..a874a3f448 100644 --- a/src/constants/pet-stats.js +++ b/src/constants/pet-stats.js @@ -457,6 +457,9 @@ class Rabbit extends Pet { if (this.rarity >= LEGENDARY) { list.push(this.third); } + if (this.rarity >= MYTHIC) { + list.push(this.fourth); + } return list; } @@ -483,6 +486,15 @@ class Rabbit extends Pet { desc: [`§7Farming minions work §a${round(this.level * mult, 1)}% §7faster while on your island.`], }; } + + get fourth() { + return { + name: "§6Chocolate Injections", + desc: [ + `§7Increases §6Chocolate Factory§7 production by §a+${round(0.01 + (this.level - 1) * 0.0004, 3)}x§7. Duplicate §aChocolate Rabbits§7 that you find grant §6${round(1.3 + (this.level - 1) * 0.32, 1)}% Chocolate§7.`, + ], + }; + } } class Armadillo extends Pet { From 621554d908ae72a530eb11b696bb8482441fd5da Mon Sep 17 00:00:00 2001 From: Gylfirst <30391973+gylfirst@users.noreply.github.com> Date: Tue, 17 Dec 2024 00:19:13 +0100 Subject: [PATCH 4/4] fix: Bejeweled Collar marked as pet in forge --- src/stats/mining.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/stats/mining.js b/src/stats/mining.js index 28d0d4a8d5..3cb081c4ca 100644 --- a/src/stats/mining.js +++ b/src/stats/mining.js @@ -104,8 +104,12 @@ async function getForge(userProfile) { forgeTime *= constants.QUICK_FORGE_MULTIPLIER[quickForge]; } - forgeItem.name = - item.type == "PETS" ? "[Lvl 1] " + helper.titleCase(item.id) : dbObject ? dbObject.name : item.id; + if (item.id == "BEJEWELED_COLLAR") { + forgeItem.name = helper.titleCase(item.id.replace("_", " ")); + } else { + forgeItem.name = + item.type == "PETS" ? "[Lvl 1] " + helper.titleCase(item.id) : dbObject ? dbObject.name : item.id; + } const timeFinished = item.startTime + forgeTime; forgeItem.timeFinished = timeFinished;