diff --git a/litiengine/src/main/java/de/gurkenlabs/litiengine/entities/behavior/StateMachine.java b/litiengine/src/main/java/de/gurkenlabs/litiengine/entities/behavior/StateMachine.java index d8fca7571..b090a7acf 100644 --- a/litiengine/src/main/java/de/gurkenlabs/litiengine/entities/behavior/StateMachine.java +++ b/litiengine/src/main/java/de/gurkenlabs/litiengine/entities/behavior/StateMachine.java @@ -48,10 +48,6 @@ public void update() { List transitions = currentState.getTransitions(); Collections.sort(transitions); Optional transition = transitions.stream().filter(Transition::conditionsFullfilled).findFirst(); - if (transition.isPresent()) { - currentState.exit(); - setState(transition.get().getNextState()); - currentState.enter(); - } + transition.ifPresent(value -> setState(value.getNextState())); } }