summaryrefslogtreecommitdiffstats
path: root/src/jrummikub/model
diff options
context:
space:
mode:
authorJannis Harder <harder@informatik.uni-luebeck.de>2011-05-25 17:10:43 +0200
committerJannis Harder <harder@informatik.uni-luebeck.de>2011-05-25 17:10:43 +0200
commita1c0cb89f67386738fc59426fd68737a393e1827 (patch)
tree8f0603073d4ea10919ce74840bb1d7514553bcb2 /src/jrummikub/model
parent157bd4f60635dc27d2c9baebea5589455b05f17b (diff)
downloadJRummikub-a1c0cb89f67386738fc59426fd68737a393e1827.tar
JRummikub-a1c0cb89f67386738fc59426fd68737a393e1827.zip
Added test and implementation for an inspection turn before the first
turn git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@273 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/model')
-rw-r--r--src/jrummikub/model/IRoundState.java14
-rw-r--r--src/jrummikub/model/RoundState.java13
2 files changed, 27 insertions, 0 deletions
diff --git a/src/jrummikub/model/IRoundState.java b/src/jrummikub/model/IRoundState.java
index faed6cf..1f6da15 100644
--- a/src/jrummikub/model/IRoundState.java
+++ b/src/jrummikub/model/IRoundState.java
@@ -94,4 +94,18 @@ public interface IRoundState {
*/
public void setActivePlayerNumber(int i);
+ /**
+ * Gets the number of the current turn. Numbers smaller than one indicate
+ * hand inspection turns
+ *
+ * @return current turn number
+ */
+ public abstract int getTurnNumber();
+
+ /**
+ * Increments the turn number
+ *
+ */
+ public void nextTurn();
+
} \ No newline at end of file
diff --git a/src/jrummikub/model/RoundState.java b/src/jrummikub/model/RoundState.java
index eb87247..65bc120 100644
--- a/src/jrummikub/model/RoundState.java
+++ b/src/jrummikub/model/RoundState.java
@@ -12,6 +12,7 @@ public class RoundState implements IRoundState {
private int activePlayer;
private StoneHeap gameHeap;
private IPlayer lastPlayer;
+ private int turnNumber;
/**
* Create a new RoundState with an empty table
@@ -29,6 +30,8 @@ public class RoundState implements IRoundState {
players.add(new Player(playerSettings, gameSettings));
}
+ turnNumber = 1-gameSettings.getPlayerList().size();
+
activePlayer = 0;
gameHeap = new StoneHeap();
}
@@ -104,4 +107,14 @@ public class RoundState implements IRoundState {
public IPlayer getLastPlayer() {
return lastPlayer;
}
+
+ @Override
+ public int getTurnNumber() {
+ return turnNumber;
+ }
+
+ @Override
+ public void nextTurn() {
+ turnNumber++;
+ }
}