From eede682a69c01775a005912f850676405985100e Mon Sep 17 00:00:00 2001 From: thepaperpilot Date: Tue, 20 Dec 2022 19:12:54 -0600 Subject: [PATCH 1/2] Prepare toys for release --- src/data/Scene.vue | 2 + src/data/layers/dyes.tsx | 24 +++++---- src/data/layers/toys.tsx | 97 ++++++++++++++++++++++++------------- src/data/projEntry.tsx | 10 ++-- src/data/symbols/truck.png | Bin 0 -> 22435 bytes 5 files changed, 87 insertions(+), 46 deletions(-) create mode 100644 src/data/symbols/truck.png diff --git a/src/data/Scene.vue b/src/data/Scene.vue index 1e090a1..8843cc2 100644 --- a/src/data/Scene.vue +++ b/src/data/Scene.vue @@ -58,6 +58,7 @@ + @@ -79,6 +80,7 @@ import advManagement from "./symbols/workshopMansion.png"; import letters from "./symbols/letterbox.png"; import wrappingPaper from "./symbols/wrappingPaper.png"; import ribbons from "./symbols/ribbons.png"; +import toys from "./symbols/truck.png"; defineProps<{ day: number; diff --git a/src/data/layers/dyes.tsx b/src/data/layers/dyes.tsx index 4eb5246..2582071 100644 --- a/src/data/layers/dyes.tsx +++ b/src/data/layers/dyes.tsx @@ -374,6 +374,8 @@ const layer = createLayer(id, function (this: BaseLayer) { enabled: main.days[day - 1].opened })); + const visibility = convertComputable(options.visibility ?? Visibility.Visible); + return { name: options.name, amount, @@ -381,15 +383,19 @@ const layer = createLayer(id, function (this: BaseLayer) { hotkey, toGenerate, computedToGenerate, - display: jsx(() => ( - - )) + display: jsx(() => + unref(visibility) === Visibility.Visible ? ( + + ) : ( + "" + ) + ) }; } diff --git a/src/data/layers/toys.tsx b/src/data/layers/toys.tsx index f5d9612..97f87a8 100644 --- a/src/data/layers/toys.tsx +++ b/src/data/layers/toys.tsx @@ -4,49 +4,38 @@ */ import Spacer from "components/layout/Spacer.vue"; import Modal from "components/Modal.vue"; -import { main } from "data/projEntry"; -import { createBar } from "features/bars/bar"; import { createCollapsibleMilestones, createCollapsibleModifierSections, setUpDailyProgressTracker } from "data/common"; +import { main } from "data/projEntry"; import { createBuyable, GenericBuyable } from "features/buyable"; -import { createClickable } from "features/clickables/clickable"; import { jsx, showIf } from "features/feature"; -import { createHotkey } from "features/hotkey"; -import MainDisplay from "features/resources/MainDisplay.vue"; import { createMilestone } from "features/milestones/milestone"; -import { createResource, Resource } from "features/resources/resource"; +import MainDisplay from "features/resources/MainDisplay.vue"; +import { createResource } from "features/resources/resource"; import { createUpgrade } from "features/upgrades/upgrade"; import { globalBus } from "game/events"; import { BaseLayer, createLayer } from "game/layers"; -import { - createAdditiveModifier, - createExponentialModifier, - createMultiplicativeModifier, - createSequentialModifier, - Modifier -} from "game/modifiers"; -import { noPersist, persistent } from "game/persistence"; -import Decimal, { DecimalSource, format, formatGain, formatLimit, formatWhole } from "util/bignum"; -import { Direction, WithRequired } from "util/common"; +import { createSequentialModifier } from "game/modifiers"; +import { noPersist } from "game/persistence"; +import Decimal, { DecimalSource, format, formatWhole } from "util/bignum"; import { render, renderGrid, renderRow } from "util/vue"; import { computed, ref } from "vue"; +import cloth from "./cloth"; +import dyes from "./dyes"; import metal from "./metal"; import plastic from "./plastic"; -import cloth from "./cloth"; import trees from "./trees"; -import dyes from "./dyes"; -import paper from "./paper"; import workshop from "./workshop"; + const id = "toys"; const day = 17; const layer = createLayer(id, function (this: BaseLayer) { const name = "Toys"; - const colorBright = "#4BDC13"; - const colorDark = "green"; + const color = "cornflowerblue"; const clothes = createResource(0, "clothes"); const woodenBlocks = createResource(0, " wooden blocks"); @@ -79,8 +68,28 @@ const layer = createLayer(id, function (this: BaseLayer) {
You have {formatWhole(clothes.value)} clothes.
- Costs {format(clothesCost.value.cloth)} cloth and requires{" "} - {format(clothesCost.value.dye)} of red, yellow, and blue dye + Costs{" "} + + {format(clothesCost.value.cloth)} cloth + {" "} + and requires{" "} + + Decimal.lt(d.amount.value, clothesCost.value.dye) + ) + ? "unaffordable" + : "" + } + > + {format(clothesCost.value.dye)} of red, yellow, and blue dye +
)), @@ -154,8 +163,26 @@ const layer = createLayer(id, function (this: BaseLayer) {
You have {formatWhole(trucks.value)} trucks.
- Costs {format(trucksCost.value.metal)} metal and{" "} - {format(trucksCost.value.plastic)} plastic + Costs{" "} + + {format(trucksCost.value.metal)} metal + {" "} + and{" "} + + {format(trucksCost.value.plastic)} plastic +
)), @@ -213,22 +240,25 @@ const layer = createLayer(id, function (this: BaseLayer) { requirement: "100 toys", effectDisplay: "Unlock black dyes." }, - shouldEarn: () => Decimal.gte(toySum.value, 100) + shouldEarn: () => Decimal.gte(toySum.value, 100), + visibility: () => showIf(milestone1.earned.value) })); - + const milestone3 = createMilestone(() => ({ display: { requirement: "200 toys", effectDisplay: "Beach wrapping paper is much more powerful." }, - shouldEarn: () => Decimal.gte(toySum.value, 200) + shouldEarn: () => Decimal.gte(toySum.value, 200), + visibility: () => showIf(milestone2.earned.value) })); const milestone4 = createMilestone(() => ({ display: { requirement: "350 toys", effectDisplay: "Gain 50x oil and plastic." }, - shouldEarn: () => Decimal.gte(toySum.value, 350) + shouldEarn: () => Decimal.gte(toySum.value, 350), + visibility: () => showIf(milestone3.earned.value) })); const milestones = { milestone1, milestone2, milestone3, milestone4 }; const { collapseMilestones, display: milestonesDisplay } = @@ -287,7 +317,7 @@ const layer = createLayer(id, function (this: BaseLayer) { return { name, day, - color: colorBright, + color, clothes, woodenBlocks, trucks, @@ -305,19 +335,19 @@ const layer = createLayer(id, function (this: BaseLayer) { @@ -326,6 +356,7 @@ const layer = createLayer(id, function (this: BaseLayer) { {renderGrid(row1Upgrades)} +
You have made {formatWhole(toySum.value)} total toys
{milestonesDisplay()} )), diff --git a/src/data/projEntry.tsx b/src/data/projEntry.tsx index 4123930..84e14dd 100644 --- a/src/data/projEntry.tsx +++ b/src/data/projEntry.tsx @@ -48,6 +48,7 @@ import paperSymbol from "./symbols/paperStacks.png"; import plasticSymbol from "./symbols/plastic.png"; import ribbonsSymbol from "./symbols/ribbons.png"; import workshopSymbol from "./symbols/sws.png"; +import toysSymbol from "./symbols/truck.png"; import treeSymbol from "./symbols/tree.png"; import advManagementSymbol from "./symbols/workshopMansion.png"; import wrappingPaperSymbol from "./symbols/wrappingPaper.png"; @@ -416,10 +417,11 @@ export const main = createLayer("main", function (this: BaseLayer) { createDay(() => ({ day: 17, shouldNotify: false, - layer: "toys", // "toys1" - symbol: "", - story: "", - completedStory: "", + layer: "toys", + symbol: toysSymbol, + story: "You've had enough of this running around and stalling - it is time to create some toys NOW! You have everything you need and then some, so let's finally just sit down and get this process started!", + completedStory: + "In your haste you may have been a bit wasteful with resources, but it feels really good to finally make some meaningful process on making toys for Santa. You already envision plans on how to get elves to help you out and start pumping out these toys, but for now... Good Job!", masteredStory: "" })), createDay(() => ({ diff --git a/src/data/symbols/truck.png b/src/data/symbols/truck.png new file mode 100644 index 0000000000000000000000000000000000000000..5f988442b92689cd89511a42d10f59e2df13d4b3 GIT binary patch literal 22435 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 Laz9(=crp1OxB+q% literal 0 HcmV?d00001 From c20f6282a83b47ffbfeeaf7563161c021bf2ce35 Mon Sep 17 00:00:00 2001 From: thepaperpilot Date: Tue, 20 Dec 2022 19:33:02 -0600 Subject: [PATCH 2/2] Hardcap letters at 8e9 --- src/data/layers/letters.tsx | 5 +++-- src/data/projEntry.tsx | 26 +------------------------- 2 files changed, 4 insertions(+), 27 deletions(-) diff --git a/src/data/layers/letters.tsx b/src/data/layers/letters.tsx index d7bb010..1191824 100644 --- a/src/data/layers/letters.tsx +++ b/src/data/layers/letters.tsx @@ -79,7 +79,9 @@ const layer = createLayer(id, function (this: BaseLayer) { processingProgress.value, computedProcessingCooldown.value ).floor(); - letters.value = Decimal.times(amount, computedLettersGain.value).add(letters.value); + letters.value = Decimal.times(amount, computedLettersGain.value) + .add(letters.value) + .min(8e9); processingProgress.value = 0; } })); @@ -216,7 +218,6 @@ const layer = createLayer(id, function (this: BaseLayer) { multiplier: () => Decimal.div(paperBuyable.amount.value, 2).add(1), description: "Printed Labels" })) - ]); const computedLettersGain = computed(() => lettersGain.apply(1)); const processingCooldown = createSequentialModifier(() => [ diff --git a/src/data/projEntry.tsx b/src/data/projEntry.tsx index 84e14dd..7b2ac9e 100644 --- a/src/data/projEntry.tsx +++ b/src/data/projEntry.tsx @@ -615,29 +615,5 @@ export function fixOldSave( oldVersion: string | undefined, player: Partial // eslint-disable-next-line @typescript-eslint/no-empty-function -): void { - if (!["0.0", "0.1", "0.2", "0.3", "0.4"].includes(oldVersion ?? "")) { - return; - } - if ((player.layers?.workshop as LayerData | undefined)?.foundationProgress) { - (player.layers?.workshop as LayerData | undefined)!.foundationProgress = - Decimal.min( - (player.layers!.workshop as LayerData | undefined)! - .foundationProgress!, - 1000 - ); - } - /*player.offlineProd = false; - delete player.layers?.management; - if ((player.layers?.main as LayerData | undefined)?.days?.[11]) { - (player.layers!.main as LayerData).days![11].opened = false; - } - if ((player.layers?.main as LayerData | undefined)?.day === 12) { - (player.layers!.main as LayerData).day === 11; - player.devSpeed = 0; - } - if (player.tabs) { - player.tabs = player.tabs.filter(l => l !== "management"); - }*/ -} +): void {} /* eslint-enable @typescript-eslint/no-unused-vars */