package se.urmo.game.state; import lombok.Getter; import se.urmo.game.main.Game; import java.awt.*; import java.util.HashMap; import java.util.Map; public class GameStateManager { private final Game game; private Map states = new HashMap<>(); @Getter private GameState currentState; public GameStateManager(Game game) { this.game = game; states.put(GameStateType.PLAYING, new PlayingState(game, this)); setState(GameStateType.PLAYING); } private void setState(GameStateType type) { currentState = states.get(type); } public void update() { currentState.update(); } public void render(Graphics2D g) { currentState.render(g); } }