From 8d3092802effb2a228fddbc5856a2752fc562eb5 Mon Sep 17 00:00:00 2001 From: thepaperpilot Date: Sat, 17 Dec 2022 10:07:43 -0600 Subject: [PATCH] Handle mastery req for workshop --- src/data/layers/workshop.tsx | 61 +++++++++++++++++++++++------------- 1 file changed, 40 insertions(+), 21 deletions(-) diff --git a/src/data/layers/workshop.tsx b/src/data/layers/workshop.tsx index 815639d..10a6449 100644 --- a/src/data/layers/workshop.tsx +++ b/src/data/layers/workshop.tsx @@ -87,40 +87,43 @@ const layer = createLayer(id, function (this: BaseLayer) { display: jsx(() => ( <> - Build{" "} - {formatWhole(foundationConversion.actualGain.value)} - % of the foundation + Build {formatWhole(foundationConversion.actualGain.value)}% of the foundation

- {(main.isMastery.value || mastered.value) ? "Requirement" : "Cost"}:{" "} + {main.isMastery.value || mastered.value ? "Requirement" : "Cost"}:{" "} {displayResource( trees.logs, Decimal.gte(foundationConversion.actualGain.value, 1) ? foundationConversion.currentAt.value : foundationConversion.nextAt.value - )} {trees.logs.displayName} + )}{" "} + {trees.logs.displayName} )), visibility: () => - showIf(Decimal.lt( - foundationProgress.value, - management.elfTraining.expandersElfTraining.milestones[2].earned.value - ? 1000 - : 100 - )), - canClick: () => { - if (Decimal.lt(trees.logs.value, foundationConversion.nextAt.value)) { - return false; - } - if (Decimal.gte( + showIf( + Decimal.lt( foundationProgress.value, management.elfTraining.expandersElfTraining.milestones[2].earned.value ? 1000 : 100 - )) { + ) + ), + canClick: () => { + if (Decimal.lt(trees.logs.value, foundationConversion.nextAt.value)) { + return false; + } + if ( + Decimal.gte( + foundationProgress.value, + management.elfTraining.expandersElfTraining.milestones[2].earned.value + ? 1000 + : 100 + ) + ) { return false; } return true; @@ -303,15 +306,27 @@ const layer = createLayer(id, function (this: BaseLayer) { width: 600, height: 25, fillStyle: `backgroundColor: ${colorDark}`, - progress: () => (main.day.value === day ? Decimal.div(foundationProgress.value, 100) : 1), + progress: () => + main.day.value === day || main.currentlyMastering.value?.name === name + ? Decimal.div(foundationProgress.value, 100) + : 1, display: jsx(() => - main.day.value === day ? <>{formatWhole(foundationProgress.value)}% : "" + main.day.value === day || main.currentlyMastering.value?.name === name ? ( + <>{formatWhole(foundationProgress.value)}% + ) : ( + "" + ) ) })); watchEffect(() => { if (main.day.value === day && Decimal.gte(foundationProgress.value, 100)) { main.completeDay(); + } else if ( + main.currentlyMastering.value?.name === name && + Decimal.gte(foundationProgress.value, 100) + ) { + main.completeMastery(); } }); @@ -330,7 +345,7 @@ const layer = createLayer(id, function (this: BaseLayer) { extraExpansionMilestone2: { earned: persistent(false) }, extraExpansionMilestone3: { earned: persistent(false) }, extraExpansionMilestone4: { earned: persistent(false) }, - extraExpansionMilestone5: { earned: persistent(false) }, + extraExpansionMilestone5: { earned: persistent(false) } } }; const mastered = persistent(false); @@ -370,7 +385,11 @@ const layer = createLayer(id, function (this: BaseLayer) { {milestonesDisplay()} )), - minimizedDisplay: jsx(() => (
{name} - {format(foundationProgress.value)}% {foundationProgress.displayName}
)), + minimizedDisplay: jsx(() => ( +
+ {name} - {format(foundationProgress.value)}% {foundationProgress.displayName} +
+ )), mastery, mastered };