35 lines
1.0 KiB
Java
35 lines
1.0 KiB
Java
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));
|
|
}
|
|
}
|
|
}
|