diff --git a/src/js/game/hud/parts/building_placer.js b/src/js/game/hud/parts/building_placer.js index 3bad0c70..81f9dbff 100644 --- a/src/js/game/hud/parts/building_placer.js +++ b/src/js/game/hud/parts/building_placer.js @@ -400,13 +400,12 @@ export class HUDBuildingPlacer extends BaseHUDPart { if ( this.root.keyMapper.getBinding(KEYMAPPINGS.placementModifiers.cycleInverse).isCurrentlyPressed() ) { - if (index - 1 < 0) indexModifier = availableVariantsLength - 1; - else indexModifier -= 1; + indexModifier -= 1; } else { indexModifier += 1; } - return (index + indexModifier) % availableVariantsLength; + return (index + indexModifier + availableVariantsLength) % availableVariantsLength; } /** diff --git a/src/js/game/hud/parts/buildings_toolbar.js b/src/js/game/hud/parts/buildings_toolbar.js index 777913ea..fb102c47 100644 --- a/src/js/game/hud/parts/buildings_toolbar.js +++ b/src/js/game/hud/parts/buildings_toolbar.js @@ -114,9 +114,7 @@ export class HUDBuildingsToolbar extends BaseHUDPart { if (actionMapper.getBinding(KEYMAPPINGS.placementModifiers.cycleInverse).isCurrentlyPressed()) { for (let i = 0; i < toolbarBuildings.length; --i, --newIndex) { - if (newIndex < 0) newIndex = newIndex + toolbarBuildings.length; - newIndex %= toolbarBuildings.length; - + newIndex = (newIndex + toolbarBuildings.length) % toolbarBuildings.length; if (this.isCycledBuildingSelectable(newIndex)) { break; }