diff --git a/src/data/layers/dyes.tsx b/src/data/layers/dyes.tsx index 4d7a5b6..5c97f7d 100644 --- a/src/data/layers/dyes.tsx +++ b/src/data/layers/dyes.tsx @@ -91,21 +91,25 @@ const layer = createLayer(id, function (this: BaseLayer) { description: `${options.name} Chambers` })) ]; - if (options.color === "yellow" && oil.row3Upgrades[0].bought.value){ + if (options.color === "yellow" && oil.row3Upgrades[0].bought.value) { modifiers.push( createMultiplicativeModifier(() => ({ - multiplier(){return Decimal.add(dyes.red.amount.value,1).log10().pow(0.75)}, + multiplier() { + return Decimal.add(dyes.red.amount.value, 1).log10().pow(0.75); + }, description: "Dye Synergy I" })) - ) + ); } - if (options.color === "red" && oil.row3Upgrades[3].bought.value){ + if (options.color === "red" && oil.row3Upgrades[3].bought.value) { modifiers.push( createMultiplicativeModifier(() => ({ - multiplier(){return Decimal.add(dyes.blue.amount.value,1).log10()}, + multiplier() { + return Decimal.add(dyes.blue.amount.value, 1).log10(); + }, description: "Dye Synergy II" })) - ) + ); } if (options.color === "red" || options.color === "yellow") { modifiers.push( @@ -253,9 +257,16 @@ const layer = createLayer(id, function (this: BaseLayer) { }, inverseCost() { if (unref(buyable.visibility) != Visibility.Visible) return Decimal.dZero; - return unref(costs).reduce((pre, c) => - Decimal.min(this.inverseCostPre(Decimal.div(c.res.value, unref(c.base)).root(unref(c.root ?? 1))), pre) - , Decimal.dInf); + return unref(costs).reduce( + (pre, c) => + Decimal.min( + this.inverseCostPre( + Decimal.div(c.res.value, unref(c.base)).root(unref(c.root ?? 1)) + ), + pre + ), + Decimal.dInf + ); }, canPurchase: computed((cost?: DecimalSource) => { if (unref(buyable.visibility) != Visibility.Visible) return false; @@ -532,7 +543,12 @@ const layer = createLayer(id, function (this: BaseLayer) { .pow(upgrades.coalUpg.bought.value ? 1.2 : 1) .pow(management.elfTraining.clothElfTraining.milestones[3].earned.value ? 1.1 : 1) ), - orange2: computed(() => Decimal.add(dyes.orange.amount.value, 1).log2().plus(1).pow(oil.row3Upgrades[1].bought.value ? 2.5 : 1)), + orange2: computed(() => + Decimal.add(dyes.orange.amount.value, 1) + .log2() + .plus(1) + .pow(oil.row3Upgrades[1].bought.value ? 2.5 : 1) + ), green1: computed(() => Decimal.pow(2, Decimal.add(dyes.green.amount.value, 1).log2().sqrt()) .pow(upgrades.coalUpg.bought.value ? 1.2 : 1) @@ -742,6 +758,12 @@ const layer = createLayer(id, function (this: BaseLayer) { ), "Sum of Dyes" ); + const secondaryDyeSum = computed(() => + [dyes.orange, dyes.green, dyes.purple].reduce( + (acc, curr) => acc.add(curr.amount.value), + new Decimal(0) + ) + ); const { total: totalDyeSum, trackerDisplay } = setUpDailyProgressTracker({ resource: dyeSum, @@ -764,6 +786,7 @@ const layer = createLayer(id, function (this: BaseLayer) { dyeSum, boosts, totalDyeSum, + secondaryDyeSum, minWidth: 700, generalTabCollapsed, upgrades, diff --git a/src/data/layers/oil.tsx b/src/data/layers/oil.tsx index dd37b69..a3a7f0c 100644 --- a/src/data/layers/oil.tsx +++ b/src/data/layers/oil.tsx @@ -741,7 +741,7 @@ const layer = createLayer(id, function (this: BaseLayer) { cost: 1e13, display: { title: "Dye Synergy I", - description: "Red dye boosts yellow dye gain *(log(x)^0.75)" + description: "Red dye boosts yellow dye gain by (log(x)^0.75)" }, visibility: () => showIf(management.elfTraining.oilElfTraining.milestones[4].earned.value), @@ -762,8 +762,13 @@ const layer = createLayer(id, function (this: BaseLayer) { resource: noPersist(oil), cost: 1e15, display: { - title: "Colorful Focus", - description: "Sum of secondary dyes increases max focus multiplier by cbrt(x)" + title: "Colorful Plastic", + description: jsx(() => ( + <> + Sum of secondary dyes increases plastic gain by 3 + x + + )) }, visibility: () => showIf(management.elfTraining.oilElfTraining.milestones[4].earned.value), @@ -774,7 +779,7 @@ const layer = createLayer(id, function (this: BaseLayer) { cost: 1e16, display: { title: "Dye Synergy II", - description: "Blue dye boosts red dye gain *log(x)" + description: "Blue dye boosts red dye gain by log(x)" }, visibility: () => showIf(management.elfTraining.oilElfTraining.milestones[4].earned.value), diff --git a/src/data/layers/paper.tsx b/src/data/layers/paper.tsx index f18d412..162108e 100644 --- a/src/data/layers/paper.tsx +++ b/src/data/layers/paper.tsx @@ -6,7 +6,7 @@ import Spacer from "components/layout/Spacer.vue"; import Modal from "components/Modal.vue"; import { createCollapsibleModifierSections, setUpDailyProgressTracker } from "data/common"; import { main } from "data/projEntry"; -import { BuyableOptions, createBuyable, GenericBuyable } from "features/buyable"; +import { BuyableOptions, createBuyable } from "features/buyable"; import { createClickable } from "features/clickables/clickable"; import { createCumulativeConversion, createPolynomialScaling } from "features/conversion"; import { jsx, showIf } from "features/feature"; @@ -19,15 +19,15 @@ import { createMultiplicativeModifier, createSequentialModifier, Modifier } from import { noPersist } from "game/persistence"; import Decimal, { DecimalSource, format, formatSmall, formatWhole } from "util/bignum"; import { WithRequired } from "util/common"; -import { render, renderCol, renderGrid, renderRow } from "util/vue"; +import { render, renderCol, renderGrid } from "util/vue"; import { computed, ComputedRef, ref, unref } from "vue"; import cloth from "./cloth"; import coal from "./coal"; +import dyes from "./dyes"; import elves, { ElfBuyable } from "./elves"; +import management from "./management"; import plastic from "./plastic"; import trees from "./trees"; -import dyes from "./dyes"; -import management from "./management"; import workshop from "./workshop"; import wrappingPaper from "./wrapping-paper"; @@ -360,17 +360,17 @@ const layer = createLayer(id, function (this: BaseLayer) { description: "Books are less expensive" } })); - const classroomUpgrade = createUpgrade(() => ({ + const treeUpgrade = createUpgrade(() => ({ resource: noPersist(paper), cost: 1e40, visibility: () => showIf(management.elfTraining.heavyDrillElfTraining.milestones[4].earned.value), display: { - title: "Classroom Supplies", - description: "Classrooms' effect is raised to the 1.1" + title: "Un-Processing", + description: "Log gain is raised to the ^1.05" } })); - const upgrades2 = { ashUpgrade, bookUpgrade, classroomUpgrade }; + const upgrades2 = { ashUpgrade, bookUpgrade, treeUpgrade }; const paperGain = createSequentialModifier(() => [ createMultiplicativeModifier(() => ({ multiplier: 2, diff --git a/src/data/layers/plastic.tsx b/src/data/layers/plastic.tsx index f6131cf..b201a1a 100644 --- a/src/data/layers/plastic.tsx +++ b/src/data/layers/plastic.tsx @@ -281,6 +281,11 @@ const layer = createLayer(id, function (this: BaseLayer) { multiplier: () => Decimal.add(oil.buildExtractor.amount.value, 1).pow(1.25), description: "Snowball Level 4", enabled: management.elfTraining.kilnElfTraining.milestones[3].earned + })), + createMultiplicativeModifier(() => ({ + multiplier: () => Decimal.add(dyes.secondaryDyeSum.value, 1).cbrt(), + description: "Colorful Plastic", + enabled: oil.row3Upgrades[2].bought })) ]); const computedPlasticGain = computed(() => plasticGain.apply(0)); diff --git a/src/data/layers/trees.tsx b/src/data/layers/trees.tsx index 312adbf..49193c9 100644 --- a/src/data/layers/trees.tsx +++ b/src/data/layers/trees.tsx @@ -532,6 +532,11 @@ const layer = createLayer(id, function (this: BaseLayer) { exponent: 1.2, description: "100% Foundation Completed", enabled: workshop.milestones.logGainMilestone3.earned + })), + createExponentialModifier(() => ({ + exponent: 1.05, + description: "Un-Processing", + enabled: paper.upgrades2.treeUpgrade.bought })) ]);