package pp.mdga.server; import pp.mdga.game.Player; import pp.mdga.message.server.ActivePlayer; import pp.mdga.message.server.CeremonyMessage; public class Turn extends ServerState { private final TurnStateMachine turnStateMachine = new TurnStateMachine(this, logic); public Turn(ServerState parent, ServerGameLogic logic) { super(parent, logic); } // todo: when TurnStateMachine is in the end state, and then? @Override public void exit() { Player player = logic.getGame().getStartPlayer(); // if (player.isFinished()) { // logic.send(player, new Spectator()); // } else { // logic.send(player, new EndOfTurn()); // } if (logic.getGame().getPlayers().size() == 1) { broadcastUpdate(new CeremonyMessage()); this.getParent().getParent().exit(); } else { // todo: next player broadcastUpdate(new ActivePlayer(null)); parent.gotoState(new Animation(parent, logic)); } } }