diff options
Diffstat (limited to 'mock/jrummikub/model/MockRoundState.java')
-rw-r--r-- | mock/jrummikub/model/MockRoundState.java | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/mock/jrummikub/model/MockRoundState.java b/mock/jrummikub/model/MockRoundState.java new file mode 100644 index 0000000..9346783 --- /dev/null +++ b/mock/jrummikub/model/MockRoundState.java @@ -0,0 +1,69 @@ +package jrummikub.model; + +import java.awt.Color; +import java.util.ArrayList; +import java.util.List; + +/** + * Mock class for {@link RoundState} + */ +public class MockRoundState implements IRoundState { + /** */ + public MockTable table; + /** */ + public ITable setTable; + /** */ + public List<MockPlayer> players; + /** */ + public int activePlayer; + /** */ + public StoneHeap gameHeap; + + /** */ + public MockRoundState() { + table = new MockTable(); + players = new ArrayList<MockPlayer>(); + players.add(new MockPlayer("Player 1", Color.RED)); + players.add(new MockPlayer("Player 2", Color.YELLOW)); + players.add(new MockPlayer("Player 3", Color.GREEN)); + players.add(new MockPlayer("Player 4", Color.BLACK)); + activePlayer = 0; + gameHeap = new StoneHeap(); + } + + @Override + public ITable getTable() { + return table; + } + + @Override + public int getPlayerCount() { + return players.size(); + } + + /** 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; + } + + @Override + public IPlayer getNthNextPlayer(int i) { + return players.get((activePlayer + i) % players.size()); + } + + @Override + public void setTable(ITable table) { + setTable = table; + } +} |