diff --git a/src/js/game/hud/parts/pinned_shapes.js b/src/js/game/hud/parts/pinned_shapes.js index 91663c56..10c1f88a 100644 --- a/src/js/game/hud/parts/pinned_shapes.js +++ b/src/js/game/hud/parts/pinned_shapes.js @@ -1,12 +1,11 @@ import { ClickDetector } from "../../../core/click_detector"; -import { formatBigNumber, makeDiv, arrayDeleteValue } from "../../../core/utils"; -import { ShapeDefinition } from "../../shape_definition"; -import { BaseHUDPart } from "../base_hud_part"; -import { blueprintShape, UPGRADES } from "../../upgrades"; -import { enumHubGoalRewards } from "../../tutorial_goals"; -import { enumAnalyticsDataSource } from "../../production_analytics"; -import { T } from "../../../translations"; import { globalConfig } from "../../../core/config"; +import { arrayDeleteValue, formatBigNumber, makeDiv } from "../../../core/utils"; +import { T } from "../../../translations"; +import { enumAnalyticsDataSource } from "../../production_analytics"; +import { ShapeDefinition } from "../../shape_definition"; +import { enumHubGoalRewards } from "../../tutorial_goals"; +import { BaseHUDPart } from "../base_hud_part"; /** * Manages the pinned shapes on the left side of the screen @@ -82,7 +81,7 @@ export class HUDPinnedShapes extends BaseHUDPart { updateShapesAfterUpgrade() { for (let i = 0; i < this.pinnedShapes.length; ++i) { const key = this.pinnedShapes[i]; - if (key === blueprintShape) { + if (key === this.root.gameMode.getBlueprintShapeKey()) { // Ignore blueprint shapes continue; } @@ -107,13 +106,14 @@ export class HUDPinnedShapes extends BaseHUDPart { if (key === this.root.hubGoals.currentGoal.definition.getHash()) { return this.root.hubGoals.currentGoal.required; } - if (key === blueprintShape) { + if (key === this.root.gameMode.getBlueprintShapeKey()) { return null; } // Check if this shape is required for any upgrade - for (const upgradeId in UPGRADES) { - const upgradeTiers = UPGRADES[upgradeId]; + const upgrades = this.root.gameMode.getUpgrades(); + for (const upgradeId in upgrades) { + const upgradeTiers = upgrades[upgradeId]; const currentTier = this.root.hubGoals.getUpgradeLevel(upgradeId); const tierHandle = upgradeTiers[currentTier]; @@ -138,7 +138,10 @@ export class HUDPinnedShapes extends BaseHUDPart { * @param {string} key */ isShapePinned(key) { - if (key === this.root.hubGoals.currentGoal.definition.getHash() || key === blueprintShape) { + if ( + key === this.root.hubGoals.currentGoal.definition.getHash() || + key === this.root.gameMode.getBlueprintShapeKey() + ) { // This is a "special" shape which is always pinned return true; } @@ -178,7 +181,7 @@ export class HUDPinnedShapes extends BaseHUDPart { // Pin blueprint shape as well if (this.root.hubGoals.isRewardUnlocked(enumHubGoalRewards.reward_blueprints)) { this.internalPinShape({ - key: blueprintShape, + key: this.root.gameMode.getBlueprintShapeKey(), canUnpin: false, className: "blueprint", }); @@ -306,7 +309,7 @@ export class HUDPinnedShapes extends BaseHUDPart { return; } - if (key === blueprintShape) { + if (key === this.root.gameMode.getBlueprintShapeKey()) { // Can not pin the blueprint shape return; }