diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 2323dbebdc..0fbcc45895 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -1139,6 +1139,7 @@ keybind.select.name = Select/Shoot keybind.diagonal_placement.name = Diagonal Placement keybind.pick.name = Pick Block keybind.break_block.name = Break Block +keybind.select_all_units = Select All Units keybind.deselect.name = Deselect keybind.pickupCargo.name = Pickup Cargo keybind.dropCargo.name = Drop Cargo diff --git a/core/src/mindustry/input/Binding.java b/core/src/mindustry/input/Binding.java index 44d07adc46..3ea269ead7 100644 --- a/core/src/mindustry/input/Binding.java +++ b/core/src/mindustry/input/Binding.java @@ -19,6 +19,8 @@ public enum Binding implements KeyBind{ deselect(KeyCode.mouseRight), break_block(KeyCode.mouseRight), + select_all_units(KeyCode.g), + pickupCargo(KeyCode.leftBracket), dropCargo(KeyCode.rightBracket), diff --git a/core/src/mindustry/input/DesktopInput.java b/core/src/mindustry/input/DesktopInput.java index f818a6fa55..b0451213b9 100644 --- a/core/src/mindustry/input/DesktopInput.java +++ b/core/src/mindustry/input/DesktopInput.java @@ -254,6 +254,15 @@ public class DesktopInput extends InputHandler{ //validate commanding units selectedUnits.removeAll(u -> !u.isCommandable() || !u.isValid()); + if(commandMode && input.keyTap(Binding.select_all_units) && !scene.hasField() && !scene.hasDialog()){ + selectedUnits.clear(); + for(var unit : player.team().data().units){ + if(unit.isCommandable()){ + selectedUnits.add(unit); + } + } + } + if(!scene.hasMouse() && !locked && state.rules.possessionAllowed){ if(Core.input.keyDown(Binding.control) && Core.input.keyTap(Binding.select)){ Unit on = selectedUnit(); diff --git a/core/src/mindustry/service/Achievement.java b/core/src/mindustry/service/Achievement.java index ae44a9575b..18342ab0b9 100644 --- a/core/src/mindustry/service/Achievement.java +++ b/core/src/mindustry/service/Achievement.java @@ -104,18 +104,18 @@ public enum Achievement{ joinCommunityServer, //TODO - test openConsole, //TODO - test - controlTurret, //TODO - Steam - icon done - dropUnitsCoreZone, //TODO - Steam - icon done - destroyScatterFlare, //TODO - Steam - icon done - boostUnit, //TODO - Steam - icon done - boostBuildingFloor, //TODO - Steam - icon done + controlTurret, //TODO - test + dropUnitsCoreZone, //TODO - test + destroyScatterFlare, //TODO - test + boostUnit, //TODO - test + boostBuildingFloor, //TODO - test - hoverUnitLiquid, //TODO - Steam - icon done + hoverUnitLiquid, //TODO - test - break100Boulders(SStat.bouldersDeconstructed, 100), //TODO - Steam - icon done - break10000Boulders(SStat.bouldersDeconstructed, 10_000), //TODO - Steam - icon done + break100Boulders(SStat.bouldersDeconstructed, 100), //TODO - test + break10000Boulders(SStat.bouldersDeconstructed, 10_000), //TODO - test - shockwaveTowerUse, //TODO - Steam - icon done + shockwaveTowerUse, //TODO - test useAnimdustryEmoji, //TODO - Steam - icon done