Fixed commanded unit UI refresh

This commit is contained in:
Anuken
2022-07-31 11:43:23 -04:00
parent 765684a9b0
commit 427100c61d
3 changed files with 12 additions and 1 deletions

View File

@ -32,6 +32,7 @@ public class EventType{
teamCoreDamage,
socketConfigChanged,
update,
unitCommandChange,
draw,
drawOver,
preDraw,

View File

@ -757,6 +757,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
selectedUnits.clear();
}
selectedUnits.addAll(units);
Events.fire(Trigger.unitCommandChange);
commandBuild = null;
}
commandRect = false;
@ -770,6 +771,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
selectedUnits.clear();
camera.bounds(Tmp.r1);
selectedUnits.addAll(selectedCommandUnits(Tmp.r1.x, Tmp.r1.y, Tmp.r1.width, Tmp.r1.height, u -> u.type == unit.type));
Events.fire(Trigger.unitCommandChange);
}
}
}
@ -796,6 +798,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
commandBuild = null;
}
}
Events.fire(Trigger.unitCommandChange);
}
}

View File

@ -48,6 +48,7 @@ public class PlacementFragment{
Table blockTable, toggler, topTable, blockCatTable, commandTable;
Stack mainStack;
ScrollPane blockPane;
Runnable rebuildCommand;
boolean blockSelectEnd, wasCommandMode;
int blockSelectSeq;
long blockSelectSeqMillis;
@ -77,6 +78,12 @@ public class PlacementFragment{
});
});
Events.run(Trigger.unitCommandChange, () -> {
if(rebuildCommand != null){
rebuildCommand.run();
}
});
Events.on(UnlockEvent.class, event -> {
if(event.content instanceof Block){
rebuild();
@ -425,7 +432,7 @@ public class PlacementFragment{
UnitCommand[] currentCommand = {null};
var commands = new Seq<UnitCommand>();
Runnable rebuildCommand = () -> {
rebuildCommand = () -> {
u.clearChildren();
var units = control.input.selectedUnits;
if(units.size > 0){