diff --git a/src/data/layers/oil.tsx b/src/data/layers/oil.tsx index 2fbbb29..a50658f 100644 --- a/src/data/layers/oil.tsx +++ b/src/data/layers/oil.tsx @@ -246,7 +246,12 @@ const layer = createLayer(id, function (this: BaseLayer) { .mul(activeHeavy.value) .mul(Decimal.add(activeHeavy2.value, 1)) .mul(activeExtractor.value) - .mul(depth.value) + .mul( + Decimal.pow( + depth.value, + management.elfTraining.oilElfTraining.milestones[0].earned.value ? 1.2 : 1 + ) + ) .div(1e5) ); const buildPump = createBuyable(() => ({ @@ -752,6 +757,16 @@ const layer = createLayer(id, function (this: BaseLayer) { description: "Guide to drilling", enabled: paper.upgrades.drillingUpgrade.bought })), + createMultiplicativeModifier(() => ({ + multiplier: () => Decimal.add(totalOil.value, 1).log10().add(1), + description: "Cocoa Level 2", + enabled: management.elfTraining.oilElfTraining.milestones[1].earned + })), + createMultiplicativeModifier(() => ({ + multiplier: 2, + description: "Cocoa Level 3", + enabled: management.elfTraining.oilElfTraining.milestones[2].earned + })), createMultiplicativeModifier(() => ({ multiplier: () => coalEffectiveness.value, description: "Effectiveness", @@ -810,6 +825,11 @@ const layer = createLayer(id, function (this: BaseLayer) { multiplier: () => Decimal.add(buildHeavy2.amount.value, 1).sqrt(), description: "Faith Level 4", enabled: management.elfTraining.bonfireElfTraining.milestones[3].earned + })), + createMultiplicativeModifier(() => ({ + multiplier: 2, + description: "Cocoa Level 3", + enabled: management.elfTraining.oilElfTraining.milestones[2].earned })) ]) as WithRequired; const computedOilSpeed = computed(() => oilSpeed.apply(0)); @@ -1023,6 +1043,9 @@ const layer = createLayer(id, function (this: BaseLayer) { if (oilMilestones[1].earned.value) { upgrades.push(row2Upgrades); } + if (management.elfTraining.oilElfTraining.milestones[4].earned.value) { + upgrades.push(row3Upgrades); + } return ( <> {render(trackerDisplay)} diff --git a/src/data/layers/plastic.tsx b/src/data/layers/plastic.tsx index c8b7121..de55ba3 100644 --- a/src/data/layers/plastic.tsx +++ b/src/data/layers/plastic.tsx @@ -27,7 +27,7 @@ import { import { noPersist, persistent } from "game/persistence"; import Decimal, { DecimalSource, format, formatWhole } from "util/bignum"; import { render, renderCol, renderRow } from "util/vue"; -import { computed, ref, unref } from "vue"; +import { computed, ComputedRef, ref, unref } from "vue"; import boxes from "./boxes"; import metal from "./metal"; import oil from "./oil"; @@ -63,7 +63,11 @@ const layer = createLayer(id, function (this: BaseLayer) { )); const activeRefinery = persistent(0); - const oilCost = computed(() => Decimal.times(activeRefinery.value, 100)); + const oilCost = computed(() => + Decimal.times(activeRefinery.value, 100).times( + management.elfTraining.oilElfTraining.milestones[3].earned.value ? 5 : 1 + ) + ) as ComputedRef; const buildRefinery = createBuyable(() => ({ resource: metal.metal, cost() { @@ -230,7 +234,10 @@ const layer = createLayer(id, function (this: BaseLayer) { const plasticGain = createSequentialModifier(() => [ createAdditiveModifier(() => ({ - addend: activeRefinery, + addend: () => + management.elfTraining.oilElfTraining.milestones[3].earned.value + ? Decimal.times(activeRefinery.value, 5) + : activeRefinery.value, description: "Oil Refinery", enabled: () => Decimal.gt(activeRefinery.value, 0) })),