diff --git a/src/js/game/core.js b/src/js/game/core.js index a7eb8c8d..02f08678 100644 --- a/src/js/game/core.js +++ b/src/js/game/core.js @@ -142,6 +142,8 @@ export class GameCore { root: this.root, origin: new Vector(-2, -2), rotation: 0, + originalRotation: 0, + rotationVariant: 0, }); } diff --git a/src/js/game/hud/parts/building_placer.js b/src/js/game/hud/parts/building_placer.js index b3bc4108..3e8b29ff 100644 --- a/src/js/game/hud/parts/building_placer.js +++ b/src/js/game/hud/parts/building_placer.js @@ -270,6 +270,7 @@ export class HUDBuildingPlacer extends BaseHUDPart { origin: tile, rotation, rotationVariant, + originalRotation: this.currentBaseRotation, building: this.currentMetaBuilding.get(), }) ) { diff --git a/src/js/game/logic.js b/src/js/game/logic.js index f9c50f58..19fa5675 100644 --- a/src/js/game/logic.js +++ b/src/js/game/logic.js @@ -141,10 +141,11 @@ export class GameLogic { * @param {object} param0 * @param {Vector} param0.origin * @param {number} param0.rotation + * @param {number} param0.originalRotation * @param {number} param0.rotationVariant * @param {MetaBuilding} param0.building */ - tryPlaceBuilding({ origin, rotation, rotationVariant, building }) { + tryPlaceBuilding({ origin, rotation, rotationVariant, originalRotation, building }) { if (this.checkCanPlaceBuilding({ origin, rotation, rotationVariant, building })) { // Remove any removeable entities below const checker = new StaticMapEntityComponent({ @@ -172,6 +173,7 @@ export class GameLogic { origin, rotation, rotationVariant, + originalRotation, }); return true; } diff --git a/src/js/game/meta_building.js b/src/js/game/meta_building.js index 7e101e4c..60d01905 100644 --- a/src/js/game/meta_building.js +++ b/src/js/game/meta_building.js @@ -102,16 +102,17 @@ export class MetaBuilding { * @param {GameRoot} param0.root * @param {Vector} param0.origin Origin tile * @param {number=} param0.rotation Rotation + * @param {number=} param0.originalRotation Original Rotation * @param {number=} param0.rotationVariant Rotation variant */ - createAndPlaceEntity({ root, origin, rotation = 0, rotationVariant = 0 }) { + createAndPlaceEntity({ root, origin, rotation = 0, originalRotation = 0, rotationVariant = 0 }) { const entity = new Entity(root); entity.addComponent( new StaticMapEntityComponent({ spriteKey: "sprites/buildings/" + this.id + ".png", origin: new Vector(origin.x, origin.y), rotation, - originalRotation: rotation, + originalRotation, tileSize: this.getDimensions().copy(), silhouetteColor: this.getSilhouetteColor(), })