From 1f4d5f5573caee8c1e63e88ebc614b7e29487b6d Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Mon, 14 Sep 2020 21:48:46 +0300 Subject: [PATCH] Multiselect applies to civilian units and from city overlays --- core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt | 2 +- core/src/com/unciv/ui/worldscreen/unit/UnitTable.kt | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt b/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt index e0ff920704..df18193a47 100644 --- a/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt +++ b/core/src/com/unciv/ui/worldscreen/WorldMapHolder.kt @@ -223,7 +223,7 @@ class WorldMapHolder(internal val worldScreen: WorldScreen, internal val tileMap if (unit.currentMovement == 0f) unitGroup.color.a = 0.5f unitGroup.touchable = Touchable.enabled unitGroup.onClick { - worldScreen.bottomUnitTable.selectUnit(unit) + worldScreen.bottomUnitTable.selectUnit(unit, Gdx.input.isKeyPressed(Input.Keys.SHIFT_LEFT)) worldScreen.shouldUpdate = true unitActionOverlay?.remove() } diff --git a/core/src/com/unciv/ui/worldscreen/unit/UnitTable.kt b/core/src/com/unciv/ui/worldscreen/unit/UnitTable.kt index 0eeb6eb192..3c437bbbc6 100644 --- a/core/src/com/unciv/ui/worldscreen/unit/UnitTable.kt +++ b/core/src/com/unciv/ui/worldscreen/unit/UnitTable.kt @@ -226,12 +226,11 @@ class UnitTable(val worldScreen: WorldScreen) : Table(){ && (selectedTile.militaryUnit!!.civInfo == worldScreen.viewingCiv || worldScreen.viewingCiv.isSpectator()) && selectedTile.militaryUnit!! !in selectedUnits && (selectedTile.civilianUnit == null || selectedUnit != selectedTile.civilianUnit)) { - if (Gdx.input.isKeyPressed(Input.Keys.SHIFT_LEFT)) selectUnit(selectedTile.militaryUnit!!, true) - else selectUnit(selectedTile.militaryUnit!!) + selectUnit(selectedTile.militaryUnit!!, Gdx.input.isKeyPressed(Input.Keys.SHIFT_LEFT)) } else if (selectedTile.civilianUnit != null && (selectedTile.civilianUnit!!.civInfo == worldScreen.viewingCiv || worldScreen.viewingCiv.isSpectator()) && selectedUnit != selectedTile.civilianUnit) { - selectUnit(selectedTile.civilianUnit!!) + selectUnit(selectedTile.civilianUnit!!, Gdx.input.isKeyPressed(Input.Keys.SHIFT_LEFT)) } else if (selectedTile == previouslySelectedUnit?.currentTile) { // tapping the same tile again will deselect a unit. // important for single-tap-move to abort moving easily