summaryrefslogtreecommitdiffstats
path: root/test/jrummikub/model/MockGameState.java
diff options
context:
space:
mode:
Diffstat (limited to 'test/jrummikub/model/MockGameState.java')
-rw-r--r--test/jrummikub/model/MockGameState.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/test/jrummikub/model/MockGameState.java b/test/jrummikub/model/MockGameState.java
new file mode 100644
index 0000000..102e9fb
--- /dev/null
+++ b/test/jrummikub/model/MockGameState.java
@@ -0,0 +1,54 @@
+package jrummikub.model;
+
+import java.awt.Color;
+import java.util.ArrayList;
+import java.util.List;
+
+public class MockGameState implements IGameState {
+ public MockTable table;
+ public List<MockPlayer> players;
+ public int activePlayer;
+ public StoneHeap gameHeap;
+
+ public MockGameState() {
+ table = new MockTable();
+ players = new ArrayList<MockPlayer>();
+ players.add(new MockPlayer(Color.red));
+ players.add(new MockPlayer(Color.yellow));
+ players.add(new MockPlayer(Color.green));
+ players.add(new MockPlayer(Color.black));
+ activePlayer = 0;
+ gameHeap = new StoneHeap();
+ }
+
+ @Override
+ public ITable getTable() {
+ return table;
+ }
+
+ @Override
+ public int getPlayerCount() {
+ return players.size();
+ }
+
+ @Override
+ public IPlayer getPlayer(int i) {
+ return players.get(i);
+ }
+
+ /** Changes the activePlayer to the next {@link Player} in the list */
+ @Override
+ public void nextPlayer() {
+ activePlayer = (activePlayer + 1) % players.size();
+ }
+
+ @Override
+ public IPlayer getActivePlayer() {
+ return players.get(activePlayer);
+ }
+
+ @Override
+ public StoneHeap getGameHeap() {
+ return gameHeap;
+ }
+}