diff --git a/src/js/game/hud/parts/building_placer.js b/src/js/game/hud/parts/building_placer.js index 9dae6ba0..0248c17d 100644 --- a/src/js/game/hud/parts/building_placer.js +++ b/src/js/game/hud/parts/building_placer.js @@ -178,7 +178,7 @@ export class HUDBuildingPlacer extends HUDBuildingPlacerLogic { consumeEvents: true, targetOnly: true, }); - detector.click.add(() => this.currentVariant.set(variant)); + detector.click.add(() => this.setVariant(variant)); } } diff --git a/src/js/game/hud/parts/building_placer_logic.js b/src/js/game/hud/parts/building_placer_logic.js index d0737df8..1b61e2c3 100644 --- a/src/js/game/hud/parts/building_placer_logic.js +++ b/src/js/game/hud/parts/building_placer_logic.js @@ -506,12 +506,20 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart { ); const newIndex = (index + 1) % availableVariants.length; const newVariant = availableVariants[newIndex]; - this.currentVariant.set(newVariant); - - this.preferredVariants[metaBuilding.getId()] = newVariant; + this.setVariant(newVariant); } } + /** + * Sets the current variant to the given variant + */ + setVariant(variant) { + const metaBuilding = this.currentMetaBuilding.get(); + this.currentVariant.set(variant); + + this.preferredVariants[metaBuilding.getId()] = variant; + } + /** * Performs the direction locked placement between two points after * releasing the mouse