diff options
author | Ida Massow <massow@informatik.uni-luebeck.de> | 2011-06-08 17:46:44 +0200 |
---|---|---|
committer | Ida Massow <massow@informatik.uni-luebeck.de> | 2011-06-08 17:46:44 +0200 |
commit | 70af06e1bff47a36de9d9106412388b2f5b91f15 (patch) | |
tree | e4c8bd5301210d0a9e1ca12f3343c5e7d8316a4d /src/jrummikub/control/RoundControl.java | |
parent | 41fe3c93b3f0c880ce550fda4cd6ad6f30d3e99c (diff) | |
download | JRummikub-70af06e1bff47a36de9d9106412388b2f5b91f15.tar JRummikub-70af06e1bff47a36de9d9106412388b2f5b91f15.zip |
LAden und Speichern geht jetzt immer sauber
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@388 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/control/RoundControl.java')
-rw-r--r-- | src/jrummikub/control/RoundControl.java | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/jrummikub/control/RoundControl.java b/src/jrummikub/control/RoundControl.java index 4fadc15..e1009af 100644 --- a/src/jrummikub/control/RoundControl.java +++ b/src/jrummikub/control/RoundControl.java @@ -84,6 +84,14 @@ public class RoundControl { prepareTurn(); } + public void abortRound() { + removeListeners(); + if (turnControl != null) { + turnControl.abortTurn(); + turnControl = null; + } + } + private void prepareTurn() { boolean isHuman = roundState.getActivePlayer().getPlayerSettings() .getTurnControlType() == HUMAN; @@ -294,14 +302,18 @@ public class RoundControl { } void endOfRound() { - for (Connection c : connections) { - c.remove(); - } + removeListeners(); Score roundScore = score(); endOfRoundEvent.emit(roundScore); roundFinished = true; } + private void removeListeners() { + for (Connection c : connections) { + c.remove(); + } + } + private Score score() { List<Boolean> winners = new ArrayList<Boolean>(); List<Integer> points = new ArrayList<Integer>(); |