Unit Transport And on Screen selecting instead (#10740)
* Select all Transport Hotkey, - hotkey for selecting Payloadc units - Changed all select all keys to be only select units on screen * s * Inverse * maybe actually set the temp var * overlap * blindness
This commit is contained in:
@@ -1359,6 +1359,8 @@ keybind.pick.name = Pick Block
|
|||||||
keybind.break_block.name = Break Block
|
keybind.break_block.name = Break Block
|
||||||
keybind.select_all_units.name = Select All Units
|
keybind.select_all_units.name = Select All Units
|
||||||
keybind.select_all_unit_factories.name = Select All Unit Factories
|
keybind.select_all_unit_factories.name = Select All Unit Factories
|
||||||
|
keybind.select_all_unit_transport.name = Select All Unit Transports
|
||||||
|
keybind.select_across_screen.name = Select Across Screen (Hold)
|
||||||
keybind.deselect.name = Deselect
|
keybind.deselect.name = Deselect
|
||||||
keybind.pickupCargo.name = Pickup Cargo
|
keybind.pickupCargo.name = Pickup Cargo
|
||||||
keybind.dropCargo.name = Drop Cargo
|
keybind.dropCargo.name = Drop Cargo
|
||||||
|
|||||||
@@ -179,3 +179,4 @@ cardillan
|
|||||||
Justacommonegg
|
Justacommonegg
|
||||||
IchMagSchokolade
|
IchMagSchokolade
|
||||||
MonoChronos
|
MonoChronos
|
||||||
|
RushieWashie
|
||||||
|
|||||||
@@ -42,6 +42,8 @@ public class Binding{
|
|||||||
|
|
||||||
selectAllUnits = KeyBind.add("select_all_units", KeyCode.g),
|
selectAllUnits = KeyBind.add("select_all_units", KeyCode.g),
|
||||||
selectAllUnitFactories = KeyBind.add("select_all_unit_factories", KeyCode.h),
|
selectAllUnitFactories = KeyBind.add("select_all_unit_factories", KeyCode.h),
|
||||||
|
selectAllUnitTransport = KeyBind.add("select_all_unit_transport", KeyCode.unset),
|
||||||
|
selectAcrossScreen = KeyBind.add("select_across_screen", KeyCode.altLeft),
|
||||||
|
|
||||||
cancelOrders = KeyBind.add("cancel_orders", KeyCode.unset),
|
cancelOrders = KeyBind.add("cancel_orders", KeyCode.unset),
|
||||||
|
|
||||||
|
|||||||
@@ -294,9 +294,30 @@ public class DesktopInput extends InputHandler{
|
|||||||
if(input.keyTap(Binding.selectAllUnits)){
|
if(input.keyTap(Binding.selectAllUnits)){
|
||||||
selectedUnits.clear();
|
selectedUnits.clear();
|
||||||
commandBuildings.clear();
|
commandBuildings.clear();
|
||||||
for(var unit : player.team().data().units){
|
if(input.keyDown(Binding.selectAcrossScreen)){
|
||||||
if(unit.allowCommand()){
|
camera.bounds(Tmp.r1);
|
||||||
selectedUnits.add(unit);
|
selectedUnits.set(selectedCommandUnits(Tmp.r1.x, Tmp.r1.y, Tmp.r1.width, Tmp.r1.height));
|
||||||
|
}else {
|
||||||
|
for(var unit : player.team().data().units){
|
||||||
|
if(unit.allowCommand()){
|
||||||
|
selectedUnits.add(unit);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if(input.keyTap(Binding.selectAllUnitTransport)){
|
||||||
|
selectedUnits.clear();
|
||||||
|
commandBuildings.clear();
|
||||||
|
if(input.keyDown(Binding.selectAcrossScreen)){
|
||||||
|
camera.bounds(Tmp.r1);
|
||||||
|
selectedUnits.set(selectedCommandUnits(Tmp.r1.x, Tmp.r1.y, Tmp.r1.width, Tmp.r1.height, u -> u instanceof Payloadc));
|
||||||
|
}else {
|
||||||
|
for(var unit : player.team().data().units){
|
||||||
|
if(unit.allowCommand() && unit instanceof Payloadc){
|
||||||
|
selectedUnits.add(unit);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -309,6 +330,10 @@ public class DesktopInput extends InputHandler{
|
|||||||
commandBuildings.add(build);
|
commandBuildings.add(build);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(input.keyDown(Binding.selectAcrossScreen)){
|
||||||
|
camera.bounds(Tmp.r1);
|
||||||
|
commandBuildings.retainAll(b -> Tmp.r1.overlaps(b.x - (b.hitSize() /2), b.y - (b.hitSize() /2), b.hitSize(), b.hitSize()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for(int i = 0; i < controlGroupBindings.length; i++){
|
for(int i = 0; i < controlGroupBindings.length; i++){
|
||||||
|
|||||||
Reference in New Issue
Block a user