From b23ef379925d9f7db96818280bcd290bbefa0e3b Mon Sep 17 00:00:00 2001 From: Sense101 <67970865+Sense101@users.noreply.github.com> Date: Wed, 5 May 2021 21:20:46 +0100 Subject: [PATCH] initial test --- src/js/game/modes/puzzle_play.js | 3 +++ src/js/savegame/puzzle_serializer.js | 1 + src/js/savegame/savegame_typedefs.js | 5 ++++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/js/game/modes/puzzle_play.js b/src/js/game/modes/puzzle_play.js index e4d05076..937dec04 100644 --- a/src/js/game/modes/puzzle_play.js +++ b/src/js/game/modes/puzzle_play.js @@ -28,6 +28,7 @@ import { createLogger } from "../../core/logging"; import { HUDPuzzleCompleteNotification } from "../hud/parts/puzzle_complete_notification"; import { HUDPuzzlePlaySettings } from "../hud/parts/puzzle_play_settings"; import { MetaBlockBuilding } from "../buildings/block"; +import { MetaBuilding } from "../meta_building"; const logger = createLogger("puzzle-play"); const copy = require("clipboard-copy"); @@ -45,6 +46,7 @@ export class PuzzlePlayGameMode extends PuzzleGameMode { constructor(root, { puzzle }) { super(root); + /** @type {(typeof MetaBuilding)[]} */ this.hiddenBuildings = [ MetaConstantProducerBuilding, MetaGoalAcceptorBuilding, @@ -67,6 +69,7 @@ export class PuzzlePlayGameMode extends PuzzleGameMode { MetaComparatorBuilding, MetaTransistorBuilding, ]; + this.hiddenBuildings.push(puzzle.game.excludedBuildings); this.additionalHudParts.puzzlePlayMetadata = HUDPuzzlePlayMetadata; this.additionalHudParts.puzzlePlaySettings = HUDPuzzlePlaySettings; diff --git a/src/js/savegame/puzzle_serializer.js b/src/js/savegame/puzzle_serializer.js index 49dd4ef6..1f54e303 100644 --- a/src/js/savegame/puzzle_serializer.js +++ b/src/js/savegame/puzzle_serializer.js @@ -90,6 +90,7 @@ export class PuzzleSerializer { w: mode.zoneWidth, h: mode.zoneHeight, }, + excludedBuildings: [], }; } diff --git a/src/js/savegame/savegame_typedefs.js b/src/js/savegame/savegame_typedefs.js index 64a06dac..059cfe5d 100644 --- a/src/js/savegame/savegame_typedefs.js +++ b/src/js/savegame/savegame_typedefs.js @@ -41,6 +41,8 @@ * }} SavegamesData */ +import { MetaBuilding } from "../game/meta_building"; + // Notice: Update backend too /** * @typedef {{ @@ -84,7 +86,8 @@ * @typedef {{ * version: number; * bounds: { w: number; h: number; }, - * buildings: (PuzzleGameBuildingGoal | PuzzleGameBuildingConstantProducer | PuzzleGameBuildingBlock)[] + * buildings: (PuzzleGameBuildingGoal | PuzzleGameBuildingConstantProducer | PuzzleGameBuildingBlock)[], + * excludedBuildings: (typeof MetaBuilding)[], * }} PuzzleGameData */