diff options
Diffstat (limited to 'src/jrummikub/control/RoundControl.java')
-rw-r--r-- | src/jrummikub/control/RoundControl.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/jrummikub/control/RoundControl.java b/src/jrummikub/control/RoundControl.java index 91bf59b..ba61dfd 100644 --- a/src/jrummikub/control/RoundControl.java +++ b/src/jrummikub/control/RoundControl.java @@ -5,6 +5,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import jrummikub.model.GameState; import jrummikub.model.Hand; import jrummikub.model.IHand; import jrummikub.model.IPlayer; @@ -87,7 +88,7 @@ public class RoundControl { private void startTurn() { TurnControl turnControl = new TurnControl(roundState.getActivePlayer() - .getHand(), clonedTable, view); + .getHand(), clonedTable, view, roundState.getTurnNumber() < 1); connections.add(turnControl.getEndOfTurnEvent().add(new IListener() { @Override @@ -126,19 +127,24 @@ public class RoundControl { } private void endOfTurn() { - checkTurn(); + if (roundState.getTurnNumber() >= 1) { + checkTurn(); + } if (roundState.getLastPlayer() == null) { if (roundState.getGameHeap().getSize() == 0) { roundState.setLastPlayer(roundState.getNthNextPlayer(-1)); + roundState.nextTurn(); } else { roundState.nextPlayer(); + roundState.nextTurn(); } } else { if (roundState.getActivePlayer() == roundState.getLastPlayer()) { endOfRound(); } else { roundState.nextPlayer(); + roundState.nextTurn(); } } if (!roundFinished) { |