From 1b7159647e8c0d3c365d3e0f4a3a54d9002b9cca Mon Sep 17 00:00:00 2001 From: Anuken Date: Sun, 9 Aug 2020 10:03:02 -0400 Subject: [PATCH] Sensor selection --- .../entities/units/StateMachine.java | 35 --------- core/src/mindustry/logic/LStatement.java | 38 ++++++---- core/src/mindustry/logic/LStatements.java | 75 ++++++++++++++++++- gradle.properties | 2 +- 4 files changed, 97 insertions(+), 53 deletions(-) delete mode 100644 core/src/mindustry/entities/units/StateMachine.java diff --git a/core/src/mindustry/entities/units/StateMachine.java b/core/src/mindustry/entities/units/StateMachine.java deleted file mode 100644 index 9181df106e..0000000000 --- a/core/src/mindustry/entities/units/StateMachine.java +++ /dev/null @@ -1,35 +0,0 @@ -package mindustry.entities.units; - -public class StateMachine{ - private UnitState state; - - public void update(){ - if(state != null) state.update(); - } - - public void set(UnitState next){ - if(next == state) return; - if(state != null) state.exited(); - this.state = next; - if(next != null) next.entered(); - } - - public UnitState current(){ - return state; - } - - public boolean is(UnitState state){ - return this.state == state; - } - - public interface UnitState{ - default void entered(){ - } - - default void exited(){ - } - - default void update(){ - } - } -} diff --git a/core/src/mindustry/logic/LStatement.java b/core/src/mindustry/logic/LStatement.java index b3157593be..d8d906cfa5 100644 --- a/core/src/mindustry/logic/LStatement.java +++ b/core/src/mindustry/logic/LStatement.java @@ -24,12 +24,29 @@ public abstract class LStatement{ public abstract LCategory category(); public abstract LInstruction build(LAssembler builder); - protected void field(Table table, String value, Cons setter){ - table.field(value, Styles.nodeField, setter) - .size(130f, 40f).pad(2f).color(table.color); + protected Cell field(Table table, String value, Cons setter){ + return table.field(value, Styles.nodeField, setter) + .size(144f, 40f).pad(2f).color(table.color).addInputDialog(); } protected void showSelect(Button b, T[] values, T current, Cons getter){ + showSelectTable(b, (t, hide) -> { + ButtonGroup